Download the PHP package jonathanraftery/bullhorn-rest-client without Composer
On this page you can find all versions of the php package jonathanraftery/bullhorn-rest-client. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download jonathanraftery/bullhorn-rest-client
More information about jonathanraftery/bullhorn-rest-client
Files in jonathanraftery/bullhorn-rest-client
Package bullhorn-rest-client
Short Description Simple REST client for the Bullhorn API, including automated OAuth2 login
License MIT
Informations about the package bullhorn-rest-client
Bullhorn REST Client
Provides a simple client for the Bullhorn REST API.
Installation
Usage
By default, the client will look for credentials in environment variables:
- BULLHORN_CLIENT_ID
- BULLHORN_CLIENT_SECRET
- BULLHORN_USERNAME
- BULLHORN_PASSWORD
Options
The client constructor accepts an option array.
The ClientOptions class can be used to view the available options.
Credential Providers
A credential provider supplies the client with the credentials needed to connect to the API. There are simple providers included, or you can create your own with a class implementing the CredentialsProviderInterface (for example, to fetch credentials from Google Cloud Secret Manager).
By default, the client will use an EnvironmentCredentialsProvider, which will look in the environment variables listed above for credentials. The variables used can be changed by constructing an EnvironmentCredentialsProvider with the other variables.
Auth Data Stores
API session data needs persisted in a data store. By default, the client will use a local JSON file for this store, but custom stores can be used.
Initial OAuth consent
Before Bullhorn authorizes API calls from a new user, the user is required to give consent. If no consent has been given yet the library will throw an IdentityException and the client will respond with an HTML representation of the consent form.
To permanently fix this, visit the authorization URL with your credentials auth.bullhornstaffing.com/oauth/authorize?response_type=code&action=Login&username=
Raw Requests
Simple requests as documented in the Bullhorn API documentation can be run as:
PUT/POST Requests
The client uses GuzzleHTTP for requests, and the parameters to the request method match those to create a request object in Guzzle. The third parameter is the request options, as described in the Guzzle documentation.
To set the body of a PUT/POST request, set the "body" option of the request to the JSON content of the request body such as:
Entity Operations
Entities can be fetched, created, and deleted
Event Subscriptions
Sessions
A session will automatically be initiated upon the first request if no session exists in the data store.
A session can be manually initiated with:
The session will automatically refresh if expiration detected, or can be refreshed manually (shown with optional parameters)
All versions of bullhorn-rest-client with dependencies
league/oauth2-client Version ^2.5
guzzlehttp/guzzle Version ^7.2
ext-json Version *