GET/api/v1/experiments

Query Parameters

filter?"member"

Filter experiments by relationship to the user

Value in

  • "member"
status?string

Filter experiments by their status

Value in

  • "active"
  • "stale"
  • "archived"
  • "published"
search?string

Search term for experiment name

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "name": "string",    "description": "string",    "status": "active",    "visibility": "private",    "embargoUntil": "2019-08-24T14:15:22Z",    "anonymizeContributors": true,    "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",    "workbookVersionId": "4d884985-5ac3-4007-8e9b-7b1d17fd2860",    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "ownerFirstName": "string",    "ownerLastName": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z",    "data": {      "columns": [        {          "name": "string",          "type_name": "string",          "type_text": "string"        }      ],      "rows": [        {          "property1": null,          "property2": null        }      ],      "totalRows": 0,      "truncated": true    },    "locations": [      {        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",        "name": "string",        "latitude": -90,        "longitude": -180,        "country": "string",        "region": "string",        "municipality": "string",        "postalCode": "string",        "addressLabel": "string",        "createdAt": "2019-08-24T14:15:22Z",        "updatedAt": "2019-08-24T14:15:22Z"      }    ]  }]
POST/api/v1/experiments

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments" \  -H "Content-Type: application/json" \  -d '{    "name": "string"  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "status": "active",  "visibility": "private",  "embargoUntil": "2019-08-24T14:15:22Z",  "anonymizeContributors": true,  "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",  "workbookVersionId": "4d884985-5ac3-4007-8e9b-7b1d17fd2860",  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "ownerFirstName": "string",  "ownerLastName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "data": {    "columns": [      {        "name": "string",        "type_name": "string",        "type_text": "string"      }    ],    "rows": [      {        "property1": null,        "property2": null      }    ],    "totalRows": 0,    "truncated": true  },  "locations": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "latitude": -90,      "longitude": -180,      "country": "string",      "region": "string",      "municipality": "string",      "postalCode": "string",      "addressLabel": "string",      "createdAt": "2019-08-24T14:15:22Z",      "updatedAt": "2019-08-24T14:15:22Z"    }  ]}
GET/api/v1/experiments/{id}

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "status": "active",  "visibility": "private",  "embargoUntil": "2019-08-24T14:15:22Z",  "anonymizeContributors": true,  "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",  "workbookVersionId": "4d884985-5ac3-4007-8e9b-7b1d17fd2860",  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "ownerFirstName": "string",  "ownerLastName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "data": {    "columns": [      {        "name": "string",        "type_name": "string",        "type_text": "string"      }    ],    "rows": [      {        "property1": null,        "property2": null      }    ],    "totalRows": 0,    "truncated": true  },  "locations": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "latitude": -90,      "longitude": -180,      "country": "string",      "region": "string",      "municipality": "string",      "postalCode": "string",      "addressLabel": "string",      "createdAt": "2019-08-24T14:15:22Z",      "updatedAt": "2019-08-24T14:15:22Z"    }  ]}
PATCH/api/v1/experiments/{id}

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "status": "active",  "visibility": "private",  "embargoUntil": "2019-08-24T14:15:22Z",  "anonymizeContributors": true,  "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",  "workbookVersionId": "4d884985-5ac3-4007-8e9b-7b1d17fd2860",  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "ownerFirstName": "string",  "ownerLastName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "data": {    "columns": [      {        "name": "string",        "type_name": "string",        "type_text": "string"      }    ],    "rows": [      {        "property1": null,        "property2": null      }    ],    "totalRows": 0,    "truncated": true  },  "locations": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "latitude": -90,      "longitude": -180,      "country": "string",      "region": "string",      "municipality": "string",      "postalCode": "string",      "addressLabel": "string",      "createdAt": "2019-08-24T14:15:22Z",      "updatedAt": "2019-08-24T14:15:22Z"    }  ]}
DELETE/api/v1/experiments/{id}

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/experiments/{id}/access

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/access"
{  "experiment": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "name": "string",    "description": "string",    "status": "active",    "visibility": "private",    "embargoUntil": "2019-08-24T14:15:22Z",    "anonymizeContributors": true,    "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",    "workbookVersionId": "4d884985-5ac3-4007-8e9b-7b1d17fd2860",    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "ownerFirstName": "string",    "ownerLastName": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z",    "data": {      "columns": [        {          "name": "string",          "type_name": "string",          "type_text": "string"        }      ],      "rows": [        {          "property1": null,          "property2": null        }      ],      "totalRows": 0,      "truncated": true    },    "locations": [      {        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",        "name": "string",        "latitude": -90,        "longitude": -180,        "country": "string",        "region": "string",        "municipality": "string",        "postalCode": "string",        "addressLabel": "string",        "createdAt": "2019-08-24T14:15:22Z",        "updatedAt": "2019-08-24T14:15:22Z"      }    ]  },  "hasAccess": true,  "isAdmin": true}
GET/api/v1/experiments/{id}/tables

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/tables"
[  {    "identifier": "string",    "tableType": "static",    "displayName": "string",    "totalRows": 0,    "defaultSortColumn": "string",    "errorColumn": "string"  }]
GET/api/v1/experiments/{id}/data

Path Parameters

id*string

ID of the experiment

Formatuuid

Query Parameters

page?integer

Page number for pagination

Range1 <= value
pageSize?integer

Number of rows per page

Range1 <= value <= 100
tableName*|

Table name: 'raw_data', 'device', macro UUID, or upload_table_id

columns?string

Specific columns to fetch. If provided with tableName, fetches full data for these columns only

orderBy?string

Column name to order results by

orderDirection?string

Sort direction for ordering

Value in

  • "ASC"
  • "DESC"
filters?string

JSON-encoded array of filter conditions applied as a WHERE clause

aggregation?string

JSON-encoded GROUP BY + aggregate functions

limit?integer

Hard cap on returned rows for filtered/aggregated reads. Ignored when page/pageSize are used.

Range0 <= value <= 100000

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data?tableName=raw_data"
[  {    "name": "string",    "catalog_name": "string",    "schema_name": "string",    "data": {      "columns": [        {          "name": "string",          "type_name": "string",          "type_text": "string"        }      ],      "rows": [        {          "property1": null,          "property2": null        }      ],      "totalRows": 0,      "truncated": true    },    "page": 0,    "pageSize": 0,    "totalPages": 0,    "totalRows": 0  }]
GET/api/v1/experiments/{id}/data/distinct

Path Parameters

id*string

ID of the experiment

Formatuuid

Query Parameters

tableName*|

Table to scan

column*string

Column whose distinct values to return

Length1 <= length
limit?integer

Hard cap on returned values (default 200, max 1000).

Range0 <= value <= 1000

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/distinct?tableName=raw_data&column=string"
{  "values": [    "string"  ],  "truncated": true}
GET/api/v1/experiments/{id}/data/exports

Path Parameters

id*string

ID of the experiment

Formatuuid

Query Parameters

tableName*string

Name of the table

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/exports?tableName=string"
{  "exports": [    {      "exportId": "85382188-14c3-47fd-b4ab-d4b86ccda514",      "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",      "tableName": "string",      "format": "csv",      "status": "queued",      "filePath": "string",      "rowCount": 0,      "fileSize": 0,      "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",      "createdAt": "2019-08-24T14:15:22Z",      "completedAt": "2019-08-24T14:15:22Z"    }  ]}
POST/api/v1/experiments/{id}/data/exports

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/exports" \  -H "Content-Type: application/json" \  -d '{    "tableName": "string",    "format": "csv"  }'
{  "status": "string"}
GET/api/v1/experiments/{id}/data/exports/{exportId}

Path Parameters

id*string

ID of the experiment

Formatuuid
exportId*string

ID of the export

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/exports/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/experiments/{id}/data/uploads

Path Parameters

id*string

ID of the experiment

Formatuuid

Query Parameters

uploadTableId?string
Formatuuid
uploadTableName?string
Length1 <= length <= 63

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/uploads"
{  "uploads": [    {      "uploadId": "string",      "experimentId": "string",      "uploadTableId": "string",      "uploadTableName": "string",      "sourceKind": "ambyte",      "status": "pending",      "fileCount": 0,      "rowCount": 0,      "createdBy": "string",      "createdAt": "string",      "completedAt": "string",      "errorMessage": "string"    }  ]}
POST/api/v1/experiments/{id}/data/annotations

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/annotations" \  -H "Content-Type: application/json" \  -d '{    "tableName": "string",    "rowId": "string",    "annotation": {      "type": "comment",      "content": {        "type": "comment",        "text": "string"      }    }  }'
{  "rowsAffected": 0}
POST/api/v1/experiments/{id}/data/annotations/bulk

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/annotations/bulk" \  -H "Content-Type: application/json" \  -d '{    "tableName": "string",    "rowIds": [      "string"    ],    "annotation": {      "type": "comment",      "content": {        "type": "comment",        "text": "string"      }    }  }'
{  "rowsAffected": 0}
PATCH/api/v1/experiments/{id}/data/annotations/{annotationId}

Path Parameters

id*string

ID of the experiment

Formatuuid
annotationId*string

ID of the annotation

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/annotations/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "content": {      "type": "comment",      "text": "string"    }  }'
{  "rowsAffected": 0}
DELETE/api/v1/experiments/{id}/data/annotations/{annotationId}

Path Parameters

id*string

ID of the experiment

Formatuuid
annotationId*string

ID of the annotation

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/annotations/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "rowsAffected": 0}
POST/api/v1/experiments/{id}/data/annotations/bulk-delete

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/data/annotations/bulk-delete" \  -H "Content-Type: application/json" \  -d '{    "tableName": "string",    "rowIds": [      "string"    ],    "type": "comment"  }'
{  "rowsAffected": 0}
GET/api/v1/experiments/{id}/locations

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/locations"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "name": "string",    "latitude": -90,    "longitude": -180,    "country": "string",    "region": "string",    "municipality": "string",    "postalCode": "string",    "addressLabel": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/experiments/{id}/locations

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/locations" \  -H "Content-Type: application/json" \  -d '{    "locations": [      {        "name": "string",        "latitude": -90,        "longitude": -180      }    ]  }'
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "name": "string",    "latitude": -90,    "longitude": -180,    "country": "string",    "region": "string",    "municipality": "string",    "postalCode": "string",    "addressLabel": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
PUT/api/v1/experiments/{id}/locations

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PUT "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/locations" \  -H "Content-Type: application/json" \  -d '{    "locations": [      {        "name": "string",        "latitude": -90,        "longitude": -180      }    ]  }'
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "name": "string",    "latitude": -90,    "longitude": -180,    "country": "string",    "region": "string",    "municipality": "string",    "postalCode": "string",    "addressLabel": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
GET/api/v1/locations/search

Query Parameters

query*string
Length1 <= length
maxResults?number
Range1 <= value <= 50
Default10

Response Body

application/json

curl -X GET "https://example.com/api/v1/locations/search?query=string"
[  {    "label": "string",    "latitude": 0,    "longitude": 0,    "country": "string",    "region": "string",    "municipality": "string",    "postalCode": "string"  }]
GET/api/v1/locations/geocode

Query Parameters

latitude*number
Range-90 <= value <= 90
longitude*number
Range-180 <= value <= 180

Response Body

application/json

curl -X GET "https://example.com/api/v1/locations/geocode?latitude=-90&longitude=-180"
[  {    "label": "string",    "latitude": 0,    "longitude": 0,    "country": "string",    "region": "string",    "municipality": "string",    "postalCode": "string"  }]
GET/api/v1/experiments/{id}/members

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/members"
[  {    "user": {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "firstName": "string",      "lastName": "string",      "email": "user@example.com",      "avatarUrl": "string"    },    "role": "admin",    "joinedAt": "2019-08-24T14:15:22Z",    "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006"  }]
POST/api/v1/experiments/{id}/members/batch

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/members/batch" \  -H "Content-Type: application/json" \  -d '{    "members": [      {        "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b"      }    ]  }'
[  {    "user": {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "firstName": "string",      "lastName": "string",      "email": "user@example.com",      "avatarUrl": "string"    },    "role": "admin",    "joinedAt": "2019-08-24T14:15:22Z",    "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006"  }]
PATCH/api/v1/experiments/{id}/members/{memberId}

Path Parameters

id*string

ID of the experiment

Formatuuid
memberId*string

ID of the member

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/members/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "role": "admin"  }'
{  "user": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "firstName": "string",    "lastName": "string",    "email": "user@example.com",    "avatarUrl": "string"  },  "role": "admin",  "joinedAt": "2019-08-24T14:15:22Z",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006"}
DELETE/api/v1/experiments/{id}/members/{memberId}

Path Parameters

id*string

ID of the experiment

Formatuuid
memberId*string

ID of the member

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/members/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
POST/api/v1/experiments/transfer-admin

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/transfer-admin" \  -H "Content-Type: application/json" \  -d '{    "transfers": [      {        "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",        "targetUserId": "73727401-c2dc-4b4b-ad9b-350075d6b049"      }    ]  }'
{  "results": [    {      "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",      "success": true,      "error": "string"    }  ]}
GET/api/v1/experiments/{id}/metadata

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/metadata"
[  {    "metadataId": "a8818da3-b42d-457d-a430-da2b99a63c47",    "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",    "metadata": {      "property1": null,      "property2": null    },    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/experiments/{id}/metadata

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/metadata" \  -H "Content-Type: application/json" \  -d '{    "metadata": {      "name": "string",      "columns": [        {          "id": "string",          "name": "string",          "type": "string"        }      ],      "rows": [        {          "_id": "string",          "property1": null,          "property2": null        }      ],      "identifierColumnId": "string",      "experimentQuestionId": "string"    }  }'
{  "metadataId": "a8818da3-b42d-457d-a430-da2b99a63c47",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "metadata": {    "property1": null,    "property2": null  },  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
PUT/api/v1/experiments/{id}/metadata/{metadataId}

Path Parameters

id*string

ID of the experiment

Formatuuid
metadataId*string

ID of the metadata record

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PUT "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/metadata/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "metadata": {      "name": "string",      "columns": [        {          "id": "string",          "name": "string",          "type": "string"        }      ],      "rows": [        {          "_id": "string",          "property1": null,          "property2": null        }      ],      "identifierColumnId": "string",      "experimentQuestionId": "string"    }  }'
{  "metadataId": "a8818da3-b42d-457d-a430-da2b99a63c47",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "metadata": {    "property1": null,    "property2": null  },  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
DELETE/api/v1/experiments/{id}/metadata/{metadataId}

Path Parameters

id*string

ID of the experiment

Formatuuid
metadataId*string

ID of the metadata record

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/metadata/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/experiments/{id}/flow

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/flow"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "graph": {    "nodes": [      {        "id": "string",        "type": "question",        "name": "string",        "content": {          "kind": "yes_no",          "text": "string",          "required": false        },        "isStart": false,        "position": {          "x": 0,          "y": 0        }      }    ],    "edges": [      {        "id": "string",        "source": "string",        "target": "string",        "label": "string",        "sourceHandle": "string"      }    ]  },  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
POST/api/v1/experiments/{id}/flow

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/flow" \  -H "Content-Type: application/json" \  -d '{    "nodes": [      {        "id": "string",        "type": "question",        "name": "string",        "content": {          "kind": "yes_no",          "text": "string"        }      }    ],    "edges": [      {        "id": "string",        "source": "string",        "target": "string"      }    ]  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "graph": {    "nodes": [      {        "id": "string",        "type": "question",        "name": "string",        "content": {          "kind": "yes_no",          "text": "string",          "required": false        },        "isStart": false,        "position": {          "x": 0,          "y": 0        }      }    ],    "edges": [      {        "id": "string",        "source": "string",        "target": "string",        "label": "string",        "sourceHandle": "string"      }    ]  },  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
PUT/api/v1/experiments/{id}/flow

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PUT "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/flow" \  -H "Content-Type: application/json" \  -d '{    "nodes": [      {        "id": "string",        "type": "question",        "name": "string",        "content": {          "kind": "yes_no",          "text": "string"        }      }    ],    "edges": [      {        "id": "string",        "source": "string",        "target": "string"      }    ]  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "graph": {    "nodes": [      {        "id": "string",        "type": "question",        "name": "string",        "content": {          "kind": "yes_no",          "text": "string",          "required": false        },        "isStart": false,        "position": {          "x": 0,          "y": 0        }      }    ],    "edges": [      {        "id": "string",        "source": "string",        "target": "string",        "label": "string",        "sourceHandle": "string"      }    ]  },  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
POST/api/v1/experiments/{id}/workbook/attach

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/workbook/attach" \  -H "Content-Type: application/json" \  -d '{    "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c"  }'
{  "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",  "workbookVersionId": "4d884985-5ac3-4007-8e9b-7b1d17fd2860",  "version": 0}
POST/api/v1/experiments/{id}/workbook/detach

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/workbook/detach"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "status": "active",  "visibility": "private",  "embargoUntil": "2019-08-24T14:15:22Z",  "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",  "workbookVersionId": "4d884985-5ac3-4007-8e9b-7b1d17fd2860",  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "ownerFirstName": "string",  "ownerLastName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "data": {    "columns": [      {        "name": "string",        "type_name": "string",        "type_text": "string"      }    ],    "rows": [      {        "property1": null,        "property2": null      }    ],    "totalRows": 0,    "truncated": true  },  "locations": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "latitude": -90,      "longitude": -180,      "country": "string",      "region": "string",      "municipality": "string",      "postalCode": "string",      "addressLabel": "string",      "createdAt": "2019-08-24T14:15:22Z",      "updatedAt": "2019-08-24T14:15:22Z"    }  ]}
POST/api/v1/experiments/{id}/workbook/upgrade

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/workbook/upgrade"
{  "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",  "workbookVersionId": "4d884985-5ac3-4007-8e9b-7b1d17fd2860",  "version": 0}
POST/api/v1/experiments/{id}/workbook/version

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/workbook/version" \  -H "Content-Type: application/json" \  -d '{    "versionId": "14707576-2549-4848-82ed-f68f8a1b47c7"  }'
{  "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",  "workbookVersionId": "4d884985-5ac3-4007-8e9b-7b1d17fd2860",  "version": 0}
GET/api/v1/experiments/{id}/dashboards

Path Parameters

id*string

ID of the experiment

Formatuuid

Query Parameters

limit?integer
Range0 <= value <= 100
Default50
offset?integer
Range0 <= value
Default0

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/dashboards"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",    "name": "string",    "description": "string",    "layout": {      "columns": 12,      "rowHeight": 80,      "gap": 16    },    "widgets": [      {        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",        "layout": {          "col": 0,          "row": 0,          "colSpan": 1,          "rowSpan": 1        },        "type": "visualization",        "config": {          "visualizationId": "f1fb5e6b-e1a9-4239-a299-7daa4bf3992d",          "showTitle": true,          "showDescription": false,          "title": "string",          "description": "string"        }      }    ],    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "createdByName": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/experiments/{id}/dashboards

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/dashboards" \  -H "Content-Type: application/json" \  -d '{    "name": "string"  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "name": "string",  "description": "string",  "layout": {    "columns": 12,    "rowHeight": 80,    "gap": 16  },  "widgets": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "layout": {        "col": 0,        "row": 0,        "colSpan": 1,        "rowSpan": 1      },      "type": "visualization",      "config": {        "visualizationId": "f1fb5e6b-e1a9-4239-a299-7daa4bf3992d",        "showTitle": true,        "showDescription": false,        "title": "string",        "description": "string"      }    }  ],  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
GET/api/v1/experiments/{id}/dashboards/{dashboardId}

Path Parameters

id*string

ID of the experiment

Formatuuid
dashboardId*string

ID of the dashboard

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/dashboards/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "name": "string",  "description": "string",  "layout": {    "columns": 12,    "rowHeight": 80,    "gap": 16  },  "widgets": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "layout": {        "col": 0,        "row": 0,        "colSpan": 1,        "rowSpan": 1      },      "type": "visualization",      "config": {        "visualizationId": "f1fb5e6b-e1a9-4239-a299-7daa4bf3992d",        "showTitle": true,        "showDescription": false,        "title": "string",        "description": "string"      }    }  ],  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
PATCH/api/v1/experiments/{id}/dashboards/{dashboardId}

Path Parameters

id*string

ID of the experiment

Formatuuid
dashboardId*string

ID of the dashboard

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/dashboards/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "name": "string",  "description": "string",  "layout": {    "columns": 12,    "rowHeight": 80,    "gap": 16  },  "widgets": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "layout": {        "col": 0,        "row": 0,        "colSpan": 1,        "rowSpan": 1      },      "type": "visualization",      "config": {        "visualizationId": "f1fb5e6b-e1a9-4239-a299-7daa4bf3992d",        "showTitle": true,        "showDescription": false,        "title": "string",        "description": "string"      }    }  ],  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
DELETE/api/v1/experiments/{id}/dashboards/{dashboardId}

Path Parameters

id*string

ID of the experiment

Formatuuid
dashboardId*string

ID of the dashboard

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/dashboards/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/experiments/{id}/visualizations

Path Parameters

id*string

ID of the experiment

Formatuuid

Query Parameters

chartFamily?string

Value in

  • "basic"
  • "scientific"
  • "3d"
  • "statistical"
limit?integer
Range0 <= value <= 100
Default50
offset?integer
Range0 <= value
Default0

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/visualizations"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "name": "string",    "description": "string",    "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",    "chartFamily": "basic",    "chartType": "line",    "config": {      "property1": null,      "property2": null    },    "dataConfig": {      "tableName": "string",      "dataSources": [        {          "tableName": "string",          "columnName": "string",          "role": "x",          "seriesName": "string",          "alias": "string",          "traceType": "line",          "axis": "primary",          "aggregate": "sum",          "errorColumn": "string"        }      ],      "filters": [        {          "column": "string",          "operator": "equals",          "value": "string"        }      ],      "aggregation": {        "groupBy": [          {            "column": "string",            "timeBucket": "minute"          }        ],        "functions": [          {            "column": "string",            "function": "sum",            "alias": "string",            "secondColumn": "string"          }        ]      }    },    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "createdByName": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/experiments/{id}/visualizations

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/visualizations" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "chartFamily": "basic",    "chartType": "line",    "dataConfig": {      "tableName": "string",      "dataSources": [        {          "tableName": "string",          "columnName": "string",          "role": "x"        }      ]    }  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "chartFamily": "basic",  "chartType": "line",  "config": {    "property1": null,    "property2": null  },  "dataConfig": {    "tableName": "string",    "dataSources": [      {        "tableName": "string",        "columnName": "string",        "role": "x",        "seriesName": "string",        "alias": "string",        "traceType": "line",        "axis": "primary",        "aggregate": "sum",        "errorColumn": "string"      }    ],    "filters": [      {        "column": "string",        "operator": "equals",        "value": "string"      }    ],    "aggregation": {      "groupBy": [        {          "column": "string",          "timeBucket": "minute"        }      ],      "functions": [        {          "column": "string",          "function": "sum",          "alias": "string",          "secondColumn": "string"        }      ]    }  },  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
GET/api/v1/experiments/{id}/visualizations/{visualizationId}

Path Parameters

id*string

ID of the experiment

Formatuuid
visualizationId*string

ID of the visualization

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/visualizations/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "chartFamily": "basic",  "chartType": "line",  "config": {    "property1": null,    "property2": null  },  "dataConfig": {    "tableName": "string",    "dataSources": [      {        "tableName": "string",        "columnName": "string",        "role": "x",        "seriesName": "string",        "alias": "string",        "traceType": "line",        "axis": "primary",        "aggregate": "sum",        "errorColumn": "string"      }    ],    "filters": [      {        "column": "string",        "operator": "equals",        "value": "string"      }    ],    "aggregation": {      "groupBy": [        {          "column": "string",          "timeBucket": "minute"        }      ],      "functions": [        {          "column": "string",          "function": "sum",          "alias": "string",          "secondColumn": "string"        }      ]    }  },  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
PATCH/api/v1/experiments/{id}/visualizations/{visualizationId}

Path Parameters

id*string

ID of the experiment

Formatuuid
visualizationId*string

ID of the visualization

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/visualizations/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "chartFamily": "basic",    "chartType": "line",    "dataConfig": {      "tableName": "string",      "dataSources": [        {          "tableName": "string",          "columnName": "string",          "role": "x"        }      ]    }  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "chartFamily": "basic",  "chartType": "line",  "config": {    "property1": null,    "property2": null  },  "dataConfig": {    "tableName": "string",    "dataSources": [      {        "tableName": "string",        "columnName": "string",        "role": "x",        "seriesName": "string",        "alias": "string",        "traceType": "line",        "axis": "primary",        "aggregate": "sum",        "errorColumn": "string"      }    ],    "filters": [      {        "column": "string",        "operator": "equals",        "value": "string"      }    ],    "aggregation": {      "groupBy": [        {          "column": "string",          "timeBucket": "minute"        }      ],      "functions": [        {          "column": "string",          "function": "sum",          "alias": "string",          "secondColumn": "string"        }      ]    }  },  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
DELETE/api/v1/experiments/{id}/visualizations/{visualizationId}

Path Parameters

id*string

ID of the experiment

Formatuuid
visualizationId*string

ID of the visualization

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/visualizations/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/experiments/{id}/join-requests

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/join-requests"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",    "user": {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "firstName": "string",      "lastName": "string",      "email": "user@example.com",      "avatarUrl": "string"    },    "message": "string",    "status": "pending",    "decidedBy": "3a741861-b09d-4f52-b451-be998c2bf2d1",    "decidedAt": "2019-08-24T14:15:22Z",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/experiments/{id}/join-requests

Path Parameters

id*string

ID of the experiment

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/join-requests" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "user": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "firstName": "string",    "lastName": "string",    "email": "user@example.com",    "avatarUrl": "string"  },  "message": "string",  "status": "pending",  "decidedBy": "3a741861-b09d-4f52-b451-be998c2bf2d1",  "decidedAt": "2019-08-24T14:15:22Z",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
GET/api/v1/experiments/{id}/join-requests/me

Path Parameters

id*string

ID of the experiment

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/join-requests/me"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "user": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "firstName": "string",    "lastName": "string",    "email": "user@example.com",    "avatarUrl": "string"  },  "message": "string",  "status": "pending",  "decidedBy": "3a741861-b09d-4f52-b451-be998c2bf2d1",  "decidedAt": "2019-08-24T14:15:22Z",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
POST/api/v1/experiments/{id}/join-requests/{requestId}/approve

Path Parameters

id*string

ID of the experiment

Formatuuid
requestId*string

ID of the join request

Formatuuid

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/join-requests/497f6eca-6276-4993-bfeb-53cbbbba6f08/approve"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "user": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "firstName": "string",    "lastName": "string",    "email": "user@example.com",    "avatarUrl": "string"  },  "message": "string",  "status": "pending",  "decidedBy": "3a741861-b09d-4f52-b451-be998c2bf2d1",  "decidedAt": "2019-08-24T14:15:22Z",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
POST/api/v1/experiments/{id}/join-requests/{requestId}/reject

Path Parameters

id*string

ID of the experiment

Formatuuid
requestId*string

ID of the join request

Formatuuid

Response Body

application/json

curl -X POST "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/join-requests/497f6eca-6276-4993-bfeb-53cbbbba6f08/reject"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "user": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "firstName": "string",    "lastName": "string",    "email": "user@example.com",    "avatarUrl": "string"  },  "message": "string",  "status": "pending",  "decidedBy": "3a741861-b09d-4f52-b451-be998c2bf2d1",  "decidedAt": "2019-08-24T14:15:22Z",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
DELETE/api/v1/experiments/{id}/join-requests/{requestId}

Path Parameters

id*string

ID of the experiment

Formatuuid
requestId*string

ID of the join request

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/experiments/497f6eca-6276-4993-bfeb-53cbbbba6f08/join-requests/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/transfer-requests

Response Body

application/json

curl -X GET "https://example.com/api/v1/transfer-requests"
[  {    "requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6",    "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b",    "userEmail": "user@example.com",    "sourcePlatform": "string",    "projectIdOld": "string",    "projectUrlOld": "http://example.com",    "status": "pending",    "requestedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/transfer-requests

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/transfer-requests" \  -H "Content-Type: application/json" \  -d '{    "projectIdOld": "string",    "projectUrlOld": "http://example.com"  }'
{  "requestId": "d385ab22-0f51-4b97-9ecd-b8ff3fd4fcb6",  "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b",  "userEmail": "user@example.com",  "sourcePlatform": "string",  "projectIdOld": "string",  "projectUrlOld": "http://example.com",  "status": "pending",  "requestedAt": "2019-08-24T14:15:22Z"}
POST/api/v1/webhooks/project-transfer

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/webhooks/project-transfer" \  -H "Content-Type: application/json" \  -d '{    "experiment": {      "name": "string",      "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e"    }  }'
{  "success": true,  "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006",  "protocolId": "145fbbc7-5125-4cc4-be15-11cd04d84fa0",  "macroId": "ec059dca-f11f-4b38-b136-ad49d8b47afe",  "macroFilename": "string",  "macroName": "string",  "flowId": "ccd52024-9c9c-4751-993a-9d75a778bf9d",  "message": "string"}
GET/health/time

Response Body

application/json

curl -X GET "https://example.com/health/time"
{  "utcTimestampMs": 0,  "utcTimestampSec": 0,  "iso": "string"}
GET/api/v1/iot/credentials

Response Body

application/json

curl -X GET "https://example.com/api/v1/iot/credentials"
{  "accessKeyId": "string",  "secretAccessKey": "string",  "sessionToken": "string",  "expiration": "2019-08-24T14:15:22Z"}
POST/api/v1/iot/upload-url

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/iot/upload-url" \  -H "Content-Type: application/json" \  -d '{    "experimentId": "7cb83992-f615-4081-9f22-54e0b618e006"  }'
{  "uploadUrl": "http://example.com",  "key": "string",  "expiresAt": "2019-08-24T14:15:22Z"}
POST/api/v1/iot/devices/registry

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/iot/devices/registry" \  -H "Content-Type: application/json" \  -d '{    "thingNames": [      "string"    ]  }'
{  "devices": [    {      "thingName": "string",      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "serialNumber": "string",      "deviceType": "multispeq",      "status": "pending",      "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e"    }  ],  "success": true}
GET/api/v1/devices

Response Body

application/json

curl -X GET "https://example.com/api/v1/devices"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "thingName": "string",    "thingArn": "string",    "serialNumber": "string",    "name": "string",    "deviceType": "multispeq",    "status": "pending",    "certificateId": "string",    "certificateArn": "string",    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/devices

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/devices" \  -H "Content-Type: application/json" \  -d '{    "serialNumber": "string",    "deviceType": "multispeq"  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "thingName": "string",  "thingArn": "string",  "serialNumber": "string",  "name": "string",  "deviceType": "multispeq",  "status": "pending",  "certificateId": "string",  "certificateArn": "string",  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
GET/api/v1/devices/{deviceId}

Path Parameters

deviceId*string

ID of the device

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/devices/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "thingName": "string",  "thingArn": "string",  "serialNumber": "string",  "name": "string",  "deviceType": "multispeq",  "status": "pending",  "certificateId": "string",  "certificateArn": "string",  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
DELETE/api/v1/devices/{deviceId}

Path Parameters

deviceId*string

ID of the device

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/devices/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
POST/api/v1/devices/{deviceId}/credentials

Path Parameters

deviceId*string

ID of the device

Formatuuid

Response Body

application/json

curl -X POST "https://example.com/api/v1/devices/497f6eca-6276-4993-bfeb-53cbbbba6f08/credentials"
{  "certificateId": "string",  "certificateArn": "string",  "certificatePem": "string",  "publicKey": "string",  "privateKey": "string"}
DELETE/api/v1/devices/{deviceId}/credentials

Path Parameters

deviceId*string

ID of the device

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/devices/497f6eca-6276-4993-bfeb-53cbbbba6f08/credentials"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "thingName": "string",  "thingArn": "string",  "serialNumber": "string",  "name": "string",  "deviceType": "multispeq",  "status": "pending",  "certificateId": "string",  "certificateArn": "string",  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
POST/api/v1/devices/{deviceId}/credentials/rotate

Path Parameters

deviceId*string

ID of the device

Formatuuid

Response Body

application/json

curl -X POST "https://example.com/api/v1/devices/497f6eca-6276-4993-bfeb-53cbbbba6f08/credentials/rotate"
{  "certificateId": "string",  "certificateArn": "string",  "certificatePem": "string",  "publicKey": "string",  "privateKey": "string"}
GET/api/v1/macros

Query Parameters

search?string
language?string

Value in

  • "python"
  • "r"
  • "javascript"
filter?"my"

Value in

  • "my"

Response Body

application/json

curl -X GET "https://example.com/api/v1/macros"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "name": "string",    "filename": "string",    "description": "string",    "language": "python",    "code": "string",    "sortOrder": 0,    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "createdByName": "string",    "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/macros

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/macros" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "language": "python",    "code": "string"  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "filename": "string",  "description": "string",  "language": "python",  "code": "string",  "sortOrder": 0,  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
GET/api/v1/macros/{id}

Path Parameters

id*string
Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/macros/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "filename": "string",  "description": "string",  "language": "python",  "code": "string",  "sortOrder": 0,  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
PUT/api/v1/macros/{id}

Path Parameters

id*string
Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PUT "https://example.com/api/v1/macros/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "filename": "string",  "description": "string",  "language": "python",  "code": "string",  "sortOrder": 0,  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
DELETE/api/v1/macros/{id}

Path Parameters

id*string
Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/macros/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/macros/{id}/protocols

Path Parameters

id*string
Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/macros/497f6eca-6276-4993-bfeb-53cbbbba6f08/protocols"
[  {    "macroId": "ec059dca-f11f-4b38-b136-ad49d8b47afe",    "protocol": {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "family": "string",      "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e"    },    "addedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/macros/{id}/protocols

Path Parameters

id*string
Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/macros/497f6eca-6276-4993-bfeb-53cbbbba6f08/protocols" \  -H "Content-Type: application/json" \  -d '{    "protocolIds": [      "10268364-9429-4b52-90a7-984af446e0a9"    ]  }'
[  {    "macroId": "ec059dca-f11f-4b38-b136-ad49d8b47afe",    "protocol": {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "family": "string",      "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e"    },    "addedAt": "2019-08-24T14:15:22Z"  }]
DELETE/api/v1/macros/{id}/protocols/{protocolId}

Path Parameters

id*string
Formatuuid
protocolId*string
Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/macros/497f6eca-6276-4993-bfeb-53cbbbba6f08/protocols/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
POST/api/v1/macros/{id}/execute

Path Parameters

id*string
Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/macros/497f6eca-6276-4993-bfeb-53cbbbba6f08/execute" \  -H "Content-Type: application/json" \  -d '{    "data": {      "property1": null,      "property2": null    }  }'
{  "macro_id": "058c5644-6d89-4487-8893-fd8d698da202",  "success": true,  "output": {    "property1": null,    "property2": null  },  "error": "string"}
POST/api/v1/macros/execute-batch

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/macros/execute-batch" \  -H "Content-Type: application/json" \  -d '{    "items": [      {        "id": "string",        "macro_id": "058c5644-6d89-4487-8893-fd8d698da202",        "data": {          "property1": null,          "property2": null        }      }    ]  }'
{  "success": true,  "results": [    {      "id": "string",      "macro_id": "string",      "success": true,      "output": {        "property1": null,        "property2": null      },      "error": "string"    }  ],  "errors": [    "string"  ]}
POST/api/v1/newsletter/subscribe

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/newsletter/subscribe" \  -H "Content-Type: application/json" \  -d '{    "email": "user@example.com"  }'
{  "success": true}
GET/api/v1/newsletter/status

Response Body

application/json

curl -X GET "https://example.com/api/v1/newsletter/status"
{  "status": "subscribed"}
POST/api/v1/newsletter/subscription

Response Body

application/json

curl -X POST "https://example.com/api/v1/newsletter/subscription"
{  "status": "subscribed"}
DELETE/api/v1/newsletter/subscription

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/newsletter/subscription"
{  "status": "subscribed"}
GET/api/v1/protocols

Query Parameters

search?string
filter?"my"

Value in

  • "my"

Response Body

application/json

curl -X GET "https://example.com/api/v1/protocols"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "name": "string",    "description": "string",    "code": [      {        "property1": null,        "property2": null      }    ],    "family": "multispeq",    "sortOrder": 0,    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "createdByName": "string",    "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/protocols

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/protocols" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "code": [      {        "property1": null,        "property2": null      }    ],    "family": "multispeq"  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "code": [    {      "property1": null,      "property2": null    }  ],  "family": "multispeq",  "sortOrder": 0,  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
GET/api/v1/protocols/{id}

Path Parameters

id*string
Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/protocols/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "code": [    {      "property1": null,      "property2": null    }  ],  "family": "multispeq",  "sortOrder": 0,  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
PATCH/api/v1/protocols/{id}

Path Parameters

id*string
Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/v1/protocols/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "code": [    {      "property1": null,      "property2": null    }  ],  "family": "multispeq",  "sortOrder": 0,  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
DELETE/api/v1/protocols/{id}

Path Parameters

id*string
Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/protocols/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/protocols/{id}/macros

Path Parameters

id*string
Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/protocols/497f6eca-6276-4993-bfeb-53cbbbba6f08/macros"
[  {    "protocolId": "145fbbc7-5125-4cc4-be15-11cd04d84fa0",    "macro": {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "filename": "string",      "language": "python",      "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e"    },    "addedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/protocols/{id}/macros

Path Parameters

id*string
Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/protocols/497f6eca-6276-4993-bfeb-53cbbbba6f08/macros" \  -H "Content-Type: application/json" \  -d '{    "macroIds": [      "d77edf99-d72c-47c3-a802-2f35a6dc55a7"    ]  }'
[  {    "protocolId": "145fbbc7-5125-4cc4-be15-11cd04d84fa0",    "macro": {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "filename": "string",      "language": "python",      "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e"    },    "addedAt": "2019-08-24T14:15:22Z"  }]
DELETE/api/v1/protocols/{id}/macros/{macroId}

Path Parameters

id*string
Formatuuid
macroId*string
Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/protocols/497f6eca-6276-4993-bfeb-53cbbbba6f08/macros/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/search

Query Parameters

query*string

Search term

Length1 <= length <= 200
limit?integer
Range1 <= value <= 32
Default20

Response Body

application/json

curl -X GET "https://example.com/api/v1/search?query=string"
{  "results": [    {      "type": "experiment",      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "title": "string",      "subtitle": "string",      "meta": "string"    }  ]}
GET/api/v1/users/search

Query Parameters

query?string

Search query for name or email

limit?integer

Maximum number of users to return

Range1 <= value <= 100
Default50
offset?integer

Number of users to skip for pagination

Range0 <= value
Default0

Response Body

application/json

curl -X GET "https://example.com/api/v1/users/search"
[  {    "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b",    "firstName": "string",    "lastName": "string",    "bio": "string",    "activated": true,    "email": "user@example.com",    "avatarUrl": "string"  }]
GET/api/v1/users/{id}

Path Parameters

id*string

ID of the user

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/users/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "email": "user@example.com",  "emailVerified": true,  "image": "string",  "createdAt": "2019-08-24T14:15:22Z",  "registered": true}
DELETE/api/v1/users/{id}

Path Parameters

id*string

ID of the user

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/users/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
POST/api/v1/users/profile

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/users/profile" \  -H "Content-Type: application/json" \  -d '{    "firstName": "string",    "lastName": "string"  }'
{}
GET/api/v1/users/{id}/profile

Path Parameters

id*string

ID of the user

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/users/497f6eca-6276-4993-bfeb-53cbbbba6f08/profile"
{  "firstName": "string",  "lastName": "string",  "bio": "string",  "activated": true,  "avatarUrl": "string"}
GET/api/v1/users/{id}/deletion-blockers

Path Parameters

id*string

ID of the user

Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/users/497f6eca-6276-4993-bfeb-53cbbbba6f08/deletion-blockers"
{  "experiments": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "status": "active",      "candidates": [        {          "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b",          "firstName": "string",          "lastName": "string",          "avatarUrl": "string"        }      ]    }  ]}
POST/api/v1/users/metadata

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/users/metadata" \  -H "Content-Type: application/json" \  -d '{    "userIds": [      "string"    ]  }'
{  "users": [    {      "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b",      "firstName": "string",      "lastName": "string",      "avatarUrl": "string"    }  ],  "success": true}
GET/api/v1/invitations

Query Parameters

resourceType*string

Value in

  • "platform"
  • "experiment"
resourceId*string
Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/invitations?resourceType=platform&resourceId=497f6eca-6276-4993-bfeb-53cbbbba6f08"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "resourceType": "platform",    "resourceId": "026d60bb-63a8-407e-bf67-01dcfc6022e6",    "email": "user@example.com",    "role": "string",    "status": "pending",    "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",    "invitedByName": "string",    "resourceName": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }]
POST/api/v1/invitations

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/invitations" \  -H "Content-Type: application/json" \  -d '{    "resourceType": "platform",    "resourceId": "026d60bb-63a8-407e-bf67-01dcfc6022e6",    "email": "user@example.com"  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "resourceType": "platform",  "resourceId": "026d60bb-63a8-407e-bf67-01dcfc6022e6",  "email": "user@example.com",  "role": "string",  "status": "pending",  "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",  "invitedByName": "string",  "resourceName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
PATCH/api/v1/invitations/{invitationId}

Path Parameters

invitationId*string

ID of the invitation

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/v1/invitations/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{    "role": "admin"  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "resourceType": "platform",  "resourceId": "026d60bb-63a8-407e-bf67-01dcfc6022e6",  "email": "user@example.com",  "role": "string",  "status": "pending",  "invitedBy": "9803bd85-1570-4d91-99f5-3a4d18ccfff0",  "invitedByName": "string",  "resourceName": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}
DELETE/api/v1/invitations/{invitationId}

Path Parameters

invitationId*string

ID of the invitation

Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/invitations/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/whats-new/seen

Response Body

application/json

curl -X GET "https://example.com/api/v1/whats-new/seen"
{  "lastSeenAt": "2019-08-24T14:15:22Z"}
POST/api/v1/whats-new/seen

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/whats-new/seen" \  -H "Content-Type: application/json" \  -d '{}'
{  "lastSeenAt": "2019-08-24T14:15:22Z"}
GET/api/v1/workbooks

Query Parameters

search?string
filter?"my"

Value in

  • "my"

Response Body

application/json

curl -X GET "https://example.com/api/v1/workbooks"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "name": "string",    "description": "string",    "cells": [      {        "id": "string",        "isCollapsed": false,        "type": "protocol",        "payload": {          "protocolId": "145fbbc7-5125-4cc4-be15-11cd04d84fa0",          "version": 0,          "name": "string"        }      }    ],    "metadata": {      "property1": null,      "property2": null    },    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "createdByName": "string",    "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z",    "isUpgradable": true,    "experimentCount": 0  }]
POST/api/v1/workbooks

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/workbooks" \  -H "Content-Type: application/json" \  -d '{    "name": "string"  }'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "cells": [    {      "id": "string",      "isCollapsed": false,      "type": "protocol",      "payload": {        "protocolId": "145fbbc7-5125-4cc4-be15-11cd04d84fa0",        "version": 0,        "name": "string"      }    }  ],  "metadata": {    "property1": null,    "property2": null  },  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "isUpgradable": true,  "experimentCount": 0}
GET/api/v1/workbooks/{id}

Path Parameters

id*string
Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/workbooks/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "cells": [    {      "id": "string",      "isCollapsed": false,      "type": "protocol",      "payload": {        "protocolId": "145fbbc7-5125-4cc4-be15-11cd04d84fa0",        "version": 0,        "name": "string"      }    }  ],  "metadata": {    "property1": null,    "property2": null  },  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "isUpgradable": true,  "experimentCount": 0}
PATCH/api/v1/workbooks/{id}

Path Parameters

id*string
Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X PATCH "https://example.com/api/v1/workbooks/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "description": "string",  "cells": [    {      "id": "string",      "isCollapsed": false,      "type": "protocol",      "payload": {        "protocolId": "145fbbc7-5125-4cc4-be15-11cd04d84fa0",        "version": 0,        "name": "string"      }    }  ],  "metadata": {    "property1": null,    "property2": null  },  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",  "createdByName": "string",  "forkedFrom": "3cd955ca-297d-4a34-9683-e3644d517064",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "isUpgradable": true,  "experimentCount": 0}
DELETE/api/v1/workbooks/{id}

Path Parameters

id*string
Formatuuid

Response Body

application/json

curl -X DELETE "https://example.com/api/v1/workbooks/497f6eca-6276-4993-bfeb-53cbbbba6f08"
null
GET/api/v1/workbooks/{id}/versions

Path Parameters

id*string
Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/workbooks/497f6eca-6276-4993-bfeb-53cbbbba6f08/versions"
[  {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",    "version": 0,    "createdAt": "2019-08-24T14:15:22Z",    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e"  }]
GET/api/v1/workbooks/{id}/versions/{versionId}

Path Parameters

id*string
Formatuuid
versionId*string
Formatuuid

Response Body

application/json

curl -X GET "https://example.com/api/v1/workbooks/497f6eca-6276-4993-bfeb-53cbbbba6f08/versions/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "workbookId": "e672ad0a-540a-4be9-9b09-cd316e2c706c",  "version": 0,  "cells": [    {      "id": "string",      "isCollapsed": false,      "type": "protocol",      "payload": {        "protocolId": "145fbbc7-5125-4cc4-be15-11cd04d84fa0",        "version": 0,        "name": "string"      }    }  ],  "metadata": {    "property1": null,    "property2": null  },  "entitySnapshots": {    "protocols": {      "property1": {        "code": null,        "family": "multispeq"      },      "property2": {        "code": null,        "family": "multispeq"      }    },    "macros": {      "property1": {        "code": "string"      },      "property2": {        "code": "string"      }    }  },  "createdAt": "2019-08-24T14:15:22Z",  "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e"}