one_page_crm_api
The OnePageCRM API module provides a streamlined Drupal service wrapper for the OnePageCRM REST API. It is designed as a foundational developer tool, enabling other Drupal projects to interact with OnePageCRM’s action-focused sales workflow programmatically.
Features
This module serves as a low-level API bridge. By providing a centralized Drupal service, it removes the need for developers to manually handle Guzzle requests, authentication headers, or response parsing. Key functionality includes:
- Service-Based Architecture: Access the API via a standard Drupal service using dependency injection.
- Contact Management: Programmatic methods to create, retrieve, and update OnePageCRM contacts.
- Authentication Handling: Secure storage and automated injection of User ID and API Key credentials into all requests.
Additional Requirements
- OnePageCRM Account: An active subscription with API access enabled.
Recommended modules/libraries
There are currently no additional module requirements. This project relies strictly on Drupal Core's HTTP Client (Guzzle) to perform API operations.
Similar projects
While there are modules for larger CRMs like Salesforce or HubSpot, this is the first dedicated integration for the OnePageCRM platform on Drupal, specifically optimized for its unique "Next Action" sales process.
Supporting this Module
Support the maintenance of this API wrapper by reporting issues in the queue or contributing patches to expand API endpoint coverage.
Community Documentation
For a full list of available endpoints and data structures, please refer to the Official OnePageCRM API Documentation.
Development ⚙
If you haven't already, install Docker and DDEV
git clone [email protected]:project/one_page_crm_api.git cd one_page_crm_api ddev config --project-type=drupal --docroot=web --php-version=8.4 --corepack-enable --project-name=one-page-crm-api ddev add-on get ddev/ddev-drupal-contrib ddev start ddev poser ddev symlink-project ddev drush site:install -y ddev drush pm:install one_page_crm_api -y ddev drush config:export -y ddev drush user:login