# Create Activity Source: https://docs.clientcommander.com/api-reference/activities/create POST /v1/activities Log a new activity for a contact. # Delete Activity Source: https://docs.clientcommander.com/api-reference/activities/delete DELETE /v1/activities/{id} # Get Activity Source: https://docs.clientcommander.com/api-reference/activities/get GET /v1/activities/{id} # List Activities Source: https://docs.clientcommander.com/api-reference/activities/list GET /v1/activities Retrieve activities for a specific contact. # Update Activity Source: https://docs.clientcommander.com/api-reference/activities/update PUT /v1/activities/{id} Update activity content (notes). # Create Deal Source: https://docs.clientcommander.com/api-reference/deals/create POST /v1/deals Create a new deal in a pipeline. # Delete Deal Source: https://docs.clientcommander.com/api-reference/deals/delete DELETE /v1/deals/{id} # Get Deal Source: https://docs.clientcommander.com/api-reference/deals/get GET /v1/deals/{id} # List Deals Source: https://docs.clientcommander.com/api-reference/deals/list GET /v1/deals Retrieve deals with role-based filtering: - **Owner/Admin:** All deals - **Team Leader:** Team deals - **Agent:** Own deals # Move Deal Source: https://docs.clientcommander.com/api-reference/deals/move POST /v1/deals/{id}/move Move a deal to a different stage in the pipeline. Triggers webhooks. # Update Deal Source: https://docs.clientcommander.com/api-reference/deals/update PUT /v1/deals/{id} # Introduction Source: https://docs.clientcommander.com/api-reference/introduction API Reference Overview The Client Commander API is organized around REST. Our API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs. ## Base URL ```bash theme={null} https://api.clientcommander.com/v1 ``` ## Resources Manage contacts and leads Manage todos and follow-ups Manage sales pipelines Log calls, notes, and emails # Add Contact Tags Source: https://docs.clientcommander.com/api-reference/people/add-tags POST /v1/people/{id}/tags Add one or more tags to a contact. Tags are created automatically if they don't exist. **Auto-Create:** Non-existent tags are automatically created. **Deduplication:** Duplicate tags are ignored. # Create Contact Source: https://docs.clientcommander.com/api-reference/people/create POST /v1/people Create a new contact or update existing one if matched by email/phone. **Deduplication:** Automatically matches by email (exact) or phone (normalized). **Name Parsing:** If only `firstName` is provided with multiple words, automatically splits into first/last name. # Delete Contact Source: https://docs.clientcommander.com/api-reference/people/delete DELETE /v1/people/{id} Delete a contact. Default behavior is soft delete (move to trash). **Soft Delete:** `?permanent=false` (default) - Moves to "Trash" stage **Hard Delete:** `?permanent=true` - Permanently deletes (requires `people.delete` permission) # Get Contact Source: https://docs.clientcommander.com/api-reference/people/get GET /v1/people/{id} Retrieve detailed information for a specific contact. # Get Contact Tags Source: https://docs.clientcommander.com/api-reference/people/get-tags GET /v1/people/{id}/tags Retrieve all tags associated with a contact. # List Contacts Source: https://docs.clientcommander.com/api-reference/people/list GET /v1/people Retrieve a paginated list of contacts. Results are filtered based on user permissions: - **Owner/Admin:** See all contacts - **Team Leader:** See team members' contacts - **Agent:** See own assigned contacts + collaborations # Search Contacts Source: https://docs.clientcommander.com/api-reference/people/search GET /v1/people/search Search for contacts by ID, email, phone, or name. **Search Priority:** ID → Email → Phone → Name **Fuzzy Matching:** Name searches support partial matches (case-insensitive). # Update Contact Source: https://docs.clientcommander.com/api-reference/people/update PUT /v1/people/{id} Update an existing contact. Only provided fields are updated. **Partial Updates:** Supports PATCH-style partial updates via PUT. # Complete Task Source: https://docs.clientcommander.com/api-reference/tasks/complete POST /v1/tasks/{id}/complete Mark a task as completed with current timestamp. # Create Task Source: https://docs.clientcommander.com/api-reference/tasks/create POST /v1/tasks Create a new task with optional contact association. # Delete Task Source: https://docs.clientcommander.com/api-reference/tasks/delete DELETE /v1/tasks/{id} # Get Task Source: https://docs.clientcommander.com/api-reference/tasks/get GET /v1/tasks/{id} # List Tasks Source: https://docs.clientcommander.com/api-reference/tasks/list GET /v1/tasks Retrieve tasks for the authenticated agent. Optionally filter by contact. # Update Task Source: https://docs.clientcommander.com/api-reference/tasks/update PUT /v1/tasks/{id} # List Users Source: https://docs.clientcommander.com/api-reference/users/list GET /v1/users List all agents/users in the company. # Get Current User Source: https://docs.clientcommander.com/api-reference/users/me GET /v1/me Retrieve profile information for the authenticated agent. # API Terms of Use Source: https://docs.clientcommander.com/api-terms Terms governing use of the Client Commander API These API Terms of Use ("Terms") govern your access to and use of the Client Commander Application Programming Interface and related documentation (collectively, the "Client Commander API"). By accessing or using the Client Commander API, you ("Developer," "you," or "your") agree to be bound by these Terms. If you are using the API on behalf of a company or organization, you represent that you have authority to bind that entity. If you do not agree to these Terms, you may not use the Client Commander API. ## 1. License Grant Client Commander grants you a limited, revocable, non-exclusive, non-transferable, non-sublicensable license to: * Access and use the API to build, test, and operate integrations or applications that interact with the Client Commander platform. * Use the API documentation for development purposes only. No other rights are granted. ## 2. Registration & Identification To use the Client Commander API, you agree to: 1. Register and obtain valid API credentials. 2. Protect all credentials and keep them confidential. 3. Use only the credentials issued to you. 4. Properly identify your system when acting on behalf of a Client Commander customer. You are responsible for all activity performed using your API key. ## 3. Acceptable Use Restrictions You agree not to: * Reverse engineer, decompile, or attempt to extract the source code of the API. * Bypass or disable any API rate limits or security mechanisms. * Build a competing product using the API. * Store, cache, or retain Client Commander data beyond what is legally or contractually allowed. * Misrepresent your relationship with Client Commander. * Interfere with Client Commander servers, stability, or performance. * Use the API for spam, abuse, scraping, or unauthorized data harvesting. Client Commander may monitor API usage and restrict access at its discretion. ## 4. Data Use & Privacy You must: * Access only data you are authorized to use. * Comply with all applicable privacy, data protection, and security laws. * Delete Client Commander data when requested by a user, Client Commander, or applicable law. * Implement industry-standard security measures for protecting user data. You may not sell, share, or repurpose Client Commander data for advertising, profiling, or unrelated purposes. ## 5. API Modification & Updates Client Commander may update or modify the API at any time, including: * Adding, changing, or removing endpoints. * Introducing new API versions. * Deprecating old API versions with reasonable notice. Backward compatibility is not guaranteed. ## 6. Rate Limits & Quotas You must follow all published or communicated API usage limits. Excessive, inappropriate, or abusive use may result in rate limiting, throttling, or termination of access. ## 7. Security Requirements You must: * Store API keys securely and never expose them publicly. * Use HTTPS for all requests. * Notify Client Commander immediately if you suspect API key leakage or unauthorized access. Client Commander may require additional authentication steps for certain use cases. ## 8. Branding & Attribution Unless explicitly permitted: * You may not use Client Commander's name, logo, or trademarks without written approval. * You may not state or imply endorsement, partnership, or certification. Where attribution is required, you must follow Client Commander's brand guidelines. ## 9. Suspension & Termination Client Commander may suspend or terminate your API access: * For violations of these Terms. * For security or technical reasons. * For misuse or abuse of the API. * At the request of a Client Commander customer. * For extended developer inactivity. Upon termination, you must: * Immediately stop using the API, * Delete all Client Commander data, * Destroy all issued API keys. ## 10. Ownership Client Commander retains all rights, title, and interest in: * The API, * The platform, * Documentation, * Data, * And all related intellectual property. You retain ownership of your own application, excluding Client Commander elements. *** ## 11. Disclaimer & Limitation of Liability The Client Commander API is provided “as is” without warranties of any kind. To the maximum extent permitted by law, Client Commander is not liable for: * Any indirect, incidental, or consequential damages, * Loss of profits, revenue, data, or business, * Downtime or interruptions, * Errors or omissions. Your sole remedy is to discontinue API use. ## 12. Indemnification You agree to indemnify, defend, and hold harmless Client Commander from any claims, damages, losses, liabilities, or expenses (including legal fees) arising from: * Your use of the API, * Your application, * Your breach of these Terms. ## 13. Governing Law These Terms are governed by the laws of UK, without regard to conflict-of-law principles. All disputes shall be resolved exclusively in the courts located in United Kingdom. ## 14. Changes to Terms Client Commander may modify these Terms at any time. Continued use of the API after changes are posted constitutes acceptance of the revised Terms. ## 15. Contact Information For questions or support regarding the API or these Terms: Email: [api@clientcommander.me](mailto:api@clientcommander.me)\ Website: [https://clientcommander.com](https://clientcommander.com) # Authentication Source: https://docs.clientcommander.com/authentication How to authenticate with the Client Commander API ## API Keys All API requests require an API Key. You can generate one in your dashboard under **Admin > API Keys**. Your API Key carries the same privileges as your user account. Keep it secure and never share it publicly. ### Using the SDK The SDK handles authentication automatically: ```typescript theme={null} import { ClientCommander } from '@clientcommander/sdk'; const cc = new ClientCommander({ apiKey: 'ccmd_live_...', }); ``` ### Raw HTTP Requests Include the key in the `Authorization` header: ```bash theme={null} Authorization: Bearer ccmd_live_... ``` Example request: ```bash theme={null} curl -X GET https://api.clientcommander.com/v1/people \ -H "Authorization: Bearer ccmd_live_..." ``` # Introduction Source: https://docs.clientcommander.com/introduction Welcome to the Client Commander API documentation ## Overview Client Commander offers a clean and intuitive REST API designed to help developers build powerful integrations with minimal effort. The API is actively maintained and expanded, with new capabilities added regularly, always with a focus on preserving backward compatibility. ## API Endpoint Client Commander uses a consistent URL structure for its API endpoints. A typical endpoint looks like this: `https://api.clientcommander.com/v1/people` Here's what each part represents: * `https://` — HTTPS is required for secure communication. HTTP is not supported. * `api.clientcommander.com` — The API hostname (unchanging). * `v1` — The API version. Version 1 is currently the active and only version. * `people` — The resource name, always plural (e.g., people, activities, tasks).
## Need Help? We're here to assist! Email us at [api@clientcommander.me](mailto:api@clientcommander.me) with any questions, and we’ll be glad to help you as you get started. Get up and running with the SDK in minutes Explore the REST API endpoints directly # Quickstart Source: https://docs.clientcommander.com/quickstart Get started with Client Commander in under 5 minutes ## 1. Get your API Key To start building, you'll need an API key. 1. Log in to your [Client Commander Dashboard](https://workspace.clientcommander.com) 2. Go to **Admin > API Keys** 3. Click "Create New Key" 4. Copy the key (it starts with `ccmd_live_`) behavior ## 2. Install the SDK The easiest way to interact with the API is using our official TypeScript SDK. ```bash npm theme={null} npm install @clientcommander/sdk ``` ```bash pnpm theme={null} pnpm add @clientcommander/sdk ``` ```bash yarn theme={null} yarn add @clientcommander/sdk ``` ## 3. Make your first request Create a file named `index.ts` and add the following code: ```typescript index.ts theme={null} import { ClientCommander } from '@clientcommander/sdk'; const cc = new ClientCommander({ apiKey: 'ccmd_live_...' // Replace with your key }); async function main() { // 1. Create a contact const contact = await cc.people.createOrUpdatePerson({ firstName: 'John', lastName: 'Doe', email: 'john@example.com', phone: '+15550109988' }); console.log('Created contact:', contact.data.id); // 2. Add a task for them await cc.tasks.createTask({ personId: contact.data.id, name: 'Follow up call', type: 'Call', dueDate: new Date(Date.now() + 86400000).toISOString() // Tomorrow }); console.log('Task created!'); } main(); ``` ## Next Steps Learn about advanced SDK features Explore raw REST endpoints # Installation Source: https://docs.clientcommander.com/sdk/installation Install the Client Commander SDK ## Node.js Install the package via your preferred package manager: ```bash npm theme={null} npm install @clientcommander/sdk ``` ```bash pnpm theme={null} pnpm add @clientcommander/sdk ``` ```bash yarn theme={null} yarn add @clientcommander/sdk ``` ## Requirements * Node.js 16 or higher * TypeScript 4.5+ (if using TypeScript) # SDK Usage Source: https://docs.clientcommander.com/sdk/usage Common patterns and examples for the Client Commander SDK ## Initialization Initialize the client with your API key. ```typescript theme={null} import { ClientCommander } from '@clientcommander/sdk'; const cc = new ClientCommander({ apiKey: process.env.CCMD_API_KEY, }); ``` ## Error Handling The SDK throws errors that contain useful debugging information. ```typescript theme={null} try { await cc.people.getPerson('invalid_id'); } catch (error) { if (error.status === 404) { console.error('Contact not found'); } else if (error.status === 429) { console.error('Rate limit exceeded. Retry in', error.response.headers['retry-after']); } else { console.error('API Error:', error.message); } } ``` ## Pagination List endpoints return a `meta` object with pagination details. ```typescript theme={null} // Fetch first page const page1 = await cc.people.listPeople({ limit: 10 }); // Fetch next page if available if (page1.meta.hasMore) { const page2 = await cc.people.listPeople({ limit: 10, cursor: page1.meta.nextCursor }); } ``` ## TypeScript Support The SDK exports all types for full type safety. ```typescript theme={null} import type { Contact, Task } from '@clientcommander/sdk'; const myContact: Contact = { firstName: 'Jane', lastName: 'Smith' // TypeScript will autocomplete available fields }; ``` # Support and Help Source: https://docs.clientcommander.com/support Get assistance with the Client Commander API Need help with using our API? Have questions about how to build an integration with us? Email us at [api@clientcommander.me](mailto:api@clientcommander.me) and we'll be happy to assist!