Monoid API Reference

Welcome to the Monoid GraphQL API!

Contact

API Support

support@monoid.co

Terms of Service

https://www.monoid.co/terms

API Endpoints
# Production:
https://app.monoid.co/query
Headers
# Get your API key on your dashboard at https://app.monoid.co.
Authorization: Bearer <YOUR_TOKEN_HERE>

Queries

category

Response

Returns a Category!

Arguments
Name Description
id - ID!

Example

Query
query category($id: ID!) {
  category(id: $id) {
    id
    name
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "category": {
      "id": "4",
      "name": "xyz789"
    }
  }
}

dataSource

Response

Returns a DataSource!

Arguments
Name Description
id - ID!

Example

Query
query dataSource($id: ID!) {
  dataSource(id: $id) {
    id
    name
    group
    siloDefinition {
      ...SiloDefinitionFragment
    }
    properties {
      ...PropertyFragment
    }
    description
    deleted
    requestStatuses {
      ...RequestStatusFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "dataSource": {
      "id": 4,
      "name": "abc123",
      "group": "abc123",
      "siloDefinition": SiloDefinition,
      "properties": [Property],
      "description": "abc123",
      "deleted": false,
      "requestStatuses": [RequestStatus]
    }
  }
}

primaryKeyValue

Response

Returns a PrimaryKeyValue!

Arguments
Name Description
id - ID!

Example

Query
query primaryKeyValue($id: ID!) {
  primaryKeyValue(id: $id) {
    id
    userPrimaryKey {
      ...UserPrimaryKeyFragment
    }
    request {
      ...RequestFragment
    }
    value
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "primaryKeyValue": {
      "id": 4,
      "userPrimaryKey": UserPrimaryKey,
      "request": Request,
      "value": "abc123"
    }
  }
}

property

Response

Returns a Property!

Arguments
Name Description
id - ID!

Example

Query
query property($id: ID!) {
  property(id: $id) {
    id
    name
    categories {
      ...CategoryFragment
    }
    dataSource {
      ...DataSourceFragment
    }
    userPrimaryKey {
      ...UserPrimaryKeyFragment
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "property": {
      "id": 4,
      "name": "xyz789",
      "categories": [Category],
      "dataSource": DataSource,
      "userPrimaryKey": UserPrimaryKey
    }
  }
}

request

Response

Returns a Request!

Arguments
Name Description
id - ID!

Example

Query
query request($id: ID!) {
  request(id: $id) {
    id
    primaryKeyValues {
      ...PrimaryKeyValueFragment
    }
    requestStatuses {
      ...RequestStatusListResultFragment
    }
    type
    status
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "request": {
      "id": 4,
      "primaryKeyValues": [PrimaryKeyValue],
      "requestStatuses": RequestStatusListResult,
      "type": "DELETE",
      "status": "CREATED",
      "createdAt": "10:15:30Z"
    }
  }
}

requestStatus

Response

Returns a RequestStatus!

Arguments
Name Description
id - ID!

Example

Query
query requestStatus($id: ID!) {
  requestStatus(id: $id) {
    id
    request {
      ...RequestFragment
    }
    dataSource {
      ...DataSourceFragment
    }
    status
    queryResult {
      ...QueryResultFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "requestStatus": {
      "id": "4",
      "request": Request,
      "dataSource": DataSource,
      "status": "CREATED",
      "queryResult": QueryResult
    }
  }
}

siloDefinition

Response

Returns a SiloDefinition!

Arguments
Name Description
id - ID!

Example

Query
query siloDefinition($id: ID!) {
  siloDefinition(id: $id) {
    discoveries {
      ...DataDiscoveriesListResultFragment
    }
    id
    name
    description
    siloSpecification {
      ...SiloSpecificationFragment
    }
    dataSources {
      ...DataSourceFragment
    }
    subjects {
      ...SubjectFragment
    }
    siloConfig
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "siloDefinition": {
      "discoveries": DataDiscoveriesListResult,
      "id": 4,
      "name": "abc123",
      "description": "xyz789",
      "siloSpecification": SiloSpecification,
      "dataSources": [DataSource],
      "subjects": [Subject],
      "siloConfig": Map
    }
  }
}

siloSpecification

Response

Returns a SiloSpecification!

Arguments
Name Description
id - ID!

Example

Query
query siloSpecification($id: ID!) {
  siloSpecification(id: $id) {
    id
    name
    logoUrl
    logo
    dockerImage
    schema
    manual
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "siloSpecification": {
      "id": "4",
      "name": "xyz789",
      "logoUrl": "abc123",
      "logo": "xyz789",
      "dockerImage": "abc123",
      "schema": "abc123",
      "manual": false
    }
  }
}

subject

Response

Returns a Subject!

Arguments
Name Description
id - ID!

Example

Query
query subject($id: ID!) {
  subject(id: $id) {
    id
    name
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "subject": {
      "id": "4",
      "name": "abc123"
    }
  }
}

userPrimaryKey

Response

Returns a UserPrimaryKey!

Arguments
Name Description
id - ID!

Example

Query
query userPrimaryKey($id: ID!) {
  userPrimaryKey(id: $id) {
    id
    workspaceId
    name
    apiIdentifier
    properties {
      ...PropertyFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "userPrimaryKey": {
      "id": 4,
      "workspaceId": "4",
      "name": "abc123",
      "apiIdentifier": "xyz789",
      "properties": [Property]
    }
  }
}

workspace

Response

Returns a Workspace!

Arguments
Name Description
id - ID!

Example

Query
query workspace($id: ID!) {
  workspace(id: $id) {
    id
    name
    onboardingComplete
    settings
    siloSpecifications {
      ...SiloSpecificationFragment
    }
    subjects {
      ...SubjectFragment
    }
    categories {
      ...CategoryFragment
    }
    dataMap {
      ...DataMapResultFragment
    }
    discoveries {
      ...DataDiscoveriesListResultFragment
    }
    jobs {
      ...JobsResultFragment
    }
    job {
      ...JobFragment
    }
    requests {
      ...RequestsResultFragment
    }
    userPrimaryKeys {
      ...UserPrimaryKeyFragment
    }
    siloDefinitions {
      ...SiloDefinitionFragment
    }
    team {
      ...TeamResultFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "workspace": {
      "id": "4",
      "name": "xyz789",
      "onboardingComplete": true,
      "settings": Map,
      "siloSpecifications": [SiloSpecification],
      "subjects": [Subject],
      "categories": [Category],
      "dataMap": DataMapResult,
      "discoveries": DataDiscoveriesListResult,
      "jobs": JobsResult,
      "job": Job,
      "requests": RequestsResult,
      "userPrimaryKeys": [UserPrimaryKey],
      "siloDefinitions": [SiloDefinition],
      "team": TeamResult
    }
  }
}

workspaces

Response

Returns [Workspace]!

Example

Query
query workspaces {
  workspaces {
    id
    name
    onboardingComplete
    settings
    siloSpecifications {
      ...SiloSpecificationFragment
    }
    subjects {
      ...SubjectFragment
    }
    categories {
      ...CategoryFragment
    }
    dataMap {
      ...DataMapResultFragment
    }
    discoveries {
      ...DataDiscoveriesListResultFragment
    }
    jobs {
      ...JobsResultFragment
    }
    job {
      ...JobFragment
    }
    requests {
      ...RequestsResultFragment
    }
    userPrimaryKeys {
      ...UserPrimaryKeyFragment
    }
    siloDefinitions {
      ...SiloDefinitionFragment
    }
    team {
      ...TeamResultFragment
    }
  }
}
Response
{
  "data": {
    "workspaces": [
      {
        "id": "4",
        "name": "xyz789",
        "onboardingComplete": true,
        "settings": Map,
        "siloSpecifications": [SiloSpecification],
        "subjects": [Subject],
        "categories": [Category],
        "dataMap": DataMapResult,
        "discoveries": DataDiscoveriesListResult,
        "jobs": JobsResult,
        "job": Job,
        "requests": RequestsResult,
        "userPrimaryKeys": [UserPrimaryKey],
        "siloDefinitions": [SiloDefinition],
        "team": TeamResult
      }
    ]
  }
}

Mutations

cancelJob

Response

Returns a Job

Arguments
Name Description
id - ID!

Example

Query
mutation cancelJob($id: ID!) {
  cancelJob(id: $id) {
    id
    jobType
    resourceId
    status
    siloDefinition {
      ...SiloDefinitionFragment
    }
    logs
    createdAt
    updatedAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "cancelJob": {
      "id": "4",
      "jobType": "abc123",
      "resourceId": "4",
      "status": "QUEUED",
      "siloDefinition": SiloDefinition,
      "logs": ["abc123"],
      "createdAt": "10:15:30Z",
      "updatedAt": "10:15:30Z"
    }
  }
}

completeWorkspaceOnboarding

Response

Returns a Workspace!

Arguments
Name Description
id - ID!

Example

Query
mutation completeWorkspaceOnboarding($id: ID!) {
  completeWorkspaceOnboarding(id: $id) {
    id
    name
    onboardingComplete
    settings
    siloSpecifications {
      ...SiloSpecificationFragment
    }
    subjects {
      ...SubjectFragment
    }
    categories {
      ...CategoryFragment
    }
    dataMap {
      ...DataMapResultFragment
    }
    discoveries {
      ...DataDiscoveriesListResultFragment
    }
    jobs {
      ...JobsResultFragment
    }
    job {
      ...JobFragment
    }
    requests {
      ...RequestsResultFragment
    }
    userPrimaryKeys {
      ...UserPrimaryKeyFragment
    }
    siloDefinitions {
      ...SiloDefinitionFragment
    }
    team {
      ...TeamResultFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "completeWorkspaceOnboarding": {
      "id": "4",
      "name": "xyz789",
      "onboardingComplete": false,
      "settings": Map,
      "siloSpecifications": [SiloSpecification],
      "subjects": [Subject],
      "categories": [Category],
      "dataMap": DataMapResult,
      "discoveries": DataDiscoveriesListResult,
      "jobs": JobsResult,
      "job": Job,
      "requests": RequestsResult,
      "userPrimaryKeys": [UserPrimaryKey],
      "siloDefinitions": [SiloDefinition],
      "team": TeamResult
    }
  }
}

createDataSource

Response

Returns a DataSource!

Arguments
Name Description
input - CreateDataSourceInput!

Example

Query
mutation createDataSource($input: CreateDataSourceInput!) {
  createDataSource(input: $input) {
    id
    name
    group
    siloDefinition {
      ...SiloDefinitionFragment
    }
    properties {
      ...PropertyFragment
    }
    description
    deleted
    requestStatuses {
      ...RequestStatusFragment
    }
  }
}
Variables
{"input": CreateDataSourceInput}
Response
{
  "data": {
    "createDataSource": {
      "id": 4,
      "name": "abc123",
      "group": "xyz789",
      "siloDefinition": SiloDefinition,
      "properties": [Property],
      "description": "abc123",
      "deleted": false,
      "requestStatuses": [RequestStatus]
    }
  }
}

createProperty

Response

Returns a Property

Arguments
Name Description
input - CreatePropertyInput

Example

Query
mutation createProperty($input: CreatePropertyInput) {
  createProperty(input: $input) {
    id
    name
    categories {
      ...CategoryFragment
    }
    dataSource {
      ...DataSourceFragment
    }
    userPrimaryKey {
      ...UserPrimaryKeyFragment
    }
  }
}
Variables
{"input": CreatePropertyInput}
Response
{
  "data": {
    "createProperty": {
      "id": "4",
      "name": "abc123",
      "categories": [Category],
      "dataSource": DataSource,
      "userPrimaryKey": UserPrimaryKey
    }
  }
}

createSiloDefinition

Response

Returns a SiloDefinition!

Arguments
Name Description
input - CreateSiloDefinitionInput

Example

Query
mutation createSiloDefinition($input: CreateSiloDefinitionInput) {
  createSiloDefinition(input: $input) {
    discoveries {
      ...DataDiscoveriesListResultFragment
    }
    id
    name
    description
    siloSpecification {
      ...SiloSpecificationFragment
    }
    dataSources {
      ...DataSourceFragment
    }
    subjects {
      ...SubjectFragment
    }
    siloConfig
  }
}
Variables
{"input": CreateSiloDefinitionInput}
Response
{
  "data": {
    "createSiloDefinition": {
      "discoveries": DataDiscoveriesListResult,
      "id": 4,
      "name": "abc123",
      "description": "abc123",
      "siloSpecification": SiloSpecification,
      "dataSources": [DataSource],
      "subjects": [Subject],
      "siloConfig": Map
    }
  }
}

createSiloSpecification

Response

Returns a SiloSpecification

Arguments
Name Description
input - CreateSiloSpecificationInput

Example

Query
mutation createSiloSpecification($input: CreateSiloSpecificationInput) {
  createSiloSpecification(input: $input) {
    id
    name
    logoUrl
    logo
    dockerImage
    schema
    manual
  }
}
Variables
{"input": CreateSiloSpecificationInput}
Response
{
  "data": {
    "createSiloSpecification": {
      "id": "4",
      "name": "abc123",
      "logoUrl": "abc123",
      "logo": "xyz789",
      "dockerImage": "xyz789",
      "schema": "xyz789",
      "manual": false
    }
  }
}

createSubject

Response

Returns a Subject

Arguments
Name Description
input - CreateSubjectInput

Example

Query
mutation createSubject($input: CreateSubjectInput) {
  createSubject(input: $input) {
    id
    name
  }
}
Variables
{"input": CreateSubjectInput}
Response
{
  "data": {
    "createSubject": {
      "id": "4",
      "name": "abc123"
    }
  }
}

createUserDataRequest

Response

Returns a Request

Arguments
Name Description
input - UserDataRequestInput

Example

Query
mutation createUserDataRequest($input: UserDataRequestInput) {
  createUserDataRequest(input: $input) {
    id
    primaryKeyValues {
      ...PrimaryKeyValueFragment
    }
    requestStatuses {
      ...RequestStatusListResultFragment
    }
    type
    status
    createdAt
  }
}
Variables
{"input": UserDataRequestInput}
Response
{
  "data": {
    "createUserDataRequest": {
      "id": "4",
      "primaryKeyValues": [PrimaryKeyValue],
      "requestStatuses": RequestStatusListResult,
      "type": "DELETE",
      "status": "CREATED",
      "createdAt": "10:15:30Z"
    }
  }
}

createUserPrimaryKey

Response

Returns a UserPrimaryKey

Arguments
Name Description
input - CreateUserPrimaryKeyInput!

Example

Query
mutation createUserPrimaryKey($input: CreateUserPrimaryKeyInput!) {
  createUserPrimaryKey(input: $input) {
    id
    workspaceId
    name
    apiIdentifier
    properties {
      ...PropertyFragment
    }
  }
}
Variables
{"input": CreateUserPrimaryKeyInput}
Response
{
  "data": {
    "createUserPrimaryKey": {
      "id": "4",
      "workspaceId": "4",
      "name": "abc123",
      "apiIdentifier": "xyz789",
      "properties": [Property]
    }
  }
}

createWorkspace

Response

Returns a Workspace!

Arguments
Name Description
input - CreateWorkspaceInput!

Example

Query
mutation createWorkspace($input: CreateWorkspaceInput!) {
  createWorkspace(input: $input) {
    id
    name
    onboardingComplete
    settings
    siloSpecifications {
      ...SiloSpecificationFragment
    }
    subjects {
      ...SubjectFragment
    }
    categories {
      ...CategoryFragment
    }
    dataMap {
      ...DataMapResultFragment
    }
    discoveries {
      ...DataDiscoveriesListResultFragment
    }
    jobs {
      ...JobsResultFragment
    }
    job {
      ...JobFragment
    }
    requests {
      ...RequestsResultFragment
    }
    userPrimaryKeys {
      ...UserPrimaryKeyFragment
    }
    siloDefinitions {
      ...SiloDefinitionFragment
    }
    team {
      ...TeamResultFragment
    }
  }
}
Variables
{"input": CreateWorkspaceInput}
Response
{
  "data": {
    "createWorkspace": {
      "id": "4",
      "name": "abc123",
      "onboardingComplete": true,
      "settings": Map,
      "siloSpecifications": [SiloSpecification],
      "subjects": [Subject],
      "categories": [Category],
      "dataMap": DataMapResult,
      "discoveries": DataDiscoveriesListResult,
      "jobs": JobsResult,
      "job": Job,
      "requests": RequestsResult,
      "userPrimaryKeys": [UserPrimaryKey],
      "siloDefinitions": [SiloDefinition],
      "team": TeamResult
    }
  }
}

deleteDataSource

Response

Returns an ID

Arguments
Name Description
id - ID!

Example

Query
mutation deleteDataSource($id: ID!) {
  deleteDataSource(id: $id)
}
Variables
{"id": 4}
Response
{"data": {"deleteDataSource": "4"}}

deleteProperty

Response

Returns an ID

Arguments
Name Description
id - ID!

Example

Query
mutation deleteProperty($id: ID!) {
  deleteProperty(id: $id)
}
Variables
{"id": "4"}
Response
{"data": {"deleteProperty": "4"}}

deleteSiloDefinition

Response

Returns an ID!

Arguments
Name Description
id - ID!

Example

Query
mutation deleteSiloDefinition($id: ID!) {
  deleteSiloDefinition(id: $id)
}
Variables
{"id": "4"}
Response
{"data": {"deleteSiloDefinition": 4}}

deleteSiloSpecification

Response

Returns an ID

Arguments
Name Description
id - ID!

Example

Query
mutation deleteSiloSpecification($id: ID!) {
  deleteSiloSpecification(id: $id)
}
Variables
{"id": 4}
Response
{"data": {"deleteSiloSpecification": 4}}

deleteSubject

Response

Returns an ID

Arguments
Name Description
id - ID!

Example

Query
mutation deleteSubject($id: ID!) {
  deleteSubject(id: $id)
}
Variables
{"id": "4"}
Response
{"data": {"deleteSubject": 4}}

deleteUserPrimaryKey

Response

Returns an ID

Arguments
Name Description
id - ID!

Example

Query
mutation deleteUserPrimaryKey($id: ID!) {
  deleteUserPrimaryKey(id: $id)
}
Variables
{"id": 4}
Response
{"data": {"deleteUserPrimaryKey": 4}}

deleteWorkspace

Response

Returns an ID!

Arguments
Name Description
id - ID!

Example

Query
mutation deleteWorkspace($id: ID!) {
  deleteWorkspace(id: $id)
}
Variables
{"id": "4"}
Response
{"data": {"deleteWorkspace": "4"}}

detectSiloSources

Response

Returns a Job!

Arguments
Name Description
workspaceId - ID!
id - ID!

Example

Query
mutation detectSiloSources(
  $workspaceId: ID!,
  $id: ID!
) {
  detectSiloSources(
    workspaceId: $workspaceId,
    id: $id
  ) {
    id
    jobType
    resourceId
    status
    siloDefinition {
      ...SiloDefinitionFragment
    }
    logs
    createdAt
    updatedAt
  }
}
Variables
{"workspaceId": "4", "id": 4}
Response
{
  "data": {
    "detectSiloSources": {
      "id": 4,
      "jobType": "xyz789",
      "resourceId": 4,
      "status": "QUEUED",
      "siloDefinition": SiloDefinition,
      "logs": ["xyz789"],
      "createdAt": "10:15:30Z",
      "updatedAt": "10:15:30Z"
    }
  }
}

executeUserDataRequest

Response

Returns a Request

Arguments
Name Description
requestId - ID!

Example

Query
mutation executeUserDataRequest($requestId: ID!) {
  executeUserDataRequest(requestId: $requestId) {
    id
    primaryKeyValues {
      ...PrimaryKeyValueFragment
    }
    requestStatuses {
      ...RequestStatusListResultFragment
    }
    type
    status
    createdAt
  }
}
Variables
{"requestId": "4"}
Response
{
  "data": {
    "executeUserDataRequest": {
      "id": "4",
      "primaryKeyValues": [PrimaryKeyValue],
      "requestStatuses": RequestStatusListResult,
      "type": "DELETE",
      "status": "CREATED",
      "createdAt": "10:15:30Z"
    }
  }
}

handleAllOpenDiscoveries

Response

Returns [DataDiscovery]

Arguments
Name Description
input - HandleAllDiscoveriesInput

Example

Query
mutation handleAllOpenDiscoveries($input: HandleAllDiscoveriesInput) {
  handleAllOpenDiscoveries(input: $input) {
    id
    siloDefinitionID
    siloDefinition {
      ...SiloDefinitionFragment
    }
    type
    status
    data {
      ... on NewDataSourceDiscovery {
        ...NewDataSourceDiscoveryFragment
      }
      ... on NewPropertyDiscovery {
        ...NewPropertyDiscoveryFragment
      }
      ... on NewCategoryDiscovery {
        ...NewCategoryDiscoveryFragment
      }
      ... on PropertyMissingDiscovery {
        ...PropertyMissingDiscoveryFragment
      }
      ... on DataSourceMissingDiscovery {
        ...DataSourceMissingDiscoveryFragment
      }
    }
    createdAt
  }
}
Variables
{"input": HandleAllDiscoveriesInput}
Response
{
  "data": {
    "handleAllOpenDiscoveries": [
      {
        "id": 4,
        "siloDefinitionID": "4",
        "siloDefinition": SiloDefinition,
        "type": "DATA_SOURCE_MISSING",
        "status": "OPEN",
        "data": NewDataSourceDiscovery,
        "createdAt": "10:15:30Z"
      }
    ]
  }
}

handleDiscovery

Response

Returns a DataDiscovery

Arguments
Name Description
input - HandleDiscoveryInput

Example

Query
mutation handleDiscovery($input: HandleDiscoveryInput) {
  handleDiscovery(input: $input) {
    id
    siloDefinitionID
    siloDefinition {
      ...SiloDefinitionFragment
    }
    type
    status
    data {
      ... on NewDataSourceDiscovery {
        ...NewDataSourceDiscoveryFragment
      }
      ... on NewPropertyDiscovery {
        ...NewPropertyDiscoveryFragment
      }
      ... on NewCategoryDiscovery {
        ...NewCategoryDiscoveryFragment
      }
      ... on PropertyMissingDiscovery {
        ...PropertyMissingDiscoveryFragment
      }
      ... on DataSourceMissingDiscovery {
        ...DataSourceMissingDiscoveryFragment
      }
    }
    createdAt
  }
}
Variables
{"input": HandleDiscoveryInput}
Response
{
  "data": {
    "handleDiscovery": {
      "id": 4,
      "siloDefinitionID": "4",
      "siloDefinition": SiloDefinition,
      "type": "DATA_SOURCE_MISSING",
      "status": "OPEN",
      "data": NewDataSourceDiscovery,
      "createdAt": "10:15:30Z"
    }
  }
}

linkPropertyToPrimaryKey

Response

Returns a Property

Arguments
Name Description
propertyId - ID!
userPrimaryKeyId - ID

Example

Query
mutation linkPropertyToPrimaryKey(
  $propertyId: ID!,
  $userPrimaryKeyId: ID
) {
  linkPropertyToPrimaryKey(
    propertyId: $propertyId,
    userPrimaryKeyId: $userPrimaryKeyId
  ) {
    id
    name
    categories {
      ...CategoryFragment
    }
    dataSource {
      ...DataSourceFragment
    }
    userPrimaryKey {
      ...UserPrimaryKeyFragment
    }
  }
}
Variables
{"propertyId": "4", "userPrimaryKeyId": 4}
Response
{
  "data": {
    "linkPropertyToPrimaryKey": {
      "id": "4",
      "name": "abc123",
      "categories": [Category],
      "dataSource": DataSource,
      "userPrimaryKey": UserPrimaryKey
    }
  }
}

login

Response

Returns an AuthPayload

Arguments
Name Description
input - LoginInput!

Example

Query
mutation login($input: LoginInput!) {
  login(input: $input) {
    token
  }
}
Variables
{"input": LoginInput}
Response
{"data": {"login": {"token": "xyz789"}}}

removeWorkspaceMember

Response

Returns a String!

Arguments
Name Description
workspaceId - ID!
userId - ID!

Example

Query
mutation removeWorkspaceMember(
  $workspaceId: ID!,
  $userId: ID!
) {
  removeWorkspaceMember(
    workspaceId: $workspaceId,
    userId: $userId
  )
}
Variables
{"workspaceId": 4, "userId": "4"}
Response
{
  "data": {
    "removeWorkspaceMember": "abc123"
  }
}

signUp

Response

Returns an AuthPayload

Arguments
Name Description
input - SignUpInput!

Example

Query
mutation signUp($input: SignUpInput!) {
  signUp(input: $input) {
    token
  }
}
Variables
{"input": SignUpInput}
Response
{"data": {"signUp": {"token": "xyz789"}}}

updateDataSource

Response

Returns a DataSource

Arguments
Name Description
input - UpdateDataSourceInput

Example

Query
mutation updateDataSource($input: UpdateDataSourceInput) {
  updateDataSource(input: $input) {
    id
    name
    group
    siloDefinition {
      ...SiloDefinitionFragment
    }
    properties {
      ...PropertyFragment
    }
    description
    deleted
    requestStatuses {
      ...RequestStatusFragment
    }
  }
}
Variables
{"input": UpdateDataSourceInput}
Response
{
  "data": {
    "updateDataSource": {
      "id": "4",
      "name": "abc123",
      "group": "abc123",
      "siloDefinition": SiloDefinition,
      "properties": [Property],
      "description": "abc123",
      "deleted": false,
      "requestStatuses": [RequestStatus]
    }
  }
}

updateProperty

Response

Returns a Property

Arguments
Name Description
input - UpdatePropertyInput

Example

Query
mutation updateProperty($input: UpdatePropertyInput) {
  updateProperty(input: $input) {
    id
    name
    categories {
      ...CategoryFragment
    }
    dataSource {
      ...DataSourceFragment
    }
    userPrimaryKey {
      ...UserPrimaryKeyFragment
    }
  }
}
Variables
{"input": UpdatePropertyInput}
Response
{
  "data": {
    "updateProperty": {
      "id": "4",
      "name": "abc123",
      "categories": [Category],
      "dataSource": DataSource,
      "userPrimaryKey": UserPrimaryKey
    }
  }
}

updateRequestStatus

Response

Returns a RequestStatus!

Arguments
Name Description
input - UpdateRequestStatusInput!

Example

Query
mutation updateRequestStatus($input: UpdateRequestStatusInput!) {
  updateRequestStatus(input: $input) {
    id
    request {
      ...RequestFragment
    }
    dataSource {
      ...DataSourceFragment
    }
    status
    queryResult {
      ...QueryResultFragment
    }
  }
}
Variables
{"input": UpdateRequestStatusInput}
Response
{
  "data": {
    "updateRequestStatus": {
      "id": "4",
      "request": Request,
      "dataSource": DataSource,
      "status": "CREATED",
      "queryResult": QueryResult
    }
  }
}

updateSiloDefinition

Response

Returns a SiloDefinition!

Arguments
Name Description
input - UpdateSiloDefinitionInput

Example

Query
mutation updateSiloDefinition($input: UpdateSiloDefinitionInput) {
  updateSiloDefinition(input: $input) {
    discoveries {
      ...DataDiscoveriesListResultFragment
    }
    id
    name
    description
    siloSpecification {
      ...SiloSpecificationFragment
    }
    dataSources {
      ...DataSourceFragment
    }
    subjects {
      ...SubjectFragment
    }
    siloConfig
  }
}
Variables
{"input": UpdateSiloDefinitionInput}
Response
{
  "data": {
    "updateSiloDefinition": {
      "discoveries": DataDiscoveriesListResult,
      "id": 4,
      "name": "xyz789",
      "description": "xyz789",
      "siloSpecification": SiloSpecification,
      "dataSources": [DataSource],
      "subjects": [Subject],
      "siloConfig": Map
    }
  }
}

updateSiloSpecification

Response

Returns a SiloSpecification

Arguments
Name Description
input - UpdateSiloSpecificationInput

Example

Query
mutation updateSiloSpecification($input: UpdateSiloSpecificationInput) {
  updateSiloSpecification(input: $input) {
    id
    name
    logoUrl
    logo
    dockerImage
    schema
    manual
  }
}
Variables
{"input": UpdateSiloSpecificationInput}
Response
{
  "data": {
    "updateSiloSpecification": {
      "id": 4,
      "name": "abc123",
      "logoUrl": "abc123",
      "logo": "xyz789",
      "dockerImage": "abc123",
      "schema": "xyz789",
      "manual": false
    }
  }
}

updateSubject

Response

Returns a Subject

Arguments
Name Description
input - UpdateSubjectInput

Example

Query
mutation updateSubject($input: UpdateSubjectInput) {
  updateSubject(input: $input) {
    id
    name
  }
}
Variables
{"input": UpdateSubjectInput}
Response
{
  "data": {
    "updateSubject": {
      "id": 4,
      "name": "xyz789"
    }
  }
}

updateUserPrimaryKey

Response

Returns a UserPrimaryKey

Arguments
Name Description
input - UpdateUserPrimaryKeyInput!

Example

Query
mutation updateUserPrimaryKey($input: UpdateUserPrimaryKeyInput!) {
  updateUserPrimaryKey(input: $input) {
    id
    workspaceId
    name
    apiIdentifier
    properties {
      ...PropertyFragment
    }
  }
}
Variables
{"input": UpdateUserPrimaryKeyInput}
Response
{
  "data": {
    "updateUserPrimaryKey": {
      "id": "4",
      "workspaceId": "4",
      "name": "xyz789",
      "apiIdentifier": "xyz789",
      "properties": [Property]
    }
  }
}

updateWorkspaceSettings

Response

Returns a Workspace!

Arguments
Name Description
input - UpdateWorkspaceSettingsInput!

Example

Query
mutation updateWorkspaceSettings($input: UpdateWorkspaceSettingsInput!) {
  updateWorkspaceSettings(input: $input) {
    id
    name
    onboardingComplete
    settings
    siloSpecifications {
      ...SiloSpecificationFragment
    }
    subjects {
      ...SubjectFragment
    }
    categories {
      ...CategoryFragment
    }
    dataMap {
      ...DataMapResultFragment
    }
    discoveries {
      ...DataDiscoveriesListResultFragment
    }
    jobs {
      ...JobsResultFragment
    }
    job {
      ...JobFragment
    }
    requests {
      ...RequestsResultFragment
    }
    userPrimaryKeys {
      ...UserPrimaryKeyFragment
    }
    siloDefinitions {
      ...SiloDefinitionFragment
    }
    team {
      ...TeamResultFragment
    }
  }
}
Variables
{"input": UpdateWorkspaceSettingsInput}
Response
{
  "data": {
    "updateWorkspaceSettings": {
      "id": 4,
      "name": "xyz789",
      "onboardingComplete": true,
      "settings": Map,
      "siloSpecifications": [SiloSpecification],
      "subjects": [Subject],
      "categories": [Category],
      "dataMap": DataMapResult,
      "discoveries": DataDiscoveriesListResult,
      "jobs": JobsResult,
      "job": Job,
      "requests": RequestsResult,
      "userPrimaryKeys": [UserPrimaryKey],
      "siloDefinitions": [SiloDefinition],
      "team": TeamResult
    }
  }
}

Types

AuthPayload

Fields
Field Name Description
token - String!
Example
{"token": "abc123"}

Boolean

Description

The Boolean scalar type represents true or false.

Example
true

Category

Fields
Field Name Description
id - ID!
name - String!
Example
{
  "id": "4",
  "name": "xyz789"
}

CategoryQuery

Fields
Input Field Description
anyCategory - Boolean
noCategory - Boolean
categoryIDs - [ID!]
Example
{"anyCategory": false, "noCategory": false, "categoryIDs": [4]}

CreateDataSourceInput

Fields
Input Field Description
siloDefinitionID - ID!
name - String!
group - String
properties - [PropertyInput!]!
Example
{
  "siloDefinitionID": 4,
  "name": "abc123",
  "group": "xyz789",
  "properties": [PropertyInput]
}

CreatePropertyInput

Fields
Input Field Description
property - PropertyInput!
dataSourceID - ID!
Example
{"property": PropertyInput, "dataSourceID": 4}

CreateSiloDefinitionInput

Fields
Input Field Description
description - String
siloSpecificationID - ID!
workspaceID - ID!
subjectIDs - [ID!]
siloData - String
name - String!
Example
{
  "description": "xyz789",
  "siloSpecificationID": 4,
  "workspaceID": 4,
  "subjectIDs": [4],
  "siloData": "abc123",
  "name": "abc123"
}

CreateSiloSpecificationInput

Fields
Input Field Description
name - String!
workspaceID - ID!
logoURL - String
dockerImage - String!
schema - String
Example
{
  "name": "abc123",
  "workspaceID": "4",
  "logoURL": "abc123",
  "dockerImage": "abc123",
  "schema": "xyz789"
}

CreateSubjectInput

Fields
Input Field Description
name - String!
workspaceID - ID!
Example
{"name": "abc123", "workspaceID": 4}

CreateUserPrimaryKeyInput

Fields
Input Field Description
name - String!
apiIdentifier - String!
workspaceId - ID!
Example
{
  "name": "xyz789",
  "apiIdentifier": "xyz789",
  "workspaceId": "4"
}

CreateWorkspaceInput

Fields
Input Field Description
name - String!
settings - [KVPair]
Example
{
  "name": "xyz789",
  "settings": [KVPair]
}

DataDiscoveriesListResult

Fields
Field Name Description
discoveries - [DataDiscovery]!
numDiscoveries - Int!
Example
{"discoveries": [DataDiscovery], "numDiscoveries": 987}

DataDiscovery

Fields
Field Name Description
id - ID!
siloDefinitionID - ID!
siloDefinition - SiloDefinition!
type - DiscoveryType!
status - DiscoveryStatus!
data - DataDiscoveryData!
createdAt - Time!
Example
{
  "id": 4,
  "siloDefinitionID": "4",
  "siloDefinition": SiloDefinition,
  "type": "DATA_SOURCE_MISSING",
  "status": "OPEN",
  "data": NewDataSourceDiscovery,
  "createdAt": "10:15:30Z"
}

DataDiscoveryData

DataMapQuery

Fields
Input Field Description
categories - CategoryQuery
siloDefinitions - [ID!]
Example
{"categories": CategoryQuery, "siloDefinitions": [4]}

DataMapResult

Fields
Field Name Description
dataMapRows - [DataMapRow!]
numRows - Int!
Example
{"dataMapRows": [DataMapRow], "numRows": 123}

DataMapRow

Fields
Field Name Description
siloDefinition - SiloDefinition!
property - Property!
dataSource - DataSource!
Example
{
  "siloDefinition": SiloDefinition,
  "property": Property,
  "dataSource": DataSource
}

DataSource

Fields
Field Name Description
id - ID!
name - String!
group - String
siloDefinition - SiloDefinition!
properties - [Property!]
description - String
deleted - Boolean! This field will ony be true if this is the result of the requestStatuses query, and this data source was deleted after the request was already created.
requestStatuses - [RequestStatus!]!
Example
{
  "id": "4",
  "name": "abc123",
  "group": "abc123",
  "siloDefinition": SiloDefinition,
  "properties": [Property],
  "description": "abc123",
  "deleted": false,
  "requestStatuses": [RequestStatus]
}

DataSourceMissingDiscovery

Fields
Field Name Description
id - String!
dataSource - DataSource
Example
{
  "id": "xyz789",
  "dataSource": DataSource
}

DiscoveryAction

Values
Enum Value Description

ACCEPT

REJECT

Example
"ACCEPT"

DiscoveryStatus

Values
Enum Value Description

OPEN

ACCEPTED

REJECTED

Example
"OPEN"

DiscoveryType

Values
Enum Value Description

DATA_SOURCE_MISSING

DATA_SOURCE_FOUND

PROPERTY_FOUND

PROPERTY_MISSING

CATEGORY_FOUND

Example
"DATA_SOURCE_MISSING"

FullRequestStatus

Values
Enum Value Description

CREATED

IN_PROGRESS

EXECUTED

PARTIAL_FAILED

FAILED

Example
"CREATED"

HandleAllDiscoveriesInput

Fields
Input Field Description
siloId - ID!
action - DiscoveryAction!
Example
{"siloId": 4, "action": "ACCEPT"}

HandleDiscoveryInput

Fields
Input Field Description
discoveryId - ID!
action - DiscoveryAction!
Example
{"discoveryId": "4", "action": "ACCEPT"}

ID

Description

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

Example
4

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
123

Job

Fields
Field Name Description
id - ID!
jobType - String!
resourceId - ID!
status - JobStatus!
siloDefinition - SiloDefinition!
logs - [String!]
createdAt - Time!
updatedAt - Time!
Example
{
  "id": 4,
  "jobType": "xyz789",
  "resourceId": 4,
  "status": "QUEUED",
  "siloDefinition": SiloDefinition,
  "logs": ["abc123"],
  "createdAt": "10:15:30Z",
  "updatedAt": "10:15:30Z"
}

JobStatus

Values
Enum Value Description

QUEUED

RUNNING

COMPLETED

PARTIAL_FAILED

FAILED

Example
"QUEUED"

JobsResult

Fields
Field Name Description
jobs - [Job!]!
numJobs - Int!
Example
{"jobs": [Job], "numJobs": 987}

KVPair

Fields
Input Field Description
key - String!
value - String!
Example
{
  "key": "xyz789",
  "value": "xyz789"
}

LoginInput

Fields
Input Field Description
email - String!
password - String!
Example
{
  "email": "abc123",
  "password": "abc123"
}

Map

Example
Map

NewCategoryDiscovery

Fields
Field Name Description
propertyId - String
categoryId - String!
category - Category!
property - Property
Example
{
  "propertyId": "abc123",
  "categoryId": "xyz789",
  "category": Category,
  "property": Property
}

NewDataSourceDiscovery

Fields
Field Name Description
name - String!
group - String
properties - [NewPropertyDiscovery]
Example
{
  "name": "abc123",
  "group": "xyz789",
  "properties": [NewPropertyDiscovery]
}

NewPropertyDiscovery

Fields
Field Name Description
name - String!
categories - [NewCategoryDiscovery]
dataSourceId - String
dataSource - DataSource
Example
{
  "name": "abc123",
  "categories": [NewCategoryDiscovery],
  "dataSourceId": "abc123",
  "dataSource": DataSource
}

PrimaryKeyValue

Fields
Field Name Description
id - ID!
userPrimaryKey - UserPrimaryKey!
request - Request!
value - String!
Example
{
  "id": "4",
  "userPrimaryKey": UserPrimaryKey,
  "request": Request,
  "value": "abc123"
}

Property

Fields
Field Name Description
id - ID!
name - String!
categories - [Category!]
dataSource - DataSource!
userPrimaryKey - UserPrimaryKey
Example
{
  "id": "4",
  "name": "xyz789",
  "categories": [Category],
  "dataSource": DataSource,
  "userPrimaryKey": UserPrimaryKey
}

PropertyInput

Fields
Input Field Description
name - String!
categoryIDs - [ID!]
Example
{
  "name": "abc123",
  "categoryIDs": ["4"]
}

PropertyMissingDiscovery

Fields
Field Name Description
id - String!
property - Property
Example
{
  "id": "xyz789",
  "property": Property
}

QueryResult

Fields
Field Name Description
id - ID!
requestStatus - RequestStatus!
records - String
resultType - ResultType!
Example
{
  "id": 4,
  "requestStatus": RequestStatus,
  "records": "abc123",
  "resultType": "RECORDS_JSON"
}

Request

Fields
Field Name Description
id - ID!
primaryKeyValues - [PrimaryKeyValue!]!
requestStatuses - RequestStatusListResult!
Arguments
offset - Int
limit - Int!
type - UserDataRequestType!
status - FullRequestStatus!
createdAt - Time!
Example
{
  "id": "4",
  "primaryKeyValues": [PrimaryKeyValue],
  "requestStatuses": RequestStatusListResult,
  "type": "DELETE",
  "status": "CREATED",
  "createdAt": "10:15:30Z"
}

RequestStatus

Fields
Field Name Description
id - ID!
request - Request!
dataSource - DataSource!
status - RequestStatusType!
queryResult - QueryResult
Example
{
  "id": 4,
  "request": Request,
  "dataSource": DataSource,
  "status": "CREATED",
  "queryResult": QueryResult
}

RequestStatusListResult

Fields
Field Name Description
requestStatusRows - [RequestStatus!]
numStatuses - Int!
Example
{"requestStatusRows": [RequestStatus], "numStatuses": 987}

RequestStatusQuery

Fields
Input Field Description
siloDefinitions - [ID!]
Example
{"siloDefinitions": ["4"]}

RequestStatusType

Values
Enum Value Description

CREATED

IN_PROGRESS

MANUAL_NEEDED

EXECUTED

FAILED

Example
"CREATED"

RequestsResult

Fields
Field Name Description
requests - [Request!]!
numRequests - Int!
Example
{"requests": [Request], "numRequests": 123}

ResultType

Values
Enum Value Description

RECORDS_JSON

FILE

Example
"RECORDS_JSON"

SignUpInput

Fields
Input Field Description
email - String!
password - String!
confirmPassword - String!
Example
{
  "email": "abc123",
  "password": "abc123",
  "confirmPassword": "xyz789"
}

SiloDefinition

Fields
Field Name Description
discoveries - DataDiscoveriesListResult! List the discoveries for a silo. If a query is specified, it is used to look up a discovery by ID.
Arguments
statuses - [DiscoveryStatus]
query - String
limit - Int!
offset - Int!
id - ID!
name - String!
description - String
siloSpecification - SiloSpecification
dataSources - [DataSource!]
subjects - [Subject!]
siloConfig - Map
Example
{
  "discoveries": DataDiscoveriesListResult,
  "id": "4",
  "name": "abc123",
  "description": "xyz789",
  "siloSpecification": SiloSpecification,
  "dataSources": [DataSource],
  "subjects": [Subject],
  "siloConfig": Map
}

SiloSpecification

Fields
Field Name Description
id - ID!
name - String!
logoUrl - String
logo - String
dockerImage - String!
schema - String
manual - Boolean!
Example
{
  "id": 4,
  "name": "xyz789",
  "logoUrl": "abc123",
  "logo": "xyz789",
  "dockerImage": "xyz789",
  "schema": "abc123",
  "manual": false
}

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"xyz789"

Subject

Fields
Field Name Description
id - ID!
name - String!
Example
{"id": 4, "name": "abc123"}

TeamResult

Fields
Field Name Description
numUsers - Int!
Example
{"numUsers": 123}

Time

Example
"10:15:30Z"

UpdateDataSourceInput

Fields
Input Field Description
id - ID!
description - String
Example
{
  "id": "4",
  "description": "abc123"
}

UpdatePropertyInput

Fields
Input Field Description
id - ID!
categoryIDs - [ID!]
Example
{"id": 4, "categoryIDs": [4]}

UpdateRequestStatusInput

Fields
Input Field Description
requestStatusId - ID!
status - UpdateRequestStatusType!
resultData - Upload
Example
{
  "requestStatusId": "4",
  "status": "EXECUTED",
  "resultData": Upload
}

UpdateRequestStatusType

Values
Enum Value Description

EXECUTED

FAILED

Example
"EXECUTED"

UpdateSiloDefinitionInput

Fields
Input Field Description
id - ID!
name - String
description - String
subjectIDs - [ID!]
siloData - String
Example
{
  "id": 4,
  "name": "xyz789",
  "description": "xyz789",
  "subjectIDs": [4],
  "siloData": "abc123"
}

UpdateSiloSpecificationInput

Fields
Input Field Description
id - ID!
dockerImage - String
schema - String
name - String
logoUrl - String
Example
{
  "id": 4,
  "dockerImage": "xyz789",
  "schema": "abc123",
  "name": "xyz789",
  "logoUrl": "abc123"
}

UpdateSubjectInput

Fields
Input Field Description
name - String
Example
{"name": "xyz789"}

UpdateUserPrimaryKeyInput

Fields
Input Field Description
id - ID!
name - String!
Example
{"id": 4, "name": "abc123"}

UpdateWorkspaceSettingsInput

Fields
Input Field Description
workspaceID - ID!
settings - [KVPair]
Example
{"workspaceID": 4, "settings": [KVPair]}

Upload

Example
Upload

UserDataRequestInput

Fields
Input Field Description
primaryKeys - [UserPrimaryKeyInput!]
workspaceId - ID!
type - UserDataRequestType!
Example
{
  "primaryKeys": [UserPrimaryKeyInput],
  "workspaceId": 4,
  "type": "DELETE"
}

UserDataRequestType

Values
Enum Value Description

DELETE

QUERY

Example
"DELETE"

UserPrimaryKey

Fields
Field Name Description
id - ID!
workspaceId - ID!
name - String!
apiIdentifier - String!
properties - [Property!]
Example
{
  "id": 4,
  "workspaceId": "4",
  "name": "abc123",
  "apiIdentifier": "xyz789",
  "properties": [Property]
}

UserPrimaryKeyInput

Fields
Input Field Description
apiIdentifier - String!
value - String!
Example
{
  "apiIdentifier": "abc123",
  "value": "xyz789"
}

Workspace

Fields
Field Name Description
id - ID!
name - String
onboardingComplete - Boolean
settings - Map!
siloSpecifications - [SiloSpecification!]!
subjects - [Subject!]!
categories - [Category!]!
dataMap - DataMapResult!
Arguments
query - DataMapQuery
limit - Int!
offset - Int
discoveries - DataDiscoveriesListResult!
Arguments
statuses - [DiscoveryStatus]
query - String
limit - Int!
offset - Int
jobs - JobsResult!
Arguments
jobType - String!
resourceId - ID
status - [JobStatus]
query - String
limit - Int!
offset - Int!
job - Job!
Arguments
id - ID!
requests - RequestsResult!
Arguments
offset - Int
limit - Int!
userPrimaryKeys - [UserPrimaryKey!]!
siloDefinitions - [SiloDefinition!]!
team - TeamResult!
Arguments
limit - Int!
offset - Int!
Example
{
  "id": "4",
  "name": "xyz789",
  "onboardingComplete": true,
  "settings": Map,
  "siloSpecifications": [SiloSpecification],
  "subjects": [Subject],
  "categories": [Category],
  "dataMap": DataMapResult,
  "discoveries": DataDiscoveriesListResult,
  "jobs": JobsResult,
  "job": Job,
  "requests": RequestsResult,
  "userPrimaryKeys": [UserPrimaryKey],
  "siloDefinitions": [SiloDefinition],
  "team": TeamResult
}