Personium REST API Reference

Welcome to the Personium REST API Reference.
The REST API Reference describes technical detailed specifications related to all of the REST APIs provided by Personium.

Unit Level API

The Unit Level API is an API belonging to the unit that hosts a group of cells (for creating cells and managing a group of created cells).
In principle, these APIs cannot be accessed using the access tokens issued from the cell.
(They are available after promotion to unit level tokens)

Resource Path

https://{UnitFQDN}/

Create/Register
Acquire
Update
Delete
Other
Cell Create Acquire List
Acquire
Update Delete
Recursive Delete

UUT



Upgrade setting


Cell Level API

Cell Level APIs are

And so on. Many of these functions are implemented in the form of control objects that can be operated with the OData protocol, which is a standard for performing relational data manipulation based on REST.

Resource Path

https://{UnitFQDN}/{CellName}
Cell internal setting API: setting in single cell model

Create/Register
Acquire
Update
Delete
Role Register Acquire List
Acquire
Update Delete
_$links Register Acquire List Update Delete
_via NavProp Register Acquire

Account Register Acquire List
Acquire
Update Delete
_$links Register Acquire List Update Delete
_via NavProp Register Acquire

Box Create Acquire
Acquire List
Acquire URL
Update Delete
_$links Register Acquire List Update Delete
_via NavProp Register Acquire

Authentication

Change Password
Social Coordination APIs: Multiple cell model configuration

Create/Register
Acquire
Update
Delete
Other
ExtCell Register Acquire List
Acquire
Update Delete
_$links Register Acquire List Update Delete
_via NavProp Register Acquire List


Relation Register Acquire List
Acquire
Update Delete
_$links Register Acquire List Update Delete
_via NavProp Register Acquire


ExtRole Register Acquire
Acquire List
Update Delete
_$links Register Acquire List Update Delete
_via NavProp Register Acquire


Authentication
(__token, __authz)




OAuth2_Authorization end point
OAuth2Token_Endpoint Authentication
Access Control Restrict Acquire Properties Change Properties

Events Accept Event Log File Acquire
Log File Acquire List
Log File Acquire Information

Delete Log File
Message Control
Transmit

Acquire
Acquire List

Delete
Message Control
Receive

Acquire
Acquire List
Change Status Delete


Box Level API

The Box Level API is an API for applications and others to manipulate data, and is a group of APIs based on WebDAV as a file system idea.
Like ordinary file systems, it is possible to arrange / acquire files, create / manage folders (collection), get list of files and folders, set / refer to access control, etc.

Also, because it supports the following special collections, it can handle not only file-like data but also various forms of data.
These special collections can be created in any path on the WebDAV space provided by Box.

Special collection
Use
Notes
OData Service Collection
Relational data

Engine Service Collection
Run customized logic

CALDAV Collection
Calendar data
Unimplemented
Link Collection
Aliases to specific areas of other cells or other Box
Unimplemented

Resource Path (* with certain exceptions)

https://{UnitFQDN}/{CellName}/{BoxName}
https://{UnitFQDN}/{CellName}/{BoxName}/{ResourcePath}
Box Management
Create/Register
Acquire
Install Box Acquire Box Meta Data
WebDAV

Create/Register
Acquire
Update
Delete
Other
Collection Create Acquire Settings Change Settings
Move/Rename
Delete
File Register/Update Acquire
Acquire Settings
Change Settings Delete
Access Control



Configuring the Settings

* ACL setting (access control setting) is possible for all files and collections (including special collections).
* ACL setting can be acquired with the PROPFIND method.

OData

Create/Register
Acquire
Update
Delete
Other
EntityType Register Acquire
Acquire List
Update Delete
_$links Register Acquire List Update Delete
_via NavProp
Acquire List


AssociationEnd Register Acquire
Acquire List
Update Delete
_$links Register Acquire List
Delete
_via NavProp
Acquire List


ComplexType Register Acquire
Acquire List
Update Delete
_$links Register Acquire List Update Delete
Property Register Acquire
Acquire List
Update Delete
_$links Register Acquire List Update Delete
ComplexTypeProperty Register Acquire
Acquire List
Update Delete
_$links Register Acquire List Update Delete
Entity Create Acquire
Acquire List
Update
Partial Update
Delete Batch Operation
_$links
Register Acquire List Update Delete
_via NavProp Register Acquire List


Server Script (Engine Service Collection)

You can register Personium application and server side logic created by Cell user and run it.
First, register the user logic as a file, set the service collection and associate with the path, so that
You can run the user logic for requests from any path under the collection.


Create/Register
Acquire
Update
Delete
Other
Service Collection Source Create Acquire Apply Settings Delete Service Execute
Service Document Acquire/Schema Acquire

Acquire
Service Document Acquire
Schema Acquire
OData Acquisition Common Queries
Query Single Acquisition List Acquisition
$format Query Yes Yes
$expand Query Yes Yes
$select Query Yes Yes
$orderby Query Yes Yes
$top Query Yes Yes
$skip Query Yes Yes
$filter Query Yes Yes
$inlinecount Yes Yes
Full-text Search (q) Query Yes Yes


Common

Error Messages

Restrictions on personium HTTP Implementation

CORS Support

Cross Domain Policy File Acquire


Glossary