The API for working with Concord JSON Stores, the data in stores and named queries.
Note: the JSON Store API supersedes the old Inventory and Inventory Query APIs. Existing users are encouraged to switch to the JSON Store API. The data created using the old API is available both trough the Inventory and JSON Store APIs.
Creates or updates a JSON Store with the specified parameters.
/api/v1/org/{orgName}/jsonstore
POST
Authorization
, Content-Type: application/json
{
"id": "...",
"name": "myStore",
"visibility": "PRIVATE",
"owner": {
"id": "...",
"username": "...",
"userDomain": "...",
"userType": "..."
}
}
All parameters except name
are optional.
Content-Type: application/json
{
"result": "CREATED",
"ok": true,
"id": "..."
}
Returns a previously created JSON store configuration.
/api/v1/org/${orgName}/jsonstore/${storeName}
GET
Authorization
Content-Type: application/json
{
"orgId": "...",
"orgName": "...",
"id": "...",
"name": "myStore",
"visibility": "PRIVATE",
"owner": {
"id": "...",
"username": "...",
"userDomain": "...",
"userType": "..."
}
}
Removes an existing JSON store and all its data and associated queries.
Warning: the operation is irreversible.
/api/v1/org/${orgName}/jsonstore/${storeName}
DELETE
Authorization
Content-Type: application/json
{
"ok": true,
"result": "DELETED"
}
Lists all existing JSON stores for the specified organization.
/api/v1/org/${orgName}/jsonstore
GET
Content-Type: application/json
[
{ "orgId": "...", "orgName": "...", "id": "...", "name": "...", "visibility": "...", "owner": { ... } },
...
]
Returns the current capacity for a specified JSON store. The size
parameter
is the size of all items in the store and the maxSize
is the maximum allowed
size of the store (-1
if unbounded).
/api/v1/org/${orgName}/jsonstore/${storeName}/capacity
GET
Content-Type: application/json
{
"size": "...",
"maxSize": "..."
}
Returns store’s current access rules.
/api/v1/org/${orgName}/jsonstore/${storeName}/access
GET
Authorization
Content-Type: application/json
[
{"teamId": "...", "orgName": "...", "teamName": "...", "level": "..."},
...
]
Updates stores’s access rules for a specific team.
/api/v1/org/${orgName}/jsonstore/${storeName}/access
POST
Authorization
, Content-Type: application/json
Content-Type: application/json
{
"teamId": "...",
"orgName": "...",
"teamName": "...",
"level": "..."
}
Content-Type: application/json
{
"ok": true,
"result": "UPDATED"
}
Creates or updates a JSON store items.
/api/v1/org/${orgName}/jsonstore/${storeName}/item/${itemPath}
itemPath
: a unique value to identify the data and can contain path
separators (e.g. dir1/dir2/item
)PUT
Authorization
, Content-Type: application/json
Body any valid JSON object:
{
...
}
Content-Type: application/json
{
"ok": true,
"result": "UPDATED"
}
Returns a previously created JSON store item.
/api/v1/org/${orgName}/jsonstore/${storeName}/item/${itemPath}
itemPath
: item’s identifier.GET
Authorization
Content-Type: application/json
a valid JSON.
Lists items in the specified JSON store.
/api/v1/org/${orgName}/jsonstore/${storeName}/item?offset=${offset}&limit=${limit}&filter=${filter}
limit
: maximum number of records to return;offset
: starting index from which to return;filter
: filters items by name (substring match, case-insensitive).GET
Content-Type: application/json
[
"item1",
"item2",
...
]
Removes an item from the specified JSON store.
/api/v1/org/${orgName}/jsonstore/${storeName}/item/${itemPath}
itemPath
: item’s identifier.DELETE
Authorization
Content-Type: application/json
{
"ok": true,
"result": "DELETED"
}
Creates a new or updates an existing named query.
/api/v1/org/${orgName}/jsonstore/${storeName}/query
POST
Authorization
, Content-Type: application/json
{
"name": "myQuery",
"text": "select from ..."
}
Content-Type: application/json
{
"ok": true,
"result": "CREATED"
}
Returns a previously created named query.
/api/v1/org/${orgName}/jsonstore/${storeName}/query/${queryName}
GET
Authorization
Content-Type: application/json
{
"storeId": "...",
"id": "...",
"name": "...",
"text": "..."
}
Lists named queries in the specified JSON store.
/api/v1/org/${orgName}/jsonstore/${storeName}/query?offset=${offset}&limit=${limit}&filter=${filter}
limit
: maximum number of records to return;offset
: starting index from which to return;filter
: filters queries by name (substring match, case-insensitive).GET
Content-Type: application/json
[
{ "name": "...", "text": "..." },
...
]
Removes a named query from the specified JSON store.
/api/v1/org/${orgName}/jsonstore/${storeName}/query/${queryName}
DELETE
Authorization
Content-Type: application/json
{
"ok": true,
"result": "DELETED"
}
Executes a previously created query using the submitted body as the query’s parameter. Returns a list of rows.
/api/v1/org/${orgName}/jsonstore/${storeName}/query/${queryName}/exec
POST
Authorization
, Content-Type: application/json
Content-Type: application/json
[
...
]