The HTTP API for CHAOS is called Portal.
Requests to the API have the following URL-structure:
<SERVICE_PATH>/<PROTOCOL_VERSION>/<EXTENSION>/<ACTION>?<ARGUMENTS>
for example
http://api.chaos-systems.com/v4/Object/Get?pageSize=8
Has a
ServicePath
that ishttp://api.chaos-systems.com
ProtocolVersion
that isv4
Extension
that isObject
Action
that isGet
with oneArgument
:pageSize
with a value of8
.
Such an HTTP Request executes the specified Action
. Arguments
to an Action
should be passed via the query string as fields and values, i.e. field1=value1&field2=value2...
ProtocolVersion
and its following slash can be omitted. In that case the current version will be used.
This page documents the Actions
you can use in CHAOS. Each section has a heading of the form Extension/Action
which you can simply copy into your URL.
Each Extension
belongs to a module.
On a succesfull request Portal will return a structure similar to the following:
xml
- <PortalResult Duration="CHAOS call duration">
- <ModuleResults>
- <ModuleResult Fullname="Module name" Duration="0" Count="Number of results">
- <Results>
- <Result FullName="Name of object">
...
</Result> ...
</Results>
</ModuleResult>
</ModuleResults>
</PortalResult>
The Fullname
attribute of <ModuleResult>
will correspond to the name of module of the extension you called. The Count
attribute tells you how many <Result>
elements the <Results>
tag contains.
<Result>
will contain a number of elements corresponding to the fields of the object you requested.
Here's an example result from the action Object/Get
:
xml
- <PortalResult Duration="84">
- <ModuleResults>
- <ModuleResult Fullname="MCM" Duration="0" Count="2" TotalCount="5">
- <Results>
- <Result FullName="CHAOS.MCM.Data.DTO.Object">
<GUID>00000000-0000-0000-0000-00007d080016</GUID> <ObjectTypeID>36</ObjectTypeID> <DateCreated>25-05-2012 15:50:01</DateCreated> <Metadatas/> <Files/> <ObjectRelations/>
</Result> <Result FullName="CHAOS.MCM.Data.DTO.Object"> <GUID>546f2bc2-dcd4-424e-b695-729e0152bdeb</GUID> <ObjectTypeID>36</ObjectTypeID> <DateCreated>21-03-2013 17:29:23</DateCreated> <Metadatas/> <Files/> <ObjectRelations/> </Result>
</Results>
</ModuleResult>
</ModuleResults>
</PortalResult>
TotalCount
is specific to the Object/Get
action which is paginated and tells you the total number of results for the request.
List of modules and their extensions
Portal/index EmailPassword/index MCM/index