APS Controller

The APS Controller (APSC) exposes a number of services accessible through the Internet and the private network by means of the HTTPS REST API.

../../../_images/schema-apsc.png

Operation Collections

The APS Controller (APSC) stores and manages all APS resources in accordance with the APS types. Since all communications go through the APSC, it keeps track of APS resources, APS types, and APS applications that manage those resources.

All objects managed by the APSC are split into the following collections, each with its own base path.

Collection

Base path

Operations

Description

Resources

/aps/2/resources

POST, GET, PUT, DELETE

Perform all operations with APS resources

Types

/aps/2/types

GET

Read a single type or get a filtered list of APS types

Applications

/aps/2/applications
/aps/2/application

POST, GET, PUT, DELETE

Perform all operations with application services - accessible only for applications with valid APS certificate

Packages

/aps/2/packages

GET

Read package data or get a list of packages

UI navigation

/aps/2/navigation

POST

The UI navigation endpoint - used to get a custom navigation tree for a control panel

UI runtime

/aps/2/ui/runtime

GET

The path to the APS UI runtime - get the runtime version by addressing to /aps/2/ui/runtime/version.html

Operations

The table below contains operations processed by the APS controller.

Method

Path

Description

GET

/aps/2/resources/

Get a list of resources

GET

/aps/2/resources/{resource-id}

Get resource properties

POST

/aps/2/resources/

Provision a resource

PUT

/aps/2/resources/{resource-id}

Configure a resource

DELETE

/aps/2/resources/{resource-id}

Unprovision a resource

GET

/aps/2/resources/{resource-id}/aps/links

Get linked resources

GET

/aps/2/resources/{resource-id}/{relation}

Get linked resources

POST

/aps/2/resources/{resource-id}/{relation}

Link resources

POST

/aps/2/resources/{resource-id}/{relation}

Relink resources

DELETE

/aps/2/resources/{resource-id1}/{relation}/{resource-id2}

Unlink resources

GET

/aps/2/resources/{resource-id}/aps/subscriptions

Get event subscriptions

POST

/aps/2/resources/{resource-id}/aps/subscriptions

Subscribe to an event type

DELETE

/aps/2/resources/{resource-id}/aps/subscriptions

Delete an event subscription

GET

/aps/2/resources/{resource-id}/aps/access

Get a list of actors with assigned security roles for the specified resource

GET

/aps/2/resources/{actor-id}/aps/permissions

Get a list of resources with security roles assigned to the specified actor

GET | POST | PUT | DELETE

/aps/2/resources/{resource-id}/{custom-operation}

Call a custom operation on a resource

GET

/aps/2/application

Get a list of application services

GET

/aps/2/application/{service-id}/{resource-id}

Get resource details

PUT

/aps/2/application/{service-id}/{resource-id}

Configure a resource

POST

/aps/2/application/{service-id}

Register a resource

DELETE

/aps/2/application/{service-id}/{resource-id}

Unregister a resource

GET

/aps/2/types

Get a list of types

GET

/aps/2/types/{type-id}

Get type details

GET

/aps/2/types?composing({type-id})

Get composing types

GET

/aps/2/types?implementing({type-id})

Get derivative types

GET

/aps/2/packages

Get a list of packages

GET

/aps/2/packages/{package-id}

Get package details

GET

/aps/2/packages/{package-id}/APP-META.xml

Get package meta

GET

/aps/2packages/{package-id}/<path>

Get a file from a package