php-timecamp-api
A Timecamp PHP client. Presents returned data from the Timecamp API as associative arrays., (*1)
Installation
$ composer require gisforgirard/php-timecamp-api
Usage
// Require composer autoloader
require "vendor/autoload.php";
$timecamp_client = new Timecamp\Connection('xxxxxxxxxxxxxxxxxxxxxxxx');
$activities = $timecamp_client->ComputerActivities()->getActivity($params);
foreach ($activities as $this_activity) {
$app_id = $this_activity['application_id'];
$window_id = $this_activity['window_title_id'];
echo $app_id." - ".$window_id."\n";
}
Authentication
Authentication is very simple. You must pass your Timecamp API token when instantiating Timecamp\Connection. Example:, (*2)
$timecamp_client = new Timecamp\Connection('xxxxxxxxxxxxxxxxxxxxxxxx');
To get your API token go to your Timecamp Account Settings., (*3)
Client methods
Users
Return all users from account., (*4)
Example, (*5)
$users = $timecamp_client->Users()->all();
foreach ($users as $this_user) {
$all_users[$this_user['user_id']] = $this_user;
}
$users = $all_users;
print_r($users);
Tasks
these are all functions based exactly on the timecamp api itself, just pass an array of key => var you want to send to the server... anyway there's more specific info in the respective files..., (*6)
$users = $timecamp_client->Users()->get($array);, (*7)
$users = $timecamp_client->Users()->post($array);, (*8)
$users = $timecamp_client->Users()->put($array);, (*9)
TimeEntries
works the same as Tasks (and all the other functions for the most part as well), (*10)
$time_entries = $timecamp_client->TimeEntries()->get($array);, (*11)
$time_entries = $timecamp_client->TimeEntries()->post($array);, (*12)
$time_entries = $timecamp_client->TimeEntries()->put($array);, (*13)
Attendance
$attendance = $timecamp_client->Attendance()->get($array);, (*14)
AwayTime
$attendance = $timecamp_client->AwayTime()->get($array);, (*15)
Clients
$clients = $timecamp_client->Clients()->all();, (*16)
$clients = $timecamp_client->Clients()->update($array);, (*17)
$clients = $timecamp_client->Clients()->add($array);, (*18)
Invoices
$invoices = $timecamp_client->Invoices->all();, (*19)
$invoices = $timecamp_client->Invoices()->update($array);, (*20)
$invoices = $timecamp_client->Invoices()->add($array);, (*21)
Timer
$timer = $timecamp_client->Timer->all($array);, (*22)
$timer = $timecamp_client->Timer->status($array);, (*23)
$timer = $timecamp_client->Timer->stop($array);, (*24)
ComputerActivities (probably want to look at the individual files or documentation here, things are a bit different)
$activities = $timecamp_client->ComputerActivities()->getActivity('2014-03-07');, (*25)
$activities = $timecamp_client->ComputerActivities()->getApplication(6319,2132);, (*26)
$activities = $timecamp_client->ComputerActivities()->getWindowTitle(1,2);, (*27)
$activities = $timecamp_client->ComputerActivities()->addActivity($array);, (*28)