hayloft/exivo-client-php

dev-master 2022-12-13 16:13 UTC

This package is auto-updated.

Last update: 2024-04-13 18:57:05 UTC


README

The exivo API lets you manage an exivo site. To be allowed to use the API the Connection service needs to be activated. For every HTTP request the siteId, an API_KEY and the corresponding API_SECRET are required. All this information can be found in the exivo app. A new API_KEY can be generated in the app. Please note that API_SECRET is a confidential information and should be stored securely. After closing the dialogue or refreshing the page the secret can't be displayed anymore. If the secret is lost, a new key needs to be generated and the old must be deleted.

This PHP package is automatically generated by the Swagger Codegen project:

  • API version: 1.1.0
  • Build package: io.swagger.codegen.languages.PhpClientCodegen

Requirements

PHP 5.5 and later

Installation & Usage

Composer

To install the bindings via Composer, add the following to composer.json:

{
  "repositories": [
    {
      "type": "git",
      "url": "https://github.com/GIT_USER_ID/GIT_REPO_ID.git"
    }
  ],
  "require": {
    "GIT_USER_ID/GIT_REPO_ID": "*@dev"
  }
}

Then run composer install

Manual Installation

Download the files and include autoload.php:

    require_once('/path/to/SwaggerClient-php/vendor/autoload.php');

Tests

To run the unit tests:

composer install
./vendor/bin/phpunit

Getting Started

Please follow the installation procedure and then run the following:

<?php
require_once(__DIR__ . '/vendor/autoload.php');

// Configure HTTP basic authorization: basicAuth
$config = Exivo\Configuration::getDefaultConfiguration()
    ->setUsername('YOUR_USERNAME')
    ->setPassword('YOUR_PASSWORD');

$apiInstance = new Exivo\Api\AccessGroupApi(
    // 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
);
$site_id = "site_id_example"; // string | ID of site to work
$person_id = "person_id_example"; // string | ID of person
$access_group_id = "access_group_id_example"; // string | ID of access group
$body = new \stdClass; // object | 

try {
    $apiInstance->assignAccessGroup($site_id, $person_id, $access_group_id, $body);
} catch (Exception $e) {
    echo 'Exception when calling AccessGroupApi->assignAccessGroup: ', $e->getMessage(), PHP_EOL;
}

?>

Documentation for API Endpoints

All URIs are relative to https://api.exivo.io/v1

Class Method HTTP request Description
AccessGroupApi assignAccessGroup POST /{siteId}/person/{personId}/assign/accessgroup/{accessGroupId} Assign access group to person
AccessGroupApi assignAccessZone POST /{siteId}/accessgroup/{accessGroupId}/accesszone/{accessZoneId} assign an access zone with a time profile
AccessGroupApi defineAccessGroup POST /{siteId}/accessgroup Define a new accessGroup
AccessGroupApi deleteAccessGroup DELETE /{siteId}/accessgroup/{accessGroupId} delete an access group
AccessGroupApi getAccessGroup GET /{siteId}/accessgroup/{accessGroupId} get access group by ID
AccessGroupApi getAccessGroups GET /{siteId}/accessgroup get all access groups
AccessGroupApi unassignAccessGroup POST /{siteId}/person/{personId}/unassign/accessgroup Unassign access group from person
AccessGroupApi unassignAccessZone DELETE /{siteId}/accessgroup/{accessGroupId}/accesszone/{accessZoneId} unassign the access zone from the access group
AccessGroupApi updateAccessGroup POST /{siteId}/accessgroup/{accessGroupId} update an access group
AccessLogApi getComponentAccessLog GET /{siteId}/accesslog/component get components access log
AccessLogApi getComponentAccessLogForOne GET /{siteId}/accesslog/component/{componentId} get component's access log
AccessLogApi getPersonAccessLog GET /{siteId}/accesslog/person get persons access log
AccessLogApi getPersonAccessLogForOne GET /{siteId}/accesslog/person/{personId} get person's access log
AccessZoneApi getAccessZone GET /{siteId}/accesszone/{accessZoneId} get access zone by ID
AccessZoneApi getAccessZones GET /{siteId}/accessZone get all access zones
ComponentApi getComponent GET /{siteId}/component/{componentId} get component by ID
ComponentApi getComponentAccessLog GET /{siteId}/accesslog/component get components access log
ComponentApi getComponentAccessLogForOne GET /{siteId}/accesslog/component/{componentId} get component's access log
ComponentApi getComponents GET /{siteId}/component get all components
ComponentApi setComponentOperatingMode POST /{siteId}/component/{componentId}/mode Set operating mode of a component
ComponentApi unlock POST /{siteId}/component/{componentId}/unlock Unlock a door
DigitalKeyApi activateDigitalKey POST /{siteId}/digitalKey/{mediumId}/activate Activate digital key by id
DigitalKeyApi assignDigitalKey POST /{siteId}/person/{personId}/assign/digitalKey/{mediumId} Assign digital key to person
DigitalKeyApi blockDigitalKey POST /{siteId}/digitalKey/{mediumId}/block Block digital key by id
DigitalKeyApi getDigitalKey GET /{siteId}/digitalKey/{mediumId} get digital key by ID
DigitalKeyApi getDigitalKeys GET /{siteId}/digitalKey get all assigned digital keys
DigitalKeyApi registerDigitalKey POST /{siteId}/digitalKey Register a new digital key
DigitalKeyApi unassignDigitalKey POST /{siteId}/person/{personId}/unassign/digitalKey/{mediumId} Unassign digital key from person
DigitalKeyApi unregisterDigitalKey DELETE /{siteId}/digitalKey/{mediumId} Unregister a digital key
DigitalKeyVisitApi createDigitalKeyVisit POST /{siteId}/digitalKeyVisits Creates a new digital key visit
DigitalKeyVisitApi getDigitalKeyVisit GET /{siteId}/digitalKeyVisit/{digitalKeyVisitId} Retrieve a digital key visit.
DigitalKeyVisitApi getDigitalKeyVisits GET /{siteId}/digitalKeyVisits Retrieve a list with all the digital key visits.
DigitalKeyVisitApi revokeDigitalKeyVisit POST /{siteId}/digitalKeyVisit/{digitalKeyVisitId}/revoke Revoke digital key visit
MediumApi activateMedium POST /{siteId}/medium/{mediumId}/activate Activate medium by id
MediumApi assignMedium POST /{siteId}/person/{personId}/assign/medium/{mediumId} Assign medium to person
MediumApi blockMedium POST /{siteId}/medium/{mediumId}/block Block medium by id
MediumApi getMedia GET /{siteId}/medium get all media
MediumApi getMedium GET /{siteId}/medium/{mediumId} get medium by ID
MediumApi registerMedium POST /{siteId}/medium Register a new medium
MediumApi unassignMedium POST /{siteId}/person/{personId}/unassign/medium/{mediumId} Unassign medium from person
MediumApi unregisterMedium DELETE /{siteId}/medium/{mediumId} Unregister a medium
PersonApi addPerson POST /{siteId}/person Creates a new person
PersonApi assignAccessGroup POST /{siteId}/person/{personId}/assign/accessgroup/{accessGroupId} Assign access group to person
PersonApi assignDigitalKey POST /{siteId}/person/{personId}/assign/digitalKey/{mediumId} Assign digital key to person
PersonApi assignMedium POST /{siteId}/person/{personId}/assign/medium/{mediumId} Assign medium to person
PersonApi changePersonInfo POST /{siteId}/person/{personId} Updates a person in the store
PersonApi deletePerson DELETE /{siteId}/person/{personId} Deletes a person
PersonApi getPerson GET /{siteId}/person/{personId} get person by ID
PersonApi getPersonAccessLog GET /{siteId}/accesslog/person get persons access log
PersonApi getPersonAccessLogForOne GET /{siteId}/accesslog/person/{personId} get person's access log
PersonApi getPersons GET /{siteId}/person get all persons
PersonApi resetPinCode DELETE /{siteId}/person/{personId}/pincode Resets a pinCode for the person
PersonApi revokeAccess POST /{siteId}/person/{personId}/revoke Revoke access of a person
PersonApi setPinCode POST /{siteId}/person/{personId}/pincode Sets a pinCode for the person
PersonApi unassignAccessGroup POST /{siteId}/person/{personId}/unassign/accessgroup Unassign access group from person
PersonApi unassignDigitalKey POST /{siteId}/person/{personId}/unassign/digitalKey/{mediumId} Unassign digital key from person
PersonApi unassignMedium POST /{siteId}/person/{personId}/unassign/medium/{mediumId} Unassign medium from person
PersonApi unrevokeAccess POST /{siteId}/person/{personId}/unrevoke Unrevoke access of a person
SiteApi getSiteInfo GET /{siteId}/info returns general site info
SpecialDayApi changeSpecialDays POST /{siteId}/specialdays changes the configuration of special days
SpecialDayApi getSpecialDays GET /{siteId}/specialdays get all special days
SwisspassApi register POST /{siteId}/swisspass/register registers exivo services in SwissPass customer's account
SwisspassApi search POST /{siteId}/swisspass/search returns swisspass customer and card data
TimeProfileApi defineTimeProfile POST /{siteId}/timeprofile Creates a new time profile
TimeProfileApi getTimeProfile GET /{siteId}/timeprofile/{timeProfileId} get time profile by ID
TimeProfileApi getTimeProfiles GET /{siteId}/timeprofile get all timeprofiles
TimeProfileApi redefineTimeProfile POST /{siteId}/timeprofile/{timeProfileId} Updates the time profile
TimeProfileApi removeTimeProfile DELETE /{siteId}/timeprofile/{timeProfileId} Deletes a time profile
VisitApi delegateUnlockDoor POST /{siteId}/visit Creates a new visit
VisitApi getVisit GET /{siteId}/visit/{visitId} Retrieve a visit.
VisitApi getVisits GET /{siteId}/visit Retrieve a list with all the visits.
VisitApi revokeUnlockDoorDelegation POST /{siteId}/visit/{visitId}/revoke Revoke visit

Documentation For Models

Documentation For Authorization

basicAuth

  • Type: HTTP basic authentication

Author