Download the PHP package pululuk/zendesk_api_client_php without Composer
On this page you can find all versions of the php package pululuk/zendesk_api_client_php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download pululuk/zendesk_api_client_php
More information about pululuk/zendesk_api_client_php
Files in pululuk/zendesk_api_client_php
Package zendesk_api_client_php
Short Description PHP Client for Zendesk REST API. See https://developer.zendesk.com/rest_api/docs/core/introduction .
License Apache-2.0
Homepage https://github.com/zendesk/zendesk_api_client_php
Informations about the package zendesk_api_client_php
Zendesk PHP API Client Library
API Client Version
This is the second version of our PHP API client. The previous version of the API client can be found on the v1 branch.
API version support
This client only supports Zendesk's API v2. Please see our API documentation for more information.
Requirements
- PHP 5.5+
Installation
The Zendesk PHP API client can be installed using Composer.
Composer
To install run composer require pululuk/zendesk_api_client_php
Upgrading from V1 to V2
If you are upgrading from v1 of the client, we've written an upgrade guide to highlight some of the key differences.
Configuration
Configuration is done through an instance of Zendesk\API\HttpClient
.
The block is mandatory and if not passed, an error will be thrown.
Usage
Basic Operations
Attachments
Attaching files to comments
Side-loading
Side-loading allows you to retrieve related records as part of a single request. See [the documentation] for more information. (https://developer.zendesk.com/rest_api/docs/core/side_loading).
An example of sideloading with the client is shown below.
Pagination
The Zendesk API offers a way to get the next pages for the requests and is documented in the Zendesk Developer Documentation.
The way to do this is to pass it as an option to your request.
The allowed options are
- per_page
- page
- sort_order
Retrying Requests
Add the RetryHandler
middleware on the HandlerStack
of your GuzzleHttp\Client
instance. By default Zendesk\Api\HttpClient
retries:
- timeout requests
- those that throw
Psr\Http\Message\RequestInterface\ConnectException:class
- and those that throw
Psr\Http\Message\RequestInterface\RequestException:class
that are identified as ssl issue.
Available options
Options are passed on RetryHandler
as an array of values.
- max = 2 limit of retries
- interval = 300 base delay between retries in milliseconds
- max_interval = 20000 maximum delay value
- backoff_factor = 1 backoff factor
- exceptions = [ConnectException::class] _Exceptions to retry without checking retryif
- retry_if = null callable function that can decide whether to retry the request or not
Contributing
Pull Requests are always welcome but before you send one please read our contribution guidelines. It would speed up the process and would make sure that everybody follows the community's standard.
Debugging
To help would be contributors, we've added a REPL tool. It is a simple wrapper for psysh and symfony's console.
On your terminal, run bin/console <subdomain> <email> <api token>
. This would automatically create an instance of Zendesk\API\HttpClient
on $client variable.
After that you would be able to enter any valid php statement. The goal of the tool is to speed up the process in which developers
can experiment on the code base.
Copyright and license
Copyright 2013-present Zendesk
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
All versions of zendesk_api_client_php with dependencies
guzzlehttp/guzzle Version ^6.0 || ^7.0
guzzlehttp/psr7 Version ^1.7 || ^2.0
mmucklo/inflect Version 0.3.*