Before you can access data, generate an API key conditioned for conversations.readonly with appropriate scopes (and broader write access if needed). Securely store credentials and rotate secrets regularly.
Configure OAuth or API token-based authentication from 17hats, grant the necessary scopes to access and post conversations, and test the connection in a staging environment.
Using the Conversations API endpoints including GET /conversations/:conversationsId, GET /conversations/search, POST /conversations/, PUT /conversations/:conversationsId, DELETE /conversations/:conversationsId, POST /conversations/messages, and others to manage conversations and messages between 17hats and your users.
Trigger: When a new ticket or contact is created in 17hats, automatically create a matching conversation in the Conversations API.
Actions: POST /conversations/, then PUT /conversations/:conversationsId to update the thread, and attach initial messages.
Method paths: POST /conversations/ to create, and PUT /conversations/:conversationsId to update.
Key fields: conversationsId, subject, participants, status, lastMessage.
Trigger: When a user searches in 17hats, fetch matching conversations from the API.
Actions: GET /conversations/search with query, GET /conversations/:conversationsId, GET /conversations/messages to view related messages.
Paths: GET /conversations/search, GET /conversations/:conversationsId, GET /conversations/messages.
Fields: conversationsId, title, latestMessage, updatedAt.
Trigger: When a message is added in 17hats, post it to the relevant conversation in the API.
Actions: POST /conversations/messages, POST /conversations/messages/inbound, PUT /conversations/messages/:messageId/status, DELETE /conversations/messages/:messageId/schedule.
Paths: POST /conversations/messages, POST /conversations/messages/inbound, PUT /conversations/messages/:messageId/status, DELETE /conversations/messages/:messageId/schedule.
Fields: messageId, conversationId, sender, content, status, timestamp.
Automation without coding to move data between apps.
Faster workflows and reduced manual data entry.
Unified view of conversations and messages for reporting.
Definitions of core concepts used in the integration: Conversations, Messages, Transcripts, Endpoints, and how they relate in the GHL Conversations API and 17hats.
A thread of messages exchanged between participants inside the system.
Individual communications within a conversation.
Text or readable transcription of audio/video content within a message.
The API routes used to interact with Conversations data.
Automatically generate a 17hats ticket when a new conversation is started in GHL, with data mapped from the chat.
Capture transcripts from conversations and append them to the corresponding 17hats record for easy reference.
Use batch endpoints to update conversation statuses in 17hats, then archive completed threads.
In GHL, generate an API key with the conversations scope and securely store it for your app.
Connect 17hats to GHL using OAuth or API tokens, granting access to conversations data.
Run a test workflow to ensure conversations flow between systems and data maps correctly.
You can authenticate using API keys with scoped access or OAuth tokens depending on your app needs. For write access, request broader scopes and follow best practices to store credentials securely. Always rotate keys, use least privilege, and verify callback URLs. In production, use a server-side component to securely handle secrets.
Common endpoints include GET /conversations/search to find conversations, POST /conversations/ to create, POST /conversations/messages to send messages. For reading, use GET /conversations/:conversationsId and GET /conversations/messages/:messageId/transcription to access transcripts and details.
This integration can be built with no-code tools like Zapier or Integromat, using webhooks and API calls. If your use case requires more complex logic, you can add a lightweight serverless function to handle transformations and routing.
There are rate limits per endpoint; plan accordingly and implement batching where possible. If you anticipate high volume, consider paging requests and retry/backoff strategies to stay within quotas.
Test in a sandbox or staging environment with sample data before going live. Use dry-run modes and simulate real user interactions to validate data mapping and error handling.
Data fields include conversations, messages, transcripts, and metadata like IDs and timestamps. Sensitive data should be masked or encrypted in transit and at rest, following best security practices.
API documentation and payload examples are available in the developer portal. You can also explore endpoint references and sample requests to accelerate integration.
Due to high volume, we will be upgrading our server soon!
Complete Operations Catalog - 126 Actions & Triggers