https://github.com/anorgan/onfleet-client
Onfleet API Client
https://github.com/anorgan/onfleet-client
api guzzle onfleet onfleet-client
Last synced: 26 days ago
JSON representation
Onfleet API Client
- Host: GitHub
- URL: https://github.com/anorgan/onfleet-client
- Owner: anorgan
- License: mit
- Created: 2016-08-12T01:33:25.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2020-06-30T12:47:56.000Z (over 5 years ago)
- Last Synced: 2025-05-24T01:06:53.212Z (10 months ago)
- Topics: api, guzzle, onfleet, onfleet-client
- Language: PHP
- Homepage:
- Size: 98.6 KB
- Stars: 9
- Watchers: 2
- Forks: 7
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Onfleet API Client
[](https://scrutinizer-ci.com/g/anorgan/onfleet-client/?branch=master)
[](https://github.com/anorgan/onfleet-client/blob/master/LICENSE)
[](https://packagist.org/packages/anorgan/onfleet-client)
PHP API Client for [Onfleet](https://onfleet.com) service
## Installation
Install via [Composer](http://getcomposer.org) by running `composer require anorgan/onfleet-client ^1.0`.
```json
{
"require": {
"anorgan/onfleet-client": "^1.0"
}
}
```
## Usage
```php
getMyOrganization();
// Create Administrator
$adminData = [
'name' => 'Marin Crnković',
'email' => 'marin.crnkovic@gmail.com',
];
$administrator = $onFleet->createAdministrator($adminData);
// Get all administrators
$administrators = $onFleet->getAdministrators();
// Update administrator
$administrator->setName('Updated Name');
$updatedAdministrator = $administrator->update();
// Delete administrator
$updatedAdministrator->delete();
// Create Worker
$worker = $onFleet->createWorker([
'name' => 'Worker Workowsky',
'phone' => '+1555123456',
'teams' => 'team123'
]);
// Get all workers
$workers = $onFleet->getWorkers();
// Get single worker
$singleWorker = $onFleet->getWorker($worker->getId());
// Get hubs
$hubs = $onFleet->getHubs();
// Create team
$team = $onFleet->createTeam([
'name' => 'Team',
'workers' => [
$worker->getId(),
'worker2ID',
],
'managers' => [
$administrator->getId(),
],
]);
// Update team
$team->setHub($hubs[0]->getId());
$team->update();
// Get teams
$teams = $onFleet->getTeams();
// Delete Team
$team->delete();
// Create destination
$destination = $onFleet->createDestination([
'address' => [
'number' => '543',
'street' => 'Howard St',
'apartment' => '5th Floor',
'city' => 'San Francisco',
'state' => 'CA',
'country' => 'USA'
],
'notes' => "Don't forget to check out the epic rooftop."
]);
// Get Destination
$destination = $onFleet->getDestination($destination->getId());
// Create recipient
$recipient = $onFleet->createRecipient([
'name' => 'Boris Foster',
'phone' => '650-555-1133',
'notes' => 'Always orders our GSC special'
]);
// Get single recipient
$recipient = $onFleet->getRecipient($recipient->getId());
// Update recipient
$recipient->setName('Updated name');
$recipient->update();
// Find by name
$recipient = $onFleet->getRecipientByName($recipient->getName());
// Find by phone
$recipient = $onFleet->getRecipientByPhone($recipient->getPhone());
// Create task
$taskArray = Task::createAutoAssignedArray($destination, $recipient);
$task = $onFleet->createTask($taskArray);
// Get tasks
$tasks = $onFleet->getTasks(time() - 20);
// Get single task
$task = $onFleet->getTask($tasks[0]->getId());
// Get single task by short ID
$task = $onFleet->getTaskByShortId($tasks[0]->getShortId());
// Update task
$task->setNotes('Updated note');
$task->update();
// Complete task
$task->complete(true, 'Successful completion note');
// Delete task
$task->delete();
// Create webhook
$webhook = $onFleet->createWebhook('http://example.com/webhook/onFleet/taskCreated', Anorgan\Onfleet\Webhook::TRIGGER_TASK_CREATED);
// Delete webhook
$webhook->delete();
```
Setting and retrieving metadata:
```php
setMetadata([
'string' => 'String',
'number' => 123,
'number_float' => 12.3,
'boolean' => true,
'object' => [
'propery' => 'value'
],
'array' => [
'alpha',
'beta',
'gamma'
]
]);
// Get structured metadata as API returns it
$metadata = $entity->getMetadata();
// Get normalized metadata, same as you would send to "setMetadata"
$normalizedMetadata = $entity->getNormalizedMetadata();
```
## Requirements
PHP 7.1 or above
## Licence
Onfleet PHP API client is licensed under the MIT License - see the LICENSE file for details