fiteco-group / kimai-client
Kimai V2 PHP Api client.
Requires
- php: >=7.2|>=8.0
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- guzzlehttp/guzzle: ^7
- guzzlehttp/psr7: ^1.7 || ^2.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.12
- phpunit/phpunit: ^8.0 || ^9.0
This package is auto-updated.
Last update: 2024-12-06 03:35:43 UTC
README
JSON API for the Kimai 2 time-tracking software. Read more about its usage in the API documentation and then download a Swagger file for import e.g. in Postman. Be aware: it is not yet considered stable and BC breaks might happen, especially when using code generation. The order of JSON attributes is not guaranteed.
Installation & Usage
Requirements
PHP 7.2 and later.
Composer
To install the bindings via Composer, add the following to composer.json
:
{ "require": { "fiteco-group/kimai-client": "*@dev" } }
Then run composer install
Manual Installation
Download the files and include autoload.php
:
<?php require_once('/path/to/vendor/autoload.php');
Getting Started
Please follow the installation procedure and then run the following:
<?php require_once(__DIR__ . '/vendor/autoload.php'); // Configure host on which Kimai is running $config = Fiteco\KimaiClient\Configuration::getDefaultConfiguration()->setHost('https://kimai.RememberToSetMe.com'); // Configure API key authorization: apiToken $config = Fiteco\KimaiClient\Configuration::getDefaultConfiguration()->setApiKey('X-AUTH-TOKEN', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Fiteco\KimaiClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('X-AUTH-TOKEN', 'Bearer'); // Configure API key authorization: apiUser $config = Fiteco\KimaiClient\Configuration::getDefaultConfiguration()->setApiKey('X-AUTH-USER', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Fiteco\KimaiClient\Configuration::getDefaultConfiguration()->setApiKeyPrefix('X-AUTH-USER', 'Bearer'); $apiInstance = new Fiteco\KimaiClient\Api\ActivityApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $project = 'project_example'; // string | Project ID to filter activities $projects = 'projects_example'; // string | Comma separated list of project IDs to filter activities $visible = 'visible_example'; // string | Visibility status to filter activities. Allowed values: 1=visible, 2=hidden, 3=all (default: 1) $globals = 'globals_example'; // string | Use if you want to fetch only global activities. Allowed values: true (default: false) $globalsFirst = 'globalsFirst_example'; // string | Deprecated parameter, value is not used any more $orderBy = 'orderBy_example'; // string | The field by which results will be ordered. Allowed values: id, name, project (default: name) $order = 'order_example'; // string | The result order. Allowed values: ASC, DESC (default: ASC) $term = 'term_example'; // string | Free search term try { $result = $apiInstance->apiActivitiesGet($project, $projects, $visible, $globals, $globalsFirst, $orderBy, $order, $term); print_r($result); } catch (Exception $e) { echo 'Exception when calling ActivityApi->apiActivitiesGet: ', $e->getMessage(), PHP_EOL; }
API Endpoints
All URIs are relative to Kimai installation.
Models
- Activity
- ActivityCollection
- ActivityEditForm
- ActivityEntity
- ActivityExpanded
- ActivityMeta
- ActivityRate
- ActivityRateForm
- Customer
- CustomerCollection
- CustomerEditForm
- CustomerEntity
- CustomerMeta
- CustomerRate
- CustomerRateForm
- I18nConfig
- InlineObject
- InlineObject1
- InlineObject2
- InlineObject3
- InlineObject4
- Plugin
- Project
- ProjectCollection
- ProjectEditForm
- ProjectEntity
- ProjectExpanded
- ProjectMeta
- ProjectRate
- ProjectRateForm
- TagEditForm
- TagEntity
- Team
- TeamCollection
- TeamEditForm
- TeamEntity
- TimesheetCollection
- TimesheetCollectionExpanded
- TimesheetConfig
- TimesheetEditForm
- TimesheetEntity
- TimesheetEntityExpanded
- TimesheetMeta
- User
- UserCollection
- UserCreateForm
- UserEditForm
- UserEntity
- Version
Authorization
apiToken
- Type: API key
- API key parameter name: X-AUTH-TOKEN
- Location: HTTP header
apiUser
- Type: API key
- API key parameter name: X-AUTH-USER
- Location: HTTP header
Tests
To run the tests, use:
composer install vendor/bin/phpunit
Author
About this package
This PHP package is automatically generated by the OpenAPI Generator project:
- API version:
0.6
- Build package:
org.openapitools.codegen.languages.PhpClientCodegen