crisp-api

Package Information

Released: 7/11/2025
Downloads: 0 weekly / 0 monthly
Latest Version: 0.2.12
Author: stemx

Documentation

n8n-nodes-crisp-api

npm version
npm downloads

A comprehensive n8n community node for integrating with the Crisp API. This node provides access to all major Crisp API endpoints, allowing you to automate customer support workflows, manage conversations, contacts, campaigns, and more.

Features

  • Complete API Coverage: Access to all 120+ Crisp API endpoints
  • 12 Resource Categories: Website, Conversation, People, Operator, Settings, Analytics, Availability, Campaign, Helpdesk, Visitors, Batch, and Verify operations
  • Secure Authentication: Built-in credential management with Basic Auth
  • Dynamic Parameters: Context-aware parameter selection based on chosen operations
  • Error Handling: Comprehensive error handling and status code management
  • Pagination Support: Built-in support for paginated API responses

Installation

Via n8n Community Nodes

  1. Go to SettingsCommunity Nodes in your n8n instance
  2. Click Install and enter: n8n-nodes-crisp-api
  3. Click Install to add the node to your n8n instance

Via npm

npm install n8n-nodes-crisp-api

Configuration

1. Create Crisp API Credentials

  1. Log in to your Crisp account
  2. Go to SettingsPluginsMarketplace
  3. Create a new plugin or use an existing one
  4. Generate API credentials (identifier and key)

2. Configure n8n Credentials

  1. In n8n, go to CredentialsNew
  2. Search for "Crisp API"
  3. Enter your credentials:
    • Username (API Identifier): Your Crisp API identifier
    • Password (API Key): Your Crisp API key

3. Add Website ID

Each operation requires a Website ID, which you can find in your Crisp dashboard under SettingsWebsite Settings.

Supported Operations

🌐 Website Management

  • Check if website exists
  • Create, get, update, delete websites
  • Abort website deletion

💬 Conversation Management

  • List, get, create, remove conversations
  • Send messages (text, notes)
  • Get conversation messages
  • Update conversation state (resolved, unresolved, pending)
  • Assign conversations to operators
  • Block/unblock conversations
  • Manage conversation routing

👥 People & Contacts

  • List, get, create, update, remove people profiles
  • Get people statistics
  • List people conversations
  • Add people events
  • Import/export people profiles
  • Manage people data and subscription status

👨‍💼 Operator Management

  • List website operators
  • Get operator details
  • Invite new operators
  • Change operator membership and roles
  • Unlink operators from websites
  • Manage operator availability

⚙️ Settings & Configuration

  • Get and update website settings
  • Manage verify settings
  • Get and roll verify keys

📊 Analytics & Reporting

  • Generate analytics reports
  • Get website availability status
  • List operator availabilities

📧 Campaign Management

  • List, create, update, remove campaigns
  • Dispatch, pause, resume campaigns
  • Manage campaign templates
  • Get campaign statistics and recipients

🆘 Helpdesk

  • Check if helpdesk exists
  • Initialize, get, delete helpdesk
  • List helpdesk locales
  • Manage helpdesk articles

👁️ Visitor Management

  • Count and list visitors
  • Pinpoint visitors on map
  • Manage blocked visitors
  • Get session identifiers from tokens

🔄 Batch Operations

  • Batch resolve conversations
  • Batch read conversations
  • Batch remove conversations and people

Usage Examples

Send a Message

{
  "resource": "conversation",
  "operation": "sendMessage",
  "websiteId": "your-website-id",
  "sessionId": "conversation-session-id",
  "message": "Hello! How can I help you today?",
  "messageType": "text"
}

Create a Contact

{
  "resource": "people",
  "operation": "createProfile",
  "websiteId": "your-website-id",
  "additionalFields": {
    "email": "[email protected]",
    "firstName": "John",
    "lastName": "Doe",
    "company": "Example Corp"
  }
}

List Conversations

{
  "resource": "conversation",
  "operation": "list",
  "websiteId": "your-website-id",
  "pageNumber": 1
}

Update Conversation State

{
  "resource": "conversation",
  "operation": "updateState",
  "websiteId": "your-website-id",
  "sessionId": "conversation-session-id",
  "additionalFields": {
    "state": "resolved"
  }
}

API Reference

For detailed information about available operations and parameters, refer to the Crisp API Documentation.

Common Use Cases

  • Automated Customer Support: Automatically respond to customer inquiries
  • Lead Management: Capture and manage leads from conversations
  • Campaign Automation: Trigger campaigns based on customer behavior
  • Analytics Integration: Pull conversation and visitor data for analysis
  • Operator Management: Automatically assign conversations to available operators
  • Helpdesk Integration: Sync helpdesk articles and manage support workflows

Error Handling

The node includes comprehensive error handling:

  • 401 Unauthorized: Check your API credentials
  • 400 Bad Request: Verify required parameters are provided
  • 404 Not Found: Ensure the resource exists (website ID, session ID, etc.)
  • Rate Limits: The node respects Crisp API rate limits

Troubleshooting

Authentication Issues

  • Ensure your API credentials are correctly configured
  • Verify the Website ID is correct
  • Check that your API plugin has the necessary scopes

Request Errors

  • Verify all required parameters are provided
  • Check that resource IDs (session ID, people ID, etc.) are valid
  • Ensure the operation is supported for your API tier

Version History

  • v0.2.3: Added proper message formatting with from and origin fields
  • v0.2.2: Fixed Basic Auth credential format
  • v0.2.1: Added required X-Crisp-Tier: plugin header
  • v0.2.0: Complete API coverage with 120+ endpoints
  • v0.1.1: Moved Website ID to node configuration
  • v0.1.0: Initial release with basic functionality

Contributing

Contributions are welcome! Please feel free to submit issues and pull requests.

License

MIT License - see LICENSE file for details.

Support

Acknowledgments

  • Thanks to the Crisp team for providing a comprehensive API
  • Built with ❤️ by StemX team
  • Inspired by the n8n community's need for better customer support automation

Discussion