deadmantfa/yii2-zoho-api-client

A Client for Zoho API's

Fund package maintenance!
deadmantfa
Ko Fi

Installs: 294

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 3

Forks: 2

Open Issues: 0

Type:yii2-extension

1.0.9 2020-12-12 16:47 UTC

This package is auto-updated.

Last update: 2024-11-13 01:44:05 UTC


README

A Client for Zoho RESTful API's

Powered By Yii2 Type

Packagist Version GitHub Packagist Stars GitHub top language Packagist Downloads GitHub stars GitHub last commit Maintenance saythanks

forthebadge

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist deadmantfa/yii2-zoho-api-client "^v1.0.x"

or add

"deadmantfa/yii2-zoho-api-client": "^v1.0.x"

to the require section of your composer.json file.

Configuration

Once the extension is installed, add it to your configuration :

Please note the redirect url for OAUTH2 to work properly, please add it to your client on Zoho before continuing further. Replace <YOUR_DOMAIN_NAME> with an actual domain or localhost

<YOUR_DOMAIN_NAME>/zoho/default/auth?authclient=zoho

In your params.php or params-local.php define the following

    'zoho-api-client-id' => '<ZOHO_API_CLIENT_ID>',
    'zoho-api-client-secret' => '<ZOHO_API_CLIENT_SECRET>',
    'zoho-organization-id' => '<ZOHO_ORGANIZATION_ID>',
    'zoho-redirect-uri' => '<YOUR_DOMAIN_NAME>/zoho/default/auth?authclient=zoho'

Add the following in one of these file

app/common/config/main.php or app/backend/config/main.php

    'modules' => [
        'zoho' => [
            'class' => \deadmantfa\yii2\zoho\Module::class,
        ],
    ],
    'components' => [
        'authClientCollection' => [
            'class' => \yii\authclient\Collection::class,
            'clients' => [
                'zoho' => [
                    'class' => \deadmantfa\yii2\zoho\auth\ZohoAuthClient::class,
                    'clientId' => $params['zoho-api-client-id'],
                    'clientSecret' => $params['zoho-api-client-secret'],
                    'returnUrl' => $params['zoho-redirect-uri'],
                ],
            ],
        ],
        'zoho'=> [
            'class' => \deadmantfa\yii2\zoho\components\ZohoApiClient::class,
            'apiBaseUrl'=>'https://inventory.zoho.com/api/v1/',
            'organizationId'=>$params['zoho-organization-id']
        ]
    ];  

For Migration add the following to

app/console/config/main.php

use yii\console\controllers\MigrateController;

    'controllerMap' => [
        'migrate' => [
            'class' => MigrateController::class,
            'migrationPath' => [
                '@app/migrations',
                '@yii/rbac/migrations', // Just in case you forgot to run it on console (see next note)
            ],
            'migrationNamespaces' => [
                'deadmantfa\yii2\zoho\migrations',
            ],
        ],
    ],

Then run the following command

./yii migrate

Usage

To use the zoho api we need to first authorize and generate access_token and refresh_token

(http://<YOUR_DOMAIN_NAME>/zoho)

Follow the screenshots below

Step 1

Step 2

Step 3

After generating the access token and refresh token you can now call any api which is provided by Zoho

Yii::$app->zoho->get('items', []);
Yii::$app->zoho->post('items', []);
Yii::$app->zoho->put('items', []);
Yii::$app->zoho->delete('items', []);

Zoho Rest API Documentation

Dependencies