Download the PHP package gostellarco/nylas-php without Composer
On this page you can find all versions of the php package gostellarco/nylas-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package nylas-php
Nylas PHP SDK
PHP bindings for the Nylas REST API (V2.1). https://docs.nylas.com/reference I'll try to keep up with NyLas Changelog in future updates.
Last check at the point: Dashboard Release for Canada and Ireland
What's new?
- API 2.1 support
- All Nylas APIs have been implemented within this SDK.
- Support send & get message in raw type
- Support async batch upload & download
-- Contact picture download
-- File upload & download
- The parameters that required by methods almost the same as nylas official api required.
- Support async batch get & delete & send (since version 3.1).
- Chained calls and good code hints, easy to use
Installation (PHP 7.4 required since version 4.0)
version 3.x for php >= 7.3 (branch 3.0)
version 4.x for php >= 7.4 (branch master)
This library is available on https://packagist.org/packages/lanlin/nylas-php You can install it by running
Usage
App ID and Secret
Before you can interact with the Nylas REST API, you need to create a Nylas developer account at https://www.nylas.com/. After you've created a developer account, you can create a new application to generate an App ID / Secret pair.
Generally, you should store your App ID and Secret into environment variables to avoid adding them to source control. The test projects use configuration files instead, to make it easier to get started.
Init Nylas-PHP
TIPS: 'off_decode_error' has removed since version 4.1.2, see Error & Exceptions
Options Setting
You can modify options with these methods:
Batch Request
Most of the methods that have the get & delete prefix support batch request.
For more detail about the batch request, you should have to read the source code. Sorry, I have no time to write documents.
Authentication
There are two ways you can authenticate users to your application. Hosted & Native are both supported.
Here's the server-side(three-legged) OAuth example:
- You redirect the user to nylas login page, along with your App Id and Secret
- Your user logs in
- She is redirected to a callback URL of your own, along with an access code
- You use this access code to get an authorization token to the API
For more information about authenticating with Nylas, visit the Developer Documentation.
In practice, the Nylas REST API client simplifies this down to two steps.
Step 1: Redirect the user to Nylas:
Step 2: your user logs in: Step 3: you got the access code from the nylas callback: Please implement the above 2 & 3 steps yourself.
Step 4: Get authorization token with access code:
Error & Exceptions
-
common error codes that response from nylas are wrapped as exceptions, (see
src/Exceptions
) and the exception code is the same as nylas api error list -
you will get an array like below, when response data was not a valid json string or even not json content type:
-
for all methods that execute as the async mode will not throw an exception when an error occurs, instead, it will return an array which contains all data and exceptions inside like below:
-
some email provider may not support all features, exp: calendar, event. for that reason you may get an exception named
BadRequestException
with 400 code and the msg: -
the
log_file
parameter only works whendebug
set totrue
, then the detailed info of the http request will be logged.Tips: nylas-php use the guzzlehttp for http request. but guzzlehttp only support a resource type as the debug handler (cURL CURLOPT_STDERR required that).
for anyone who wants to use psr/log interface to debug, you can init a temp resource, and pass the handler to nylas-php, then get log content from temp resource after calling some methods.
Launching the tests
- Initialise composer dependency
composer install
- Add your info in
tests/AbsCase.php
- Launch the test with
composer run-script test
- Another way to run tests:
./tests/do.sh foo.php --filter fooMethod
, seetests/do.sh
Supported Methods
The parameters that required by methods almost the same as nylas official api required.
For more detail, you can view the tests or the source code of validation rules for that method.
Accounts
Authentication
Calendars
Contacts
Deltas
Draft
Events
Files
Folders
Labels
Job-Statuses
Messages
Threads
Webhooks
Contributing
For more usage demos, please view the tests. Please feel free to use it and send me a pull request if you fix anything or add a feature, though.
License
This project is licensed under the MIT license.
All versions of nylas-php with dependencies
ext-json Version *
guzzlehttp/guzzle Version >=6.5
respect/validation Version ^2.0
zbateson/mail-mime-parser Version ^1.2