PHPackages                             agencedoit/zohoconnector - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. agencedoit/zohoconnector

ActiveLibrary[API Development](/categories/api)

agencedoit/zohoconnector
========================

Zoho Creator API connector for Laravel

1.3.8(10mo ago)061proprietaryPHP

Since Aug 22Pushed 1mo agoCompare

[ Source](https://github.com/Do-It-VIPros/laravel-package-zoho-connector)[ Packagist](https://packagist.org/packages/agencedoit/zohoconnector)[ RSS](/packages/agencedoit-zohoconnector/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (5)DependenciesVersions (21)Used By (0)

Laravel package - Zoho Connector
================================

[](#laravel-package---zoho-connector)

```
composer require agencedoit/zohoconnector

```

Table of contents
-----------------

[](#table-of-contents)

- [Laravel package - Zoho Connector](#laravel-package---zoho-connector)
    - [Table of contents](#table-of-contents)
    - [General](#general)
        - [Requirements](#requirements)
        - [Basics](#basics)
            - [Creator](#creator)
            - [CRM](#crm)
    - [Configuration](#configuration)
        - [Environnements variables](#environnements-variables)
        - [Initalize](#initalize)
        - [On Production environnement](#on-production-environnement)
- [Usage](#usage)
    - [Basic exemple](#basic-exemple)
    - [Availables functions](#availables-functions)
        - [CRUD functions](#crud-functions)
            - [Get from Report](#get-from-report)
            - [Get All from Report](#get-all-from-report)
            - [Get by ID](#get-by-id)
            - [Create](#create)
            - [Update](#update)
            - [Upload](#upload)
        - [Custom functions](#custom-functions)
            - [Custom GET](#custom-get)
            - [Custom POS](#custom-post)
        - [Bulk operations](#bulk-operations)
            - [Automated gestion](#automated-gestion)
            - [Create bulk](#create-bulk)
            - [Read Bulk infos](#read-bulk-infos)
            - [Download bulk](#download-bulk)
        - [META functions](#meta-functions)
            - [Get Forms Meta informations](#get-forms-meta-informations)
            - [Get Fields Meta informations](#get-fields-meta-informations)
            - [Get Reports Meta informations](#get-reports-meta-informations)
            - [Get Pages Meta informations](#get-pages-meta-informations)
    - [Todo](#todo)

General
-------

[](#general)

Laravel Package to manage a connexion to Zoho Creator API

### Requirements

[](#requirements)

To use the service and interact with the Zoho API you need to get a client\_id and a client\_secret on the [Zoho API console](https://api-console.zoho.com).

- Click on "Add Client" on top right
- Use "Server-based Applications"
- Fill the informations :

    - Client Name : Your App Name
    - Homepage URL : You App URL
    - Authorized Redirect URIs : --APP\_URL--/zoho/request-code-response &lt;= IMPORTANT
- You'll get the required client\_id and client\_secret
- PHP has to have the [zip extension](https://www.php.net/manual/en/zip.installation.php) installed. For Linux system, just type with the right php version :

```
  sudo apt-get install php8.2-zip
```

### Basics

[](#basics)

#### Creator

[](#creator)

To interact with Zoho Creator, all is based on report.

The Zoho API documentation is available [here](https://www.zoho.com/creator/help/api/v2.1/).

The version of the Zoho API is the v2.1 .

#### CRM

[](#crm)

Comming soon.

Configuration
-------------

[](#configuration)

### Environnements variables

[](#environnements-variables)

IdentifierRequiredDescriptionAvailables valuesCommentaryZOHO\_ACCOUNT\_DOMAINNoZoho domain name where your Zoho account is registredeu, com, jp, in, com.au ...Default value : euZOHO\_CLIENT\_IDYesThe client ID from .&lt;ZOHO\_ACCOUNT\_DOMAIN&gt;-Default value : 1000.8cb99dxxxxxxxxxxxxx9be93ZOHO\_CLIENT\_SECRETYesYour client secret from .&lt;ZOHO\_ACCOUNT\_DOMAIN&gt;-Default value : 9b8xxxxxxxxxxxxxxxfZOHO\_SCOPENoThe scope for your clientZohoCreator.report.ALL, ZohoCreator.report.READ,ZohoCreator.bulk.CREATE ... see [API doc](https://www.zoho.com/creator/help/api/v2.1/oauth-overview.html#scopes)Default value : ZohoCreator.report.READZOHO\_USERYesYour Zoho user name-Default value : jason18ZOHO\_APP\_NAMEYesYour Zoho App identifier-Default value : zylker-storeZOHO\_TOKENS\_TABLENotokens table name-Default value : zoho\_connector\_tokensZOHO\_CREATOR\_ENVIRONMENTNoEnvironnement to reach during the ZohoAPI calls (see [Zoho environnements](https://www.zoho.com/creator/help/deploy/environments/understand-environments.html))-Default value : productionZOHO\_REQUEST\_TIMEOUTNoTimeout for the get request-Default value : 30-------------------------------ZOHO\_BULK\_DOWNLOAD\_PATHNoPath where the ZIP from bulk are loaded-Default value : storage\_path("zohoconnector")ZOHO\_BULKS\_TABLENobulk process table name-Default value : zoho\_connector\_bulk\_historyZOHO\_BULK\_QUEUENoQueue name for the bulk process-Default value : default### Initalize

[](#initalize)

- us php artisan migrate
- Be sure to have the APP\_URL env var set.
- Get a client\_id and a client\_secret from ZOHO =&gt; [Requirements](#Requirements).
- Fill the Environnements variables as described in [Environnements variables](#Environnements-variables).
- On DEV environnement, you can go on --APP\_URL--/zoho/test to check if all your environnement is ready. Then click on "Request code page" link to activate the on DEV environnement).
- If the service is ready. You can now [use the service](#usage).

You can reset the service with the /zoho/reset-tokens route or by clicking the reset button on the /zoho/test page.

### On Production environnement

[](#on-production-environnement)

The /zoho/test page is not available.

Go on /zoho/request-code to activate the service (Once the parameters are set obviously).

The /zoho/reset-tokens is not available too. To reset tokens, truncate the ZOHO\_TOKENS\_TABLE.

Usage
=====

[](#usage)

Basic exemple
-------------

[](#basic-exemple)

```
use ZohoCreatorApi;

public static function test() {
  return ZohoCreatorApi::get("my_report");
}
```

Availables functions
--------------------

[](#availables-functions)

### CRUD functions

[](#crud-functions)

#### Get from Report

[](#get-from-report)

```
ZohoCreatorApi::get(,="",&="");
```

Return the found records as an array.

This function has a 1000 records limit. If there is more the cursor variable will be filled.

Check at ZohoCreatorApi::getAll() code function to see how handle the cursor and the loop.

[See criterias by Zoho](https://www.zoho.com/creator/help/api/v2.1/get-records.html#search_criteria).

#### Get All from Report

[](#get-all-from-report)

```
ZohoCreatorApi::getAll(,="");
```

Return the found records as an array.

This function may be very long. Look at the function to see who use it.

[See criterias by Zoho](https://www.zoho.com/creator/help/api/v2.1/get-records.html#search_criteria).

#### Get by ID

[](#get-by-id)

```
ZohoCreatorApi::getByID(,);
```

Return the found record as an array.

field\_config is set to "all".

#### Create

[](#create)

```
ZohoCreatorApi::create(,,=[]);
```

Add a record in the form with the given attributes

#### Update

[](#update)

```
ZohoCreatorApi::update(,,,=[]);
```

Update a record with the given attributes

#### Upload

[](#upload)

```
ZohoCreatorApi::upload(,,,);
```

Upload a file in the given report+ id + field

### Custom functions

[](#custom-functions)

#### Custom GET

[](#custom-get)

```
ZohoCreatorApi::customFunctionGet(,=[],="");
```

Call a custom zoho creator API function with GET. If a public key is given, it will be added to the request. If there is no public key, the auth token will be used.

#### Custom POST

[](#custom-post)

```
ZohoCreatorApi::customFunctionPost(,=[],="");
```

Call a custom zoho creator API function with POST. If a public key is given, it will be added to the request. If there is no public key, the auth token will be used. datas is the body in JSON format.

### Bulk operations

[](#bulk-operations)

Bulk operations to get informations with Zoho is a 3 steps process :

- Create bulk
- Read status
- Download result This functionality is available in this package or with a step by step process or fully automatised with the Laravel Jobs.

#### Automated gestion

[](#automated-gestion)

The whole bulk process in on function. The result is a JSON file. This function require :

- the [zip extension](https://www.php.net/manual/en/zip.installation.php) of PHP.
- A laravel [queue processor](https://laravel.com/docs/11.x/queues#connections-vs-queues)```
    php artisan queue:work
    ```

    Aditionnals options: --tries=3 =&gt; multiple try in case of failure --queue=secondary =&gt; to choose your queue. Don't forget to change the ZOHO\_BULK\_QUEUE env variable

Just use the function :

```
  ZohoCreatorApi::getWithBulk(, , ="")
```

This launch a laravel JOB and send to the callback\_url by the parameter json\_location, the location of the downloaded,extracted,transformed report datas in JSON. The downloaded ZIP and the extracted CSV file are deleted during the process for storage optimization.

#### Create bulk

[](#create-bulk)

```
  ZohoCreatorApi::createBulk(,="");
```

Create the bulk request.

[See criterias by Zoho](https://www.zoho.com/creator/help/api/v2.1/get-records.html#search_criteria).

#### Read Bulk infos

[](#read-bulk-infos)

```
  ZohoCreatorApi::readBulk(,="");
```

Return the bulk request infos as an array.

#### Download bulk

[](#download-bulk)

```
  ZohoCreatorApi::downloadBulk(,="");
```

Download the bulk request result in the ZOHO\_BULK\_DOWNLOAD\_PATH.

### META functions

[](#meta-functions)

#### Get Forms Meta informations

[](#get-forms-meta-informations)

```
ZohoCreatorApi::getFormsMeta();
```

Return the meta information of all the forms present in a Zoho Creator application. Require the scope ZohoCreator.meta.application.READ

#### Get Fields Meta informations

[](#get-fields-meta-informations)

```
ZohoCreatorApi::getFieldsMeta();
```

Return the meta information of all the fields of a form. Require the scope ZohoCreator.meta.form.READ

#### Get Reports Meta informations

[](#get-reports-meta-informations)

```
ZohoCreatorApi::getReportsMeta();
```

Return the meta information of all the reports present in a Zoho Creator application. Require the scope ZohoCreator.meta.application.READ

#### Get Pages Meta informations

[](#get-pages-meta-informations)

```
ZohoCreatorApi::getPagesMeta();
```

Return the meta information of all the pages present in a Zoho Creator application. Require the scope ZohoCreator.meta.application.READ

Testing
-------

[](#testing)

The package includes a comprehensive test suite with 116 tests covering all functionality:

```
# Run all tests (recommended)
composer test

# Run specific test groups
composer test:core      # Unit tests (foundation + models)
composer test:mock      # Workflow simulation tests
composer test:models    # Model tests only
composer test:foundation # Infrastructure tests only
```

**Test Coverage:**

- ✅ **116 tests** with **507 assertions**
- ✅ **Foundation Infrastructure**: 100% covered
- ✅ **Models &amp; Core Components**: 100% covered
- ✅ **Workflow Simulations**: 100% covered
- ✅ **Fast &amp; Reliable**: 0.47s execution time

API Documentation
-----------------

[](#api-documentation)

Complete Zoho Creator API v2.1 documentation is included in `/docs/zoho-creator-api-doc/` covering:

- Authentication &amp; OAuth2 flow
- CRUD operations with examples
- Bulk processing workflows
- Error codes &amp; troubleshooting
- File operations
- Metadata access

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance74

Regular maintenance activity

Popularity11

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 64.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~19 days

Total

17

Last Release

328d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/5d869b41175ef276f92ec0a597343e64599c75edaf899c9f832d8a2375064d12?d=identicon)[tech\_do\_it](/maintainers/tech_do_it)

---

Top Contributors

[![cyprien-do-it](https://avatars.githubusercontent.com/u/203826376?v=4)](https://github.com/cyprien-do-it "cyprien-do-it (77 commits)")[![Gael-DoIt](https://avatars.githubusercontent.com/u/203826410?v=4)](https://github.com/Gael-DoIt "Gael-DoIt (24 commits)")[![Altair484](https://avatars.githubusercontent.com/u/15770932?v=4)](https://github.com/Altair484 "Altair484 (12 commits)")[![Baiawai](https://avatars.githubusercontent.com/u/94229484?v=4)](https://github.com/Baiawai "Baiawai (4 commits)")[![jeff-jardon](https://avatars.githubusercontent.com/u/81423503?v=4)](https://github.com/jeff-jardon "jeff-jardon (2 commits)")

### Embed Badge

![Health badge](/badges/agencedoit-zohoconnector/health.svg)

```
[![Health](https://phpackages.com/badges/agencedoit-zohoconnector/health.svg)](https://phpackages.com/packages/agencedoit-zohoconnector)
```

###  Alternatives

[stripe/stripe-php

Stripe PHP Library

4.0k143.3M480](/packages/stripe-stripe-php)[twilio/sdk

A PHP wrapper for Twilio's API

1.6k92.9M272](/packages/twilio-sdk)[knplabs/github-api

GitHub API v3 client

2.2k15.8M187](/packages/knplabs-github-api)[facebook/php-business-sdk

PHP SDK for Facebook Business

90121.9M34](/packages/facebook-php-business-sdk)[meilisearch/meilisearch-php

PHP wrapper for the Meilisearch API

73813.7M114](/packages/meilisearch-meilisearch-php)[google/gax

Google API Core for PHP

263103.1M454](/packages/google-gax)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
