Asset List
- Assign a asset to a collection partially implemented
- Run a partial update of a asset TODO
List of asset endpoints
Lists the asset endpoints accessible to requesting user, for anonymous access a list of public data endpoints is returned.
GET /api/v2/assets/
Example
curl -X GET https://[kpi]/api/v2/assets/
Search can be made with q
parameter.
Search filters can be returned with results by passing metadata=on
to querystring.
Example
curl -X GET https://[kpi]/api/v2/assets/?metadata=on { "count": 0 "next": ... "previous": ... "results": [] "metadata": { "languages": [], "countries": [], "sectors": [], "organizations": [] } }
Look at README for more details.
Results can be sorted with ordering
parameter.
Allowed fields are:
asset_type
date_modified
name
owner__username
subscribers_count
Example
curl -X GET https://[kpi]/api/v2/assets/?ordering=-name
Note: Collections can be displayed first with parameter collections_first
Example
curl -X GET https://[kpi]/api/v2/assets/?collections_first=true&ordering=-name
Perform bulk actions on assets
Actions available:
archive
delete
unarchive
undelete
(superusers only)
POST /api/v2/assets/bulk/
Example
curl -X POST https://[kpi]/api/v2/assets/bulk/
Payload to preform bulk actions on one or more assets
{ "payload": { "asset_uids": [{string}, ...], "action": {string}, } }
Payload to preform bulk actions on ALL assets for authenticated user
{ "payload": { "confirm": true, "action": {string} } }
Get a hash of all version_id
s of assets.
Useful to detect any changes in assets with only one call to API
GET /api/v2/assets/hash/
Example
curl -X GET https://[kpi]/api/v2/assets/hash/
CRUD
uid
- is the unique identifier of a specific asset
Retrieves current asset
GET /api/v2/assets/{uid}
/
Example
curl -X GET https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/
Creates or clones an asset.
POST /api/v2/assets/
Example
curl -X POST https://[kpi]/api/v2/assets/
Payload to create a new asset
{ "name": {string}, "settings": { "description": {string}, "sector": {string}, "country": {string}, "share-metadata": {boolean} }, "asset_type": {string} }
Payload to clone an asset
{ "clone_from": {string}, "name": {string}, "asset_type": {string} }
where asset_type
must be one of these values:
- block (can be cloned to
block
,question
,survey
,template
) - question (can be cloned to
question
,survey
,template
) - survey (can be cloned to
block
,question
,survey
,template
) - template (can be cloned to
survey
,template
)
Settings are cloned only when type of assets are survey
or template
.
In that case, share-metadata
is not preserved.
When creating a new block
or question
asset, settings are not saved either.
Counts
Retrieves total and daily counts of submissions
GET /api/v2/assets/{uid}/counts/
Example
curl -X GET https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/counts/
uses the days
query to get the daily counts from the last x amount of days.
Default amount is 30 days
GET /api/v2/assets/{uid}/counts/?days=7
Example
curl -X GET https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/counts/?days=7
Data
Retrieves data
GET /api/v2/assets/{uid}/data/
Example
curl -X GET https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/data/
Deployment
Retrieves the existing deployment, if any.
GET /api/v2/assets/{uid}/deployment/
Example
curl -X GET https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/deployment/
Creates a new deployment, but only if a deployment does not exist already.
POST /api/v2/assets/{uid}/deployment/
Example
curl -X POST https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/deployment/
Updates the active
field of the existing deployment.
PATCH /api/v2/assets/{uid}/deployment/
Example
curl -X PATCH https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/deployment/
Overwrites the entire deployment, including the form contents, but does not change the deployment's identifier
PUT /api/v2/assets/{uid}/deployment/
Example
curl -X PUT https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/deployment/
Reports
Returns the submission data for all deployments of a survey. This data is grouped by answers, and does not show the data for individual submissions. The endpoint will return a 404 NOT FOUND error if the asset is not deployed and will only return the data for the most recently deployed version.
GET /api/v2/assets/{uid}/reports/
Example
curl -X GET https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/reports/
Data sharing
Control sharing of submission data from this project to other projects
PATCH /api/v2/assets/{uid}/
Example
curl -X PATCH https://[kpi]/api/v2/assets/aSAvYreNzVEkrWg5Gdcvg/
Payload
{ "data_sharing": { "enabled": true, "fields": [] } }
fields
: Optional. List of questions whose responses will be shared. If missing or empty, all responses will be shared. Questions must be identified by full group path separated by slashes, e.g.group/subgroup/question_name
.
Response
HTTP 200 Ok { ... "data_sharing": { "enabled": true, "fields": [] } }
CURRENT ENDPOINT
GET /api/v2/assets/
{ "count": 0, "next": null, "previous": null, "results": [] }