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
Requires
- yiisoft/yii2: ~2.0.0
- yiisoft/yii2-authclient: ~2.1.0
- yiisoft/yii2-httpclient: ~2.0.0
Requires (Dev)
- roave/security-advisories: dev-master
README
A Client for Zoho RESTful API's
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
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', []);