π Feature: Bigin by Zoho CRM Integration
This PR implements a comprehensive integration piece for Bigin by Zoho CRM, addressing the feature request in issue #8601.
π Whatβs Implemented
π Authentication
- OAuth2 Authentication with support for all Zoho regional domains:
- United States (.com)
- Europe (.eu)
- India (.in)
- Australia (.com.au)
- Japan (.jp)
- China (.com.cn)
- Saudi Arabia (.sa)
- Canada (.ca)
- Proper scope configuration for Bigin API access
- Authentication validation with error handling
π Search Actions (5 total)
- Search Contact - Find contacts by email, name, phone, or mobile
- Search Company - Find companies by name, phone, or website
- Search Product - Find products by name or product code
- Search Pipeline Record - Find deals by name, stage, or amount
- Search User - Find users by email address
βοΈ Write Actions (14 total)
Contact Management:
- Create Contact - Full contact creation with all standard fields
- Update Contact - Update existing contact records
Company Management:
- Create Company - Company creation with billing address support
- Update Company - Update existing company records
Pipeline Records (Deals):
- Create Pipeline Record - Deal creation with amount, stage, closing date
- Update Pipeline Record - Update existing deals
Task Management:
- Create Task - Task creation with due dates, priority, status
- Update Task - Update existing tasks
Event Management:
- Create Event - Calendar event creation with start/end times, venues
- Update Event - Update existing events
Call Logging:
- Create Call - Call record creation with duration, type, status
π Webhook Triggers (4 total)
- New Contact - Triggers when a contact is created
- Updated Contact - Triggers when a contact is modified
- New Company - Triggers when a company is created
- New Pipeline Record - Triggers when a deal is created
π οΈ Additional Features
- Custom API Call Action - Allows arbitrary API calls to any Bigin endpoint
- Comprehensive Error Handling - Proper error messages for authentication, rate limits, API errors
- Field Validation - Required field validation and data cleanup
- Multi-Domain Support - Dynamic API URL resolution based on selected domain
π― Addresses Issue Requirements
This implementation fully addresses the requirements outlined in issue #8601:
- β
Complete Bigin by Zoho CRM integration
- β
OAuth2 authentication with multi-domain support
- β
CRUD operations for all major CRM entities
- β
Search functionality across key data types
- β
Webhook triggers for real-time data synchronization
- β
Follows Activepieces coding standards and patterns
π Files Added
packages/pieces/community/bigin-by-zoho/
βββ package.json
βββ project.json
βββ tsconfig.json
βββ tsconfig.lib.json
βββ README.md
βββ src/
βββ index.ts
βββ lib/
βββ common/
β βββ auth.ts # OAuth2 authentication configuration
β βββ client.ts # API client with error handling
β βββ utils.ts # Utility functions and field mappings
βββ actions/
β βββ search-*.ts # 5 search actions
β βββ create-*.ts # 7 create actions
β βββ update-*.ts # 7 update actions
βββ triggers/
βββ new-contact.ts
βββ updated-contact.ts
βββ new-company.ts
βββ new-pipeline-record.ts
π§ͺ Testing Instructions
Prerequisites
- Bigin by Zoho Account - Create a free account at bigin.zoho.com
- Zoho Developer Console - Set up OAuth2 app at api-console.zoho.com
- OAuth2 Credentials - Configure client ID, client secret, and redirect URLs
Authentication Testing
- Configure OAuth2 credentials in Activepieces
- Select appropriate domain based on account location
- Complete OAuth2 flow and verify token acquisition
- Test authentication validation with invalid credentials
Action Testing
Search Actions:
- Test each search action with valid criteria
- Verify search operators (equals, contains, starts_with, ends_with)
- Test with non-existent records to verify empty results
Write Actions:
- Test contact creation with required and optional fields
- Test company creation with billing address
- Test pipeline record creation with amount and dates
- Test task creation with due dates and priorities
- Test event creation with start/end times
- Test call logging with duration and status
- Verify update operations modify existing records correctly
Triggers:
- Set up webhook triggers in test flows
- Create/update records in Bigin to verify trigger firing
- Verify payload structure matches expected format
Error Handling Testing
- Test with invalid authentication tokens
- Test with malformed API requests
- Test rate limiting scenarios
- Verify proper error messages are displayed
π Code Quality
- β
TypeScript Compilation - No compilation errors
- β
Code Standards - Follows Activepieces patterns and conventions
- β
Error Handling - Comprehensive error handling throughout
- β
Documentation - Inline comments and README documentation
- β
Type Safety - Proper TypeScript types and interfaces
- β
Modularity - Clean separation of concerns and reusable components
π API Documentation
This integration is built against the official Bigin by Zoho API v2:
Closes #8601
/claim #8601