Download the PHP package thisdata/api without Composer
On this page you can find all versions of the php package thisdata/api. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package api
Short Description PHP client for interacting with the ThisData API.
License MIT
Informations about the package api
ThisData API Client
Consume the ThisData.com REST API using this client. Requires at least PHP5.5.
Install
Using composer:
Quick Start
Use the factory to return an instance of ThisData\Api\ThisData
, configured with default settings.
:warning: Don't commit your API key to source control! Use an environment variable, or perhaps you have a configuration solution that allows you to store secrets in local configuration without being shared.
Each endpoint will have different methods, depending on the functionality the endpoint provides. For instance, the events endpoint can track successful login attempts.
API Documentation
Documentation for API endpoints can be found here:
Tracking Events
Use the $thisData
instance to get an instance of the events endpoint.
Then track events:
When the login attempt is unsuccessful:
When you're using a multi-tenanted app:
Verifying a User
When a sensitive action is about to occur, perhaps before finalizing the log-in process, you can verify that the user is who they say they are, and check the risk that their account is being impersonated by an attacker. If they present a medium or high risk, force them to provide a two-factor authentication code.
Getting a list of Events (Audit Log)
You can fetch a paginated, filterable array of Events from the API. The method accepts any of the parameters described in the documentation: http://help.thisdata.com/docs/v1getevents
e.g. returning the 10 most recent log-in
events for a user
Advanced
There are several configuration options that modify the way the library behaves. By using the Builder you can set these configuration options.
Synchronous Requests
By default, requests are sent to the server asynchronously. If this is not required, or synchronous communication is preferred, configure your builder to use synchronous requests.
ThisData's Javascript library
ThisData's Javascript tracking code is optional, but when included in a page
will add a cookie called __tdli
. If you're using the optional javascript
library, this library will automatically pick up that cookie.
You should also tell the API that each request should come with a cookie:
Network Configuration
If you require more control of your network settings, such as using a proxy, configure the client settings when building.
If you want to see the verbose output of the HTTP request, enable debug mode in Guzzle.
All settings supported by the Guzzle HTTP Client can be configured here, including curl options.
Direct Access to the HTTP client
If you require access to directly interact with the Guzzle HTTP client to send custom requests, the configured instance can be retrieved from an endpoint.
Alternatively, you can instantiate the client manually, without the added endpoint abstration layers.
Contributing
Thanks for helping! Start by forking the repository. Then make sure the tests pass:
Make your changes, add test coverage, and check the tests are still passing. Then open a PR! :)