Onedot API API Reference

Onedot is the first intelligent platform for commerce and industry to source, onboard and distribute product data. The Onedot API is a GraphQL-based API. You can play with the API at our live playground or have the GraphQL schema fetched by an introspection query for generating code to access the API in any programming language.

Most queries and mutations of the Onedot API need authentication. Authentication happens using an API Key which can be obtained from the Onedot App after signing in. Requests against the GraphQL endpoint need a HTTP header X-API-Key=key set when connecting to https://api.onedot.com/graphql.

To get started with the Onedot API, it is recommended to start with the topics below from top to bottom to find your way through the functionality offered by the Onedot Platform.

API Endpoints
Onedot Platform:
https://api.onedot.com/graphql
Terms of Service: https://www.onedot.com/terms-of-service
Contact: support@onedot.com
Version: 2

Working with Users

Users represent persons or technical systems that can collaborate with each other. Users are automatically created when signing up with the Onedot App or when inviting a new user to collaborate with me.

Query myself

Query information about my own user I am logged in with.

Example

Request Content-Types: application/json
Query
query me{
  me{
    id
    archived
    created
    name
    email
    firstName
    lastName
    groups
    roles
    collaborators
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "me": {
      "archived": "boolean",
      "name": "string",
      "firstName": "string",
      "lastName": "string"
    }
  }
}

Query other User

Query information about another user based on an email address.

email:
object

The email address of the user to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query userByEmail($email: EmailAddress!, $archiving: Archiving){
  userByEmail(email: $email, archiving: $archiving){
    id
    archived
    created
    name
    email
    firstName
    lastName
    groups
    roles
    collaborators
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "userByEmail": {
      "archived": "boolean",
      "name": "string",
      "firstName": "string",
      "lastName": "string"
    }
  }
}

Query all Users

Query information about all users I collaborate with.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more users.

Example

Request Content-Types: application/json
Query
query users($archiving: Archiving, $pageSize: Int, $after: String){
  users(archiving: $archiving, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    users
  }
}
Variables
{
  "archiving": "string",
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "users": {
      "cursor": "string",
      "hasMore": "boolean"
    }
  }
}

Working with Groups

Users are organised in groups to collaborate with each other. Only users within the same groups can see each other and collaborate.

Query Group

Query information about a specific group I collaborate with.

id:
object

The ID of the group to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query group($id: GroupID!, $archiving: Archiving){
  group(id: $id, archiving: $archiving){
    id
    archived
    name
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "group": {
      "archived": "boolean",
      "name": "string"
    }
  }
}

Query all Groups

Query information about all groups I collaborate with.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more groups.

Example

Request Content-Types: application/json
Query
query groups($archiving: Archiving, $pageSize: Int, $after: String){
  groups(archiving: $archiving, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    groups
  }
}
Variables
{
  "archiving": "string",
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "groups": {
      "cursor": "string",
      "hasMore": "boolean"
    }
  }
}

Query Users by Group

Query information about all users of a group I collaborate with.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

groupId:
object

The ID of the group to request users from.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more users.

Example

Request Content-Types: application/json
Query
query usersByGroup($archiving: Archiving, $groupId: GroupID!, $pageSize: Int, $after: String){
  usersByGroup(archiving: $archiving, groupId: $groupId, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    users
  }
}
Variables
{
  "archiving": "string",
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "usersByGroup": {
      "cursor": "string",
      "hasMore": "boolean"
    }
  }
}

Working with Folders

Folders organise the Data Files and Dictionary Files as a hierarchical file system, as shown in the Onedot App.

Query Data Files Root

Determine the root folder for data files to transfer.

Example

Request Content-Types: application/json
Query
query dataRoot{
  dataRoot{
    id
    versionId
    archived
    created
    modified
    name
    size
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "dataRoot": {
      "archived": "boolean",
      "name": "string",
      "size": "integer"
    }
  }
}

Query Dictionary Files Root

Determine the root folder for dictionary files to transfer.

Example

Request Content-Types: application/json
Query
query dictionaryRoot{
  dictionaryRoot{
    id
    versionId
    archived
    created
    modified
    name
    size
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "dictionaryRoot": {
      "archived": "boolean",
      "name": "string",
      "size": "integer"
    }
  }
}

Query Folder

Query information about a specific folder.

id:
object

The ID of the folder to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query folder($id: FolderID!, $archiving: Archiving){
  folder(id: $id, archiving: $archiving){
    id
    versionId
    archived
    created
    modified
    name
    size
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "folder": {
      "archived": "boolean",
      "name": "string",
      "size": "integer"
    }
  }
}

Query Folders

Query information about folders with a given path.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

path:
string[]

The path to the folder where to request child folders from.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more folders.

Example

Request Content-Types: application/json
Query
query folders($archiving: Archiving, $path: [String!], $pageSize: Int, $after: String){
  folders(archiving: $archiving, path: $path, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    folders
  }
}
Variables
{
  "archiving": "string",
  "path": [
    "string"
  ],
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "folders": {
      "cursor": "string",
      "hasMore": "boolean"
    }
  }
}

Create Folder

Create a new folder with a given name.

The input.

Example

Request Content-Types: application/json
Query
mutation createFolder($input: CreateFolderInput!){
  createFolder(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    size
  }
}
Variables
{
  "input": {
    "parentId": "object",
    "name": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createFolder": {
      "archived": "boolean",
      "name": "string",
      "size": "integer"
    }
  }
}

Archive Folder

Archive a given folder.

id:
object

The ID of the folder to archive.

Example

Request Content-Types: application/json
Query
mutation archiveFolder($id: FolderID!){
  archiveFolder(id: $id){
    id
    versionId
    archived
    created
    modified
    name
    size
  }
}
Variables
{}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "archiveFolder": {
      "archived": "boolean",
      "name": "string",
      "size": "integer"
    }
  }
}

Rename Folder

Rename a given folder.

The input.

Example

Request Content-Types: application/json
Query
mutation renameFolder($input: RenameFolderInput!){
  renameFolder(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    size
  }
}
Variables
{
  "input": {
    "folderId": "object",
    "name": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "renameFolder": {
      "archived": "boolean",
      "name": "string",
      "size": "integer"
    }
  }
}

Transfering Files

Files such as Data Files or Dictionary Files are best created by uploading them to the Onedot App. You can either drag and drop files right to your browser running the Onedot App or use the mutations below to initiate a file transfer.

Upload Files

Initiate a file transfer to upload files to the Onedot Platform.

The inputs.

Example

Request Content-Types: application/json
Query
mutation uploadFiles($inputs: [UploadFileInput!]!){
  uploadFiles(inputs: $inputs)
}
Variables
{
  "inputs": [
    {
      "name": "string",
      "folderId": "object",
      "fileId": "object",
      "mimeType": "object",
      "encoding": "object"
    }
  ]
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "uploadFiles": [
      {
        "name": "string"
      }
    ]
  }
}

Download Files

Initiate a file transfer to download files from the Onedot Platform.

ids:
object[]

The IDs of the files to download.

Example

Request Content-Types: application/json
Query
mutation downloadFiles($ids: [FileID!]!){
  downloadFiles(ids: $ids)
}
Variables
{
  "ids": [
    null
  ]
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "downloadFiles": [
      {
        "name": "string"
      }
    ]
  }
}

Working with Files

Files such as Data Files or Dictionary Files are shown in the Onedot App.

Query File

Query information about a specific file.

id:
object

The ID of the file to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query file($id: FileID!, $archiving: Archiving){
  file(id: $id, archiving: $archiving)
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {}
}

Query Files

Query information about files within a given folder.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

folderId:
object

The ID of the folder to request files from.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more files.

Example

Request Content-Types: application/json
Query
query files($archiving: Archiving, $folderId: FolderID!, $pageSize: Int, $after: String){
  files(archiving: $archiving, folderId: $folderId, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    files
  }
}
Variables
{
  "archiving": "string",
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "files": {
      "cursor": "string",
      "hasMore": "boolean",
      "files": [
        null
      ]
    }
  }
}

Archive File

Archives a given file.

id:
object

The ID of the file to archive.

Example

Request Content-Types: application/json
Query
mutation archiveFile($id: FileID!){
  archiveFile(id: $id)
}
Variables
{}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {}
}

Move File

Moves a given file to another folder.

The input.

Example

Request Content-Types: application/json
Query
mutation moveFile($input: MoveFileInput!){
  moveFile(input: $input)
}
Variables
{
  "input": {
    "fileId": "object",
    "folderId": "object"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {}
}

Rename File

Rename a given file.

The input.

Example

Request Content-Types: application/json
Query
mutation renameFile($input: RenameFileInput!){
  renameFile(input: $input)
}
Variables
{
  "input": {
    "fileId": "object",
    "name": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {}
}

Registering Providers

Providers denote data sources such as suppliers, distributors or merchants providing product data. Providers are shown as part of Jobs in the Onedot App.

Query Provider

Query information about a specific provider.

id:
object

The ID of the provider to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query provider($id: ProviderID!, $archiving: Archiving){
  provider(id: $id, archiving: $archiving){
    id
    versionId
    archived
    created
    modified
    name
    contacts
    tags
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "provider": {
      "archived": "boolean",
      "name": "string",
      "contacts": [
        null
      ]
    }
  }
}

Query Providers

Query information about all providers.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more providers.

Example

Request Content-Types: application/json
Query
query providers($archiving: Archiving, $pageSize: Int, $after: String){
  providers(archiving: $archiving, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    providers
  }
}
Variables
{
  "archiving": "string",
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "providers": {
      "cursor": "string",
      "hasMore": "boolean"
    }
  }
}

Create Provider

Create a new provider.

The input.

Example

Request Content-Types: application/json
Query
mutation createProvider($input: CreateProviderInput!){
  createProvider(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    contacts
    tags
  }
}
Variables
{
  "input": {
    "name": "string",
    "tags": [
      "string"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createProvider": {
      "archived": "boolean",
      "name": "string",
      "contacts": [
        null
      ]
    }
  }
}

Archive Provider

Archive a given provider.

id:
object

The ID of the provider to archive.

Example

Request Content-Types: application/json
Query
mutation archiveProvider($id: ProviderID!){
  archiveProvider(id: $id){
    id
    versionId
    archived
    created
    modified
    name
    contacts
    tags
  }
}
Variables
{}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "archiveProvider": {
      "archived": "boolean",
      "name": "string",
      "contacts": [
        null
      ]
    }
  }
}

Rename Provider

Rename a given provider.

The input.

Example

Request Content-Types: application/json
Query
mutation renameTask($input: RenameTaskInput!){
  renameTask(input: $input){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{
  "input": {
    "taskId": "object",
    "name": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "renameTask": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string"
    }
  }
}

Set User Contacts

Set the given users as contacts.

The input.

Example

Request Content-Types: application/json
Query
mutation setProviderUserContacts($input: ProviderUserContactsInput!){
  setProviderUserContacts(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    contacts
    tags
  }
}
Variables
{
  "input": {
    "providerId": "object",
    "userIds": [
      "object"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "setProviderUserContacts": {
      "archived": "boolean",
      "name": "string",
      "contacts": [
        null
      ]
    }
  }
}

Set Group Contacts

Set the given groups as contacts.

The input.

Example

Request Content-Types: application/json
Query
mutation setProviderGroupContacts($input: ProviderGroupContactsInput!){
  setProviderGroupContacts(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    contacts
    tags
  }
}
Variables
{
  "input": {
    "providerId": "object",
    "groupIds": [
      "object"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "setProviderGroupContacts": {
      "archived": "boolean",
      "name": "string",
      "contacts": [
        null
      ]
    }
  }
}

Retrieving Recipes

Recipes describe the desired outcome of a product data onboarding as a declarative blueprint, describing intented Results and conceptional Steps to achieve those Results. Recipes are shown as part of Jobs in the Onedot App.

Query Recipe

Query information about a specific recipe.

id:
object

The ID of the recipe to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query recipe($id: RecipeID!, $archiving: Archiving){
  recipe(id: $id, archiving: $archiving){
    id
    versionId
    archived
    created
    modified
    name
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "recipe": {
      "archived": "boolean",
      "name": "string"
    }
  }
}

Query Recipes

Query information about all recipes.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more recipes.

Example

Request Content-Types: application/json
Query
query recipes($archiving: Archiving, $pageSize: Int, $after: String){
  recipes(archiving: $archiving, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    recipes
  }
}
Variables
{
  "archiving": "string",
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "recipes": {
      "cursor": "string",
      "hasMore": "boolean"
    }
  }
}

Managing Jobs

Jobs represent a specific process of product data onboarding, consisting of a series of Steps organised in a Recipe describing the desired outcome of the onboarding. Jobs are shown in the Onedot App.

Set Tags

Set the given tags.

input:

The input.

Example

Request Content-Types: application/json
Query
mutation changeJobTags($input: JobTagInput!){
  changeJobTags(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{
  "input": {
    "jobId": "object",
    "tags": [
      "string"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "changeJobTags": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ]
    }
  }
}

Query Job

Query information about a specific job.

id:
object

The ID of the job to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query job($id: JobID!, $archiving: Archiving){
  job(id: $id, archiving: $archiving){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "job": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ]
    }
  }
}

Query Jobs

Query information about all jobs.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more jobs.

Example

Request Content-Types: application/json
Query
query jobs($archiving: Archiving, $pageSize: Int, $after: String){
  jobs(archiving: $archiving, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    jobs
  }
}
Variables
{
  "archiving": "string",
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "jobs": {
      "cursor": "string",
      "hasMore": "boolean"
    }
  }
}

Create Job

Create a new job.

The input.

Example

Request Content-Types: application/json
Query
mutation createJob($input: CreateJobInput!){
  createJob(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{
  "input": {
    "name": "string",
    "providerId": "object",
    "recipeId": "object",
    "stepTypeIds": [
      "object"
    ],
    "fileIds": [
      "object"
    ],
    "tags": [
      "string"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createJob": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ]
    }
  }
}

Archive Job

Archive a given job.

id:
object

The ID of the job to archive.

Example

Request Content-Types: application/json
Query
mutation archiveJob($id: JobID!){
  archiveJob(id: $id){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "archiveJob": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ]
    }
  }
}

Rename Job

Rename a given job.

The input.

Example

Request Content-Types: application/json
Query
mutation renameJob($input: RenameJobInput!){
  renameJob(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{
  "input": {
    "jobId": "object",
    "name": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "renameJob": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ]
    }
  }
}

Copy Job

Copy a given job.

input:

The input.

Example

Request Content-Types: application/json
Query
mutation copyJob($input: CopyJobInput!){
  copyJob(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{
  "input": {
    "jobId": "object",
    "name": "string",
    "fileIds": [
      "object"
    ],
    "tags": [
      "string"
    ]
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "copyJob": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ]
    }
  }
}

Update Step

Update a given step of a job.

The input.

Example

Request Content-Types: application/json
Query
mutation updateJobStep($input: UpdateJobStepInput!){
  updateJobStep(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{
  "input": {
    "jobId": "object",
    "stepId": "object",
    "status": "string",
    "results": {
      "fileIds": [
        "object"
      ],
      "taskIds": [
        "object"
      ]
    },
    "problems": {
      "genericProblems": [
        {
          "id": "object",
          "severity": "string",
          "status": "string"
        }
      ],
      "taskProblems": [
        {
          "id": "object",
          "severity": "string",
          "taskId": "object"
        }
      ]
    }
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "updateJobStep": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ]
    }
  }
}

Set Approval

Set the approval of a job.

The input.

Example

Request Content-Types: application/json
Query
mutation setJobApproval($input: JobApprovalInput!){
  setJobApproval(input: $input){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{
  "input": {
    "jobId": "object",
    "approval": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "setJobApproval": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ]
    }
  }
}

Managing Steps

Steps represent the basic operations during a product data onboarding. Steps are based on Step Types which are basic blue prints describing a particular operation during product data onboarding. Steps are shown as part of Jobs in the Onedot App.

Query Step Type

Query information about a specific step type.

id:
object

The ID of the step type to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query stepType($id: StepTypeID!, $archiving: Archiving){
  stepType(id: $id, archiving: $archiving){
    id
    versionId
    archived
    created
    modified
    name
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "stepType": {
      "archived": "boolean",
      "name": "string"
    }
  }
}

Query Step Types

Query information about all step types.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more step types.

Example

Request Content-Types: application/json
Query
query stepTypes($archiving: Archiving, $pageSize: Int, $after: String){
  stepTypes(archiving: $archiving, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    stepTypes
  }
}
Variables
{
  "archiving": "string",
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "stepTypes": {
      "cursor": "string",
      "hasMore": "boolean"
    }
  }
}

Create Step Type

Create a new step type.

The input.

Example

Request Content-Types: application/json
Query
mutation createStepType($input: CreateStepTypeInput!){
  createStepType(input: $input){
    id
    versionId
    archived
    created
    modified
    name
  }
}
Variables
{
  "input": {
    "shortName": "string",
    "longName": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createStepType": {
      "archived": "boolean",
      "name": "string"
    }
  }
}

Archive Step Type

Archive a given step type.

id:
object

The ID of the job step to archive.

Example

Request Content-Types: application/json
Query
mutation archiveStepType($id: StepTypeID!){
  archiveStepType(id: $id){
    id
    versionId
    archived
    created
    modified
    name
  }
}
Variables
{}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "archiveStepType": {
      "archived": "boolean",
      "name": "string"
    }
  }
}

Running Jobs

Jobs are shown in the Onedot App.

Execute Job

Execute a given job.

id:
object

The ID of the job to execute.

Example

Request Content-Types: application/json
Query
mutation executeJob($id: JobID!){
  executeJob(id: $id){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "executeJob": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ]
    }
  }
}

Managing Tasks

Tasks are designed to capture user feedback about proposals issues by the Onedot Platform. Tasks are shown in the Onedot App.

Set Status

Set the status of a task.

The input.

Example

Request Content-Types: application/json
Query
mutation setTaskStatus($input: TaskStatusInput!){
  setTaskStatus(input: $input){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{
  "input": {
    "taskId": "object",
    "status": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "setTaskStatus": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string"
    }
  }
}

Query Task

Query information about a specific task.

id:
object

The ID of the task to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query task($id: TaskID!, $archiving: Archiving){
  task(id: $id, archiving: $archiving){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "task": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string"
    }
  }
}

Query Tasks

Query information about all tasks.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

pageSize:
integer

The page size, must be smaller or equal to 50.

after:
string

The cursor of the current connection after which to request more tasks.

Example

Request Content-Types: application/json
Query
query tasks($archiving: Archiving, $pageSize: Int, $after: String){
  tasks(archiving: $archiving, pageSize: $pageSize, after: $after){
    cursor
    hasMore
    tasks
  }
}
Variables
{
  "archiving": "string",
  "pageSize": "integer",
  "after": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "tasks": {
      "cursor": "string",
      "hasMore": "boolean"
    }
  }
}

Create Task

Create a new task.

The input.

Example

Request Content-Types: application/json
Query
mutation createTask($input: CreateTaskInput!){
  createTask(input: $input){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{
  "input": {
    "fileId": "object",
    "name": "string",
    "description": "string",
    "taskType": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "createTask": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string"
    }
  }
}

Archive Task

Archive a given task.

id:
object

The ID of the task to archive.

Example

Request Content-Types: application/json
Query
mutation archiveTask($id: TaskID!){
  archiveTask(id: $id){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "archiveTask": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string"
    }
  }
}

Rename Task

Rename a given task.

The input.

Example

Request Content-Types: application/json
Query
mutation renameTask($input: RenameTaskInput!){
  renameTask(input: $input){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{
  "input": {
    "taskId": "object",
    "name": "string"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "renameTask": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string"
    }
  }
}

Assign User

Assign a user to solve a task.

The input.

Example

Request Content-Types: application/json
Query
mutation assignTaskUser($input: TaskUserAssignmentInput!){
  assignTaskUser(input: $input){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{
  "input": {
    "taskId": "object",
    "userId": "object"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "assignTaskUser": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string"
    }
  }
}

Assign Group

Assign a group to solve a task.

The input.

Example

Request Content-Types: application/json
Query
mutation assignTaskGroup($input: TaskGroupAssignmentInput!){
  assignTaskGroup(input: $input){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{
  "input": {
    "taskId": "object",
    "groupId": "object"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "assignTaskGroup": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string"
    }
  }
}

Unassign Task

Unassign any user or group from a task.

id:
object

The ID of the task to unassign all users and groups.

Example

Request Content-Types: application/json
Query
mutation unassignTask($id: TaskID!){
  unassignTask(id: $id){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "unassignTask": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string"
    }
  }
}

Getting Results

Results can be either intermediate processing results in the form of feedback Tasks or final results produced by a Job.

Download Tasks

Initiate a file transfer to download task contents from the Onedot Platform.

ids:
object[]

The IDs of the tasks to download its contents.

Example

Request Content-Types: application/json
Query
mutation downloadTasks($ids: [TaskID!]!){
  downloadTasks(ids: $ids)
}
Variables
{
  "ids": [
    null
  ]
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "downloadTasks": [
      {
        "name": "string"
      }
    ]
  }
}

Download Results

Initiate a file transfer to download results from the Onedot Platform.

The input.

Example

Request Content-Types: application/json
Query
mutation downloadResults($input: DownloadResultsInput!){
  downloadResults(input: $input)
}
Variables
{
  "input": {
    "jobId": "object",
    "stepId": "object"
  }
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "downloadResults": [
      {
        "name": "string"
      }
    ]
  }
}

Retrieving Statistics

Statistics of product data onboardings such as the number of rows, columns, matches, etc. can be queried directly from a Job.

Query Statistics

Query statistics about a specific job.

id:
object

The ID of the job to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query job($id: JobID!, $archiving: Archiving){
  job(id: $id, archiving: $archiving){
    id
    versionId
    archived
    created
    modified
    name
    approval
    status
    files
    statistics
    steps
    tags
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "job": {
      "archived": "boolean",
      "name": "string",
      "files": [
        null
      ],
      "statistics": [
        {}
      ]
    }
  }
}

Retrieving Measurements

Measurements of product data onboardings such as precision/recall of Onedot Platform proposals can be queried directly from a Task.

Query Measurements

Query measurements about a specific task.

id:
object

The ID of the task to request.

archiving:

The strategy how to handle archiving. The default is to consider only live entities.

Example

Request Content-Types: application/json
Query
query task($id: TaskID!, $archiving: Archiving){
  task(id: $id, archiving: $archiving){
    id
    versionId
    archived
    created
    modified
    assigned
    name
    description
    file
    status
    taskType
    measurements
  }
}
Variables
{
  "archiving": "string"
}
Try it now
Response Content-Types: application/json
Response Example (200 OK)
{
  "data": {
    "task": {
      "archived": "boolean",
      "assigned": [
        null
      ],
      "name": "string",
      "description": "string",
      "measurements": [
        {}
      ]
    }
  }
}

Schema Definitions

Archiving: string

Determines how to handle entities which have have been archived.

object
LIVE_ONLY

Only consider live entities which have not been archived yet.

object
ARCHIVED_ONLY

Only consider archived entities.

object
ALL

Consider all entities regardless of archiving.

Boolean: boolean

The Boolean scalar type represents true or false.

Example
boolean

BooleanValue: object

Represents a boolean value in the Onedot Platform.

boolean:

The boolean value.

Example
{
  "boolean": "boolean"
}

CacheControlScope: string

object
PUBLIC
object
PRIVATE

CopyJobInput: object

Represents the input for copying a job and adjusting it.

jobId:

The ID of the job to copy the new job from.

name:

The job name.

fileIds:

The IDs of the input files to process.

tags:

The tags to set.

Example
{
  "jobId": "object",
  "name": "string",
  "fileIds": [
    "object"
  ],
  "tags": [
    "string"
  ]
}

CreateFolderInput: object

Represents the input for creating a folder.

parentId:

The ID of the parent folder where to create the new folder.

name:

The name of the folder.

Example
{
  "parentId": "object",
  "name": "string"
}

CreateJobInput: object

Represents the input for creating a job.

name:

The job name.

providerId:

The ID the data provider to associate.

recipeId:

The ID of the recipe to use.

stepTypeIds:

The IDs of the job steps to execute.

fileIds:

The IDs of the input files to process.

tags:

The tags to set.

Example
{
  "name": "string",
  "providerId": "object",
  "recipeId": "object",
  "stepTypeIds": [
    "object"
  ],
  "fileIds": [
    "object"
  ],
  "tags": [
    "string"
  ]
}

CreateProviderInput: object

Represents the input for creating a provider.

name:

The name of the provider.

tags:

The tags to set.

Example
{
  "name": "string",
  "tags": [
    "string"
  ]
}

CreateStepTypeInput: object

Represents the input for creating a job step.

shortName:

The short name of the step type.

longName:

The long name of the step type.

Example
{
  "shortName": "string",
  "longName": "string"
}

CreateTaskInput: object

Represents the input for creating a task.

fileId:

The ID of the source file of the task.

name:

The task name.

description:

The task description.

taskType:

The task type.

Example
{
  "fileId": "object",
  "name": "string",
  "description": "string",
  "taskType": "string"
}

DataFile: object

Represents a data file in the Onedot Platform. Data files represent data to process and transform, contrary to dictionary files which reference helper data such as mapping, synonym tables, dictionaries, etc.

id:

The ID of the file.

versionId:

The version ID of the file.

archived:

Whether the file is archived or not.

created:

The time stamp when the file has been created.

modified:

The time stamp when the file has been modified last.

creator:

The user who created the file.

modifier:

The user who modified the file last.

mimeType:

The MIME type of the file.

encoding:

The encoding of the file.

dataSet:

The data set representing the current contents.

name:

The name of the file.

folder:

The folder of the file.

size:
Int

The file size.

Example
{
  "id": "object",
  "versionId": "object",
  "archived": "boolean",
  "created": "object",
  "modified": "object",
  "creator": {
    "id": "object",
    "archived": "boolean",
    "created": "object",
    "name": "string",
    "email": "object",
    "firstName": "string",
    "lastName": "string",
    "groups": [
      {
        "id": "object",
        "archived": "boolean",
        "name": "string"
      }
    ],
    "roles": [
      {
        "roleName": "string"
      }
    ],
    "collaborators": [
      {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              null
            ]
          }
        ]
      }
    ]
  }
}

DataProvider: object

Represents a data provider in the Onedot Platform. Data providers describe entities providing input files for jobs and feature contact users or groups for collaborative task editing by several parties connected on the Onedot Platform.

id:

The ID of the provider.

versionId:

The version ID of the provider.

archived:

Whether the provider is archived or not.

created:

The time stamp when the provider has been created.

modified:

The time stamp when the provider has been modified last.

creator:

The user who created the provider.

modifier:

The user who modified the provider last.

name:

The name of the provider.

contacts:
object[]

The contacts assigned to the provider.

tags:
Tag

The tags of the provider.

Example
{
  "id": "object",
  "versionId": "object",
  "archived": "boolean",
  "created": "object",
  "modified": "object",
  "creator": {
    "id": "object",
    "archived": "boolean",
    "created": "object",
    "name": "string",
    "email": "object",
    "firstName": "string",
    "lastName": "string",
    "groups": [
      {
        "id": "object",
        "archived": "boolean",
        "name": "string"
      }
    ],
    "roles": [
      {
        "roleName": "string"
      }
    ],
    "collaborators": [
      {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              null
            ]
          }
        ]
      }
    ]
  }
}

DataSet: object

Represents a data set attached to a file, task or job step in the Onedot Platform. Data sets are immutable collections of data rows organised in columns and cells, optimised for efficient access. Any operation on data sets such as editing cells will generate a new data set, maintaining origin of data sets and their lineage. Objects such as DataFiles, DictionaryFiles and Tasks store their data in data sets.

id:

The ID of the data set.

modified:

The time stamp when the data set has been modified last.

Example
{
  "id": "object",
  "modified": "object"
}

DataSetID: object

Represents a UUID of a data set.

Example
object

DateTime: object

Represents an ISO 8601 time stamp as a string.

Example
object

DictionaryFile: object

Represents a dictionary file in the Onedot Platform. Dictionary files reference helper data such as mapping, synonym tables, dictionaries, etc., contrary to data files which represent data to process and transform.

id:

The ID of the file.

versionId:

The version ID of the file.

archived:

Whether the file is archived or not.

created:

The time stamp when the file has been created.

modified:

The time stamp when the file has been modified last.

creator:

The user who created the file.

modifier:

The user who modified the file last.

mimeType:

The MIME type of the file.

encoding:

The encoding of the file.

dataSet:

The data set representing the current contents.

name:

The name of the file.

folder:

The folder of the file.

size:
Int

The file size.

Example
{
  "id": "object",
  "versionId": "object",
  "archived": "boolean",
  "created": "object",
  "modified": "object",
  "creator": {
    "id": "object",
    "archived": "boolean",
    "created": "object",
    "name": "string",
    "email": "object",
    "firstName": "string",
    "lastName": "string",
    "groups": [
      {
        "id": "object",
        "archived": "boolean",
        "name": "string"
      }
    ],
    "roles": [
      {
        "roleName": "string"
      }
    ],
    "collaborators": [
      {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              null
            ]
          }
        ]
      }
    ]
  }
}

DownloadResultsInput: object

Represents the input for downloading results.

jobId:

The ID of the job.

stepId:

The ID of the step.

Example
{
  "jobId": "object",
  "stepId": "object"
}

EmailAddress: object

Represents an email address.

Example
object

Encoding: object

Represents a URL. NOTE: The encodings supported by the Onedot Platform can be found here.

Example
object

FileConnection: object

Represents a connection to request files using pagination.

cursor:

The cursor of the current connection. NOTE: the format of the cursor is not specified.

hasMore:

Are there more files available?

files:
object[]

The requested files, less than requested page size.

Example
{
  "cursor": "string",
  "hasMore": "boolean",
  "files": [
    null
  ]
}

FileID: object

Represents a UUID of a file.

Example
object

FileTransfer: object

Represents a file transfer in the Onedot Platform.

id:

The ID of the file to transfer.

name:

The name of the file to transfer.

mimeType:

The MIME type of the file to transfer.

url:
URL

The URL to transfer file from or to.

expiry:

The time the initiated file transfer expires.

method:

The HTTP method to use for the file transfer.

headers:

The HTTP headers to specify for the file transfer.

Example
{
  "id": "object",
  "name": "string",
  "mimeType": "object",
  "url": "object",
  "expiry": "object",
  "method": "string",
  "headers": [
    {
      "name": "string",
      "values": [
        "string"
      ]
    }
  ]
}

Float: number

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
number

FloatValue: object

Represents a float value in the Onedot Platform.

float:

The float value.

Example
{
  "float": "number"
}

Folder: object

Represents a folder in the Onedot Platform. Folders organise data files and dictionary files in a hierarchy similar to a file system.

id:

The ID of the folder.

versionId:

The version ID of the folder.

archived:

Whether the folder is archived or not.

created:

The time stamp when the folder has been created.

modified:

The time stamp when the folder has been modified last.

creator:

The user who created the folder.

modifier:

The user who modified the folder last.

parent:

The parent folder, or none if at the root.

name:

The name of the file.

size:
Int

The cumulative file size of the folder.

Example
{
  "id": "object",
  "versionId": "object",
  "archived": "boolean",
  "created": "object",
  "modified": "object",
  "creator": {
    "id": "object",
    "archived": "boolean",
    "created": "object",
    "name": "string",
    "email": "object",
    "firstName": "string",
    "lastName": "string",
    "groups": [
      {
        "id": "object",
        "archived": "boolean",
        "name": "string"
      }
    ],
    "roles": [
      {
        "roleName": "string"
      }
    ],
    "collaborators": [
      {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              null
            ]
          }
        ]
      }
    ]
  }
}

FolderConnection: object

Represents a connection to request folders using pagination.

cursor:

The cursor of the current connection. NOTE: the format of the cursor is not specified.

hasMore:

Are there more folders available?

folders:

The requested folders, less than requested page size.

Example
{
  "cursor": "string",
  "hasMore": "boolean",
  "folders": [
    {
      "id": "object",
      "versionId": "object",
      "archived": "boolean",
      "created": "object",
      "modified": "object",
      "creator": {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              {
                "roleName": "string"
              }
            ],
            "collaborators": [
              {
                "id": "object",
                "archived": "boolean",
                "created": "object",
                "name": "string",
                "email": "object",
                "firstName": "string",
                "lastName": "string",
                "groups": [
                  {}
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}

FolderID: object

Represents a UUID of a folder.

Example
object

GenericProblem: object

Represents a problem in the Onedot Platform.

id:

The ID of the problem.

severity:

The severity of the problem.

message:

The message of the problem.

Example
{
  "id": "object",
  "severity": "string",
  "message": "string"
}

GenericProblemInput: object

Represents the input for creating a task problem.

id:

The ID of the existing problem to be updated.

severity:

The severity of the problem.

status:

The ID of the task causing the problem.

Example
{
  "id": "object",
  "severity": "string",
  "status": "string"
}

GenericProblemStatus: string

Represents a severity status in the Onedot Platform.

object
ACTIVE

The active status.

object
INACTIVE

The inactive status.

Group: object

Represents a group in the Onedot Platform. Groups can be registered explicitly or maintained in a directory service such as Microsoft ActiveDirectory or any LDAP-compatible directory service.

id:

The ID of the group.

archived:

Whether the group is archived or not.

name:

The group name.

Example
{
  "id": "object",
  "archived": "boolean",
  "name": "string"
}

GroupConnection: object

Represents a connection to request groups using pagination.

cursor:

The cursor of the current connection. NOTE: the format of the cursor is not specified.

hasMore:

Are there more groups available?

groups:

The requested groups, less than requested page size.

Example
{
  "cursor": "string",
  "hasMore": "boolean",
  "groups": [
    {
      "id": "object",
      "archived": "boolean",
      "name": "string"
    }
  ]
}

GroupID: object

Represents a UUID of a group.

Example
object

HttpHeader: object

Represents a HTTP header.

name:

The name of the HTTP header.

values:

The corresponding values of the HTTP header.

Example
{
  "name": "string",
  "values": [
    "string"
  ]
}

HttpMethod: string

Represents a supported HTTP method.

object
GET

The GET HTTP method.

object
PUT

The PUT HTTP method.

Int: number

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

Example
number

IntValue: object

Represents an integer value in the Onedot Platform.

int:
Int

The integer value.

Example
{
  "int": "number"
}

Job: object

Represents a data processing job in the Onedot Platform. Jobs are the unit of execution and describe a particular instance of a data pipeline working on a set of input files and producing a set of output files. The data transformations being executed are described in a recipe and implemented in job steps.

id:

The ID of the job.

versionId:

The version ID of the job.

archived:

Whether the job is archived or not.

created:

The time stamp when the job has been created.

modified:

The time stamp when the job has been modified last.

creator:

The user who created the job.

modifier:

The user who modified the job last.

name:

The job name.

approval:

The job approval status.

status:

The workflow status of the job.

provider:

The data provider associated with the job.

files:
object[]

The job input files.

statistics:

The job statistics.

steps:

The job steps.

recipe:

The job recipe.

tags:
Tag

The tags of the job.

Example
{
  "id": "object",
  "versionId": "object",
  "archived": "boolean",
  "created": "object",
  "modified": "object",
  "creator": {
    "id": "object",
    "archived": "boolean",
    "created": "object",
    "name": "string",
    "email": "object",
    "firstName": "string",
    "lastName": "string",
    "groups": [
      {
        "id": "object",
        "archived": "boolean",
        "name": "string"
      }
    ],
    "roles": [
      {
        "roleName": "string"
      }
    ],
    "collaborators": [
      {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              null
            ]
          }
        ]
      }
    ]
  }
}

JobApproval: string

Represents a job approval in the Onedot Platform.

object
APPROVED

The approved status, signalling that the job has been approved and any results have been accepted.

object
REJECTED

The rejected status, signalling that the job has been rejected for some reason.

object
NONE

The none status, signalling that no approval has been recorded yet for the job.

JobApprovalInput: object

Represents the input for changing the job approval.

jobId:

The ID of the job to change.

approval:

The new job approval.

Example
{
  "jobId": "object",
  "approval": "string"
}

JobConnection: object

Represents a connection to request jobs using pagination.

cursor:

The cursor of the current connection. NOTE: the format of the cursor is not specified.

hasMore:

Are there more jobs available?

jobs:
Job

The requested jobs, less than requested page size.

Example
{
  "cursor": "string",
  "hasMore": "boolean",
  "jobs": [
    {
      "id": "object",
      "versionId": "object",
      "archived": "boolean",
      "created": "object",
      "modified": "object",
      "creator": {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              {
                "roleName": "string"
              }
            ],
            "collaborators": [
              {
                "id": "object",
                "archived": "boolean",
                "created": "object",
                "name": "string",
                "email": "object",
                "firstName": "string",
                "lastName": "string",
                "groups": [
                  {}
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}

JobID: object

Represents a UUID of a job.

Example
object

JobStatus: string

Represents a job status in the Onedot Platform.

object
PENDING

The pending status, signalling that the job has not been started.

object
IN_PROGRESS

The in progress status, signalling that the job is currently running.

object
COMPLETED

The completed status, signalling that the job has completed, possibly with results.

JobStatusInput: object

Represents the input for changing the job status.

jobId:

The ID of the job to change.

status:

The new job status.

Example
{
  "jobId": "object",
  "status": "string"
}

JobTagInput: object

Represents the input for changing the job tags.

jobId:

The ID of the job to change.

tags:

The tags to set.

Example
{
  "jobId": "object",
  "tags": [
    "string"
  ]
}

Measurement: object

Represents a measurement in the Onedot Platform. Measurements calculate Key Performance Indicators (KPIs) on data sets or data transformations.

measurementType:

The type of measurement.

value:
object

The measurement value.

Example
{
  "measurementType": "string"
}

MeasurementType: string

Represents a measurement type in the Onedot Platform.

object
PRECISION

The precision measurement type, see here for more details.

object
RECALL

The recall measurement type, see here for more details.

object
F1_MEASURE

The F1 measurement type, see here for more details.

MimeType: object

Represents a MIME type. NOTE: The MIME types supported by the Onedot Platform are technically open-ended, some MIME types are black-listed due to security reasons.

Example
object

MoveFileInput: object

Represents the input for moving a file.

fileId:

The ID of the file to move.

folderId:

The ID of the folder to move the file to.

Example
{
  "fileId": "object",
  "folderId": "object"
}

ProblemID: object

Represents a UUID of a problem.

Example
object

ProblemsInput: object

Represents the input for updating problems of a processing job step.

genericProblems:

The new generic problems.

taskProblems:

The new task problems.

Example
{
  "genericProblems": [
    {
      "id": "object",
      "severity": "string",
      "status": "string"
    }
  ],
  "taskProblems": [
    {
      "id": "object",
      "severity": "string",
      "taskId": "object"
    }
  ]
}

ProviderConnection: object

Represents a connection to request data providers using pagination.

cursor:

The cursor of the current connection. NOTE: the format of the cursor is not specified.

hasMore:

Are there more data providers available?

providers:

The requested data providers, less than requested page size.

Example
{
  "cursor": "string",
  "hasMore": "boolean",
  "providers": [
    {
      "id": "object",
      "versionId": "object",
      "archived": "boolean",
      "created": "object",
      "modified": "object",
      "creator": {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              {
                "roleName": "string"
              }
            ],
            "collaborators": [
              {
                "id": "object",
                "archived": "boolean",
                "created": "object",
                "name": "string",
                "email": "object",
                "firstName": "string",
                "lastName": "string",
                "groups": [
                  {}
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}

ProviderGroupContactsInput: object

Represents the input for changing the provider contacts.

providerId:

The ID of the provider to change.

groupIds:

The new provider contacts.

Example
{
  "providerId": "object",
  "groupIds": [
    "object"
  ]
}

ProviderID: object

Represents a UUID of a data provider.

Example
object

ProviderTagInput: object

Represents the input for changing the provider tags.

providerId:

The ID of the provider to change.

tags:

The tags to set.

Example
{
  "providerId": "object",
  "tags": [
    "string"
  ]
}

ProviderUserContactsInput: object

Represents the input for changing the provider contacts.

providerId:

The ID of the provider to change.

userIds:

The new provider contacts.

Example
{
  "providerId": "object",
  "userIds": [
    "object"
  ]
}

Recipe: object

Represents a job recipe in the Onedot Platform. A recipe is a declarative description of a data flow and the associated data transformations.

id:

The ID of the recipe.

versionId:

The version ID of the recipe.

archived:

Whether the recipe is archived or not.

created:

The time stamp when the recipe has been created.

modified:

The time stamp when the recipe has been modified last.

creator:

The user who created the recipe.

modifier:

The user who modified the recipe last.

name:

The name of the recipe.

Example
{
  "id": "object",
  "versionId": "object",
  "archived": "boolean",
  "created": "object",
  "modified": "object",
  "creator": {
    "id": "object",
    "archived": "boolean",
    "created": "object",
    "name": "string",
    "email": "object",
    "firstName": "string",
    "lastName": "string",
    "groups": [
      {
        "id": "object",
        "archived": "boolean",
        "name": "string"
      }
    ],
    "roles": [
      {
        "roleName": "string"
      }
    ],
    "collaborators": [
      {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              null
            ]
          }
        ]
      }
    ]
  }
}

RecipeConnection: object

Represents a connection to request recipes using pagination.

cursor:

The cursor of the current connection. NOTE: the format of the cursor is not specified.

hasMore:

Are there more recipes available?

recipes:

The requested recipes, less than requested page size.

Example
{
  "cursor": "string",
  "hasMore": "boolean",
  "recipes": [
    {
      "id": "object",
      "versionId": "object",
      "archived": "boolean",
      "created": "object",
      "modified": "object",
      "creator": {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              {
                "roleName": "string"
              }
            ],
            "collaborators": [
              {
                "id": "object",
                "archived": "boolean",
                "created": "object",
                "name": "string",
                "email": "object",
                "firstName": "string",
                "lastName": "string",
                "groups": [
                  {}
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}

RecipeID: object

Represents a UUID of a recipe.

Example
object

RenameFileInput: object

Represents the input for renaming a file.

fileId:

The ID of the file to rename.

name:

The new name of the file.

Example
{
  "fileId": "object",
  "name": "string"
}

RenameFolderInput: object

Represents the input for renaming a folder.

folderId:

The ID of the folder to rename.

name:

The new name of the folder.

Example
{
  "folderId": "object",
  "name": "string"
}

RenameJobInput: object

Represents the input for renaming a job.

jobId:

The ID of the job to rename.

name:

The new name of the job.

Example
{
  "jobId": "object",
  "name": "string"
}

RenameProviderInput: object

Represents the input for renaming a provider.

providerId:

The ID of the provider to rename.

name:

The new name of the provider.

Example
{
  "providerId": "object",
  "name": "string"
}

RenameTaskInput: object

Represents the input for renaming a task.

taskId:

The ID of the task to rename.

name:

The new name of the task.

Example
{
  "taskId": "object",
  "name": "string"
}

ResultsInput: object

Represents the input for updating results of a processing job step.

fileIds:

The IDs of result files.

taskIds:

The IDS of result tasks.

Example
{
  "fileIds": [
    "object"
  ],
  "taskIds": [
    "object"
  ]
}

Role: object

Represents a role in the Onedot Platform. Roles can be registered explicitly or maintained in a directory service such as Microsoft ActiveDirectory or any LDAP-compatible directory service.

roleName:

The role name.

Example
{
  "roleName": "string"
}

Severity: string

Represents a severity status in the Onedot Platform.

object
NONE

The none severity, signalling that no problem exists and job execution can continue.

object
INFO

The info severity, signalling that events occurred which to not impact job execution in any way.

object
WARNING

The warning severity, signalling that events occurred which might have an adverse effect on the job execution.

object
ERROR

The error severity, signalling that events occurred which prevents job execution from continue.

Statistics: object

Represents statistics in the Onedot Platform. Statistics provide information about the structure, profile and quality of data sets.

statisticsType:

The type of statistics.

value:
object

The statistics value.

Example
{
  "statisticsType": "string"
}

StatisticsType: string

Represents a statistics type in the Onedot Platform.

object
ROWS

The rows statistics type, tracking the number of rows of a data set.

object
COLUMNS

The columns statistics type, tracking the number of columns of a data set.

object
DUPLICATES

The duplicates statistics type, tracking the number of duplicate rows of a data set.

object
SKU

The sku statistics type

object
CATEGORIES

The categories statistics type

object
NEW_PRODUCTS

The new products statistics type

object
EXISTING_PRODUCTS

The existing products statistics type

object
IN_SCOPE

The in-scope statistics type

object
OUT_OF_SCOPE

The out of scope statistics type

Step: object

Represents a job step in the Onedot Platform. Job steps are the unit of data transformation and describe how a job transforms data using a recipe.

id:

The ID of the step.

stepType:

The type of the step.

status:

The workflow status of the step.

results:
object[]

The processing results.

problems:
object[]

The step problems.

statistics:

The step statistics.

Example
{
  "id": "object",
  "stepType": {
    "id": "object",
    "versionId": "object",
    "archived": "boolean",
    "created": "object",
    "modified": "object",
    "creator": {
      "id": "object",
      "archived": "boolean",
      "created": "object",
      "name": "string",
      "email": "object",
      "firstName": "string",
      "lastName": "string",
      "groups": [
        {
          "id": "object",
          "archived": "boolean",
          "name": "string"
        }
      ],
      "roles": [
        {
          "roleName": "string"
        }
      ],
      "collaborators": [
        {
          "id": "object",
          "archived": "boolean",
          "created": "object",
          "name": "string",
          "email": "object",
          "firstName": "string",
          "lastName": "string",
          "groups": [
            {
              "id": "object",
              "archived": "boolean",
              "name": "string"
            }
          ],
          "roles": [
            {
              "roleName": "string"
            }
          ],
          "collaborators": [
            {
              "id": "object",
              "archived": "boolean",
              "created": "object",
              "name": "string",
              "email": "object",
              "firstName": "string",
              "lastName": "string",
              "groups": [
                {
                  "id": "object",
                  "archived": "boolean"
                }
              ]
            }
          ]
        }
      ]
    }
  }
}

StepID: object

Represents a UUID of a step.

Example
object

StepProblemChange: object

Represents a change of job step problems in the Onedot Platform.

job:
Job

The affected job.

step:

The affected step.

problems:
object[]

The changed problems.

Example
{
  "job": {
    "id": "object",
    "versionId": "object",
    "archived": "boolean",
    "created": "object",
    "modified": "object",
    "creator": {
      "id": "object",
      "archived": "boolean",
      "created": "object",
      "name": "string",
      "email": "object",
      "firstName": "string",
      "lastName": "string",
      "groups": [
        {
          "id": "object",
          "archived": "boolean",
          "name": "string"
        }
      ],
      "roles": [
        {
          "roleName": "string"
        }
      ],
      "collaborators": [
        {
          "id": "object",
          "archived": "boolean",
          "created": "object",
          "name": "string",
          "email": "object",
          "firstName": "string",
          "lastName": "string",
          "groups": [
            {
              "id": "object",
              "archived": "boolean",
              "name": "string"
            }
          ],
          "roles": [
            {
              "roleName": "string"
            }
          ],
          "collaborators": [
            {
              "id": "object",
              "archived": "boolean",
              "created": "object",
              "name": "string",
              "email": "object",
              "firstName": "string",
              "lastName": "string",
              "groups": [
                {
                  "id": "object",
                  "archived": "boolean",
                  "name": "string"
                }
              ]
            }
          ]
        }
      ]
    }
  }
}

StepResultChange: object

Represents a step result change in the Onedot Platform.

job:
Job

The affected job.

step:

The affected step.

results:
object[]

The changed processing results.

Example
{
  "job": {
    "id": "object",
    "versionId": "object",
    "archived": "boolean",
    "created": "object",
    "modified": "object",
    "creator": {
      "id": "object",
      "archived": "boolean",
      "created": "object",
      "name": "string",
      "email": "object",
      "firstName": "string",
      "lastName": "string",
      "groups": [
        {
          "id": "object",
          "archived": "boolean",
          "name": "string"
        }
      ],
      "roles": [
        {
          "roleName": "string"
        }
      ],
      "collaborators": [
        {
          "id": "object",
          "archived": "boolean",
          "created": "object",
          "name": "string",
          "email": "object",
          "firstName": "string",
          "lastName": "string",
          "groups": [
            {
              "id": "object",
              "archived": "boolean",
              "name": "string"
            }
          ],
          "roles": [
            {
              "roleName": "string"
            }
          ],
          "collaborators": [
            {
              "id": "object",
              "archived": "boolean",
              "created": "object",
              "name": "string",
              "email": "object",
              "firstName": "string",
              "lastName": "string",
              "groups": [
                {
                  "id": "object",
                  "archived": "boolean",
                  "name": "string"
                }
              ]
            }
          ]
        }
      ]
    }
  }
}

StepType: object

Represents a job step type in the Onedot Platform. Step types describe the possible data processing steps of jobs in the Onedot Platform.

id:

The ID of the step type.

versionId:

The version ID of the step type.

archived:

Whether the step type is archived or not.

created:

The time stamp when the step type has been created.

modified:

The time stamp when the step type has been modified last.

creator:

The user who created the step type.

modifier:

The user who modified the step type last.

name:

The name of the step type.

Example
{
  "id": "object",
  "versionId": "object",
  "archived": "boolean",
  "created": "object",
  "modified": "object",
  "creator": {
    "id": "object",
    "archived": "boolean",
    "created": "object",
    "name": "string",
    "email": "object",
    "firstName": "string",
    "lastName": "string",
    "groups": [
      {
        "id": "object",
        "archived": "boolean",
        "name": "string"
      }
    ],
    "roles": [
      {
        "roleName": "string"
      }
    ],
    "collaborators": [
      {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              null
            ]
          }
        ]
      }
    ]
  }
}

StepTypeConnection: object

Represents a connection to request step types using pagination.

cursor:

The cursor of the current connection. NOTE: the format of the cursor is not specified.

hasMore:

Are there more step types available?

stepTypes:

The requested step types, less than requested page size.

Example
{
  "cursor": "string",
  "hasMore": "boolean",
  "stepTypes": [
    {
      "id": "object",
      "versionId": "object",
      "archived": "boolean",
      "created": "object",
      "modified": "object",
      "creator": {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              {
                "roleName": "string"
              }
            ],
            "collaborators": [
              {
                "id": "object",
                "archived": "boolean",
                "created": "object",
                "name": "string",
                "email": "object",
                "firstName": "string",
                "lastName": "string",
                "groups": [
                  {}
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}

StepTypeID: object

Represents a UUID of a step type.

Example
object

String: string

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.

StringValue: object

Represents a string value in the Onedot Platform.

string:

The string value.

Example
{
  "string": "string"
}

Subscription: object

fileUploaded:
object

Triggered when a file has been uploaded.

taskAssigned:

Triggered when the returned task has been assigned or reassigned.

taskStatusChanged:

Triggered when the returned task changed its status.

jobStatusChanged:
Job

Triggered when the returned job changed its status.

jobStarted:
Job

Triggered when the returned job started.

jobFinished:
Job

Triggered when the returned job finished.

jobApprovalChanged:
Job

Triggered when the returned job changed its approval.

stepResultChanged:

Triggered when processing results changed on a job step.

stepProblemChanged:

Triggered when problems changed on a job step.

Example
{
  "taskAssigned": {
    "id": "object",
    "versionId": "object",
    "archived": "boolean",
    "created": "object",
    "modified": "object",
    "creator": {
      "id": "object",
      "archived": "boolean",
      "created": "object",
      "name": "string",
      "email": "object",
      "firstName": "string",
      "lastName": "string",
      "groups": [
        {
          "id": "object",
          "archived": "boolean",
          "name": "string"
        }
      ],
      "roles": [
        {
          "roleName": "string"
        }
      ],
      "collaborators": [
        {
          "id": "object",
          "archived": "boolean",
          "created": "object",
          "name": "string",
          "email": "object",
          "firstName": "string",
          "lastName": "string",
          "groups": [
            {
              "id": "object",
              "archived": "boolean",
              "name": "string"
            }
          ],
          "roles": [
            {
              "roleName": "string"
            }
          ],
          "collaborators": [
            {
              "id": "object",
              "archived": "boolean",
              "created": "object",
              "name": "string",
              "email": "object",
              "firstName": "string",
              "lastName": "string",
              "groups": [
                {
                  "id": "object",
                  "archived": "boolean"
                }
              ]
            }
          ]
        }
      ]
    }
  }
}

Tag: object

Represents a tag in the Onedot Platform. Tags are a light-weight mechanism to attach labels and other information to entities for the purpose of categorisation, searching and filtering them in the Onedot Platform.

tagName:

The tag name.

Example
{
  "tagName": "string"
}

Task: object

Represents a task in the Onedot Platform. Tasks are a means to collaborate on data sets, approve proposals by Onedot, discuss and exchange information on the meaning of input data, product data model and data transformations to be performed.

id:

The ID of the task.

versionId:

The version ID of the task.

archived:

Whether the task is archived or not.

created:

The time stamp when the task has been created.

modified:

The time stamp when the task has been modified last.

creator:

The user who created the task.

modifier:

The user who modified the task last.

assigned:
object[]

The users or groups the task is assigned to.

name:

The task name.

description:

The task description.

file:
object

The source file this task has been created on.

dataSet:

The data set representing the current task contents.

status:

The workflow status of the task.

taskType:

The type of the task.

measurements:

The measurements performed on the task.

Example
{
  "id": "object",
  "versionId": "object",
  "archived": "boolean",
  "created": "object",
  "modified": "object",
  "creator": {
    "id": "object",
    "archived": "boolean",
    "created": "object",
    "name": "string",
    "email": "object",
    "firstName": "string",
    "lastName": "string",
    "groups": [
      {
        "id": "object",
        "archived": "boolean",
        "name": "string"
      }
    ],
    "roles": [
      {
        "roleName": "string"
      }
    ],
    "collaborators": [
      {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              null
            ]
          }
        ]
      }
    ]
  }
}

TaskConnection: object

Represents a connection to request tasks using pagination.

cursor:

The cursor of the current connection. NOTE: the format of the cursor is not specified.

hasMore:

Are there more tasks available?

tasks:

The requested tasks, less than requested page size.

Example
{
  "cursor": "string",
  "hasMore": "boolean",
  "tasks": [
    {
      "id": "object",
      "versionId": "object",
      "archived": "boolean",
      "created": "object",
      "modified": "object",
      "creator": {
        "id": "object",
        "archived": "boolean",
        "created": "object",
        "name": "string",
        "email": "object",
        "firstName": "string",
        "lastName": "string",
        "groups": [
          {
            "id": "object",
            "archived": "boolean",
            "name": "string"
          }
        ],
        "roles": [
          {
            "roleName": "string"
          }
        ],
        "collaborators": [
          {
            "id": "object",
            "archived": "boolean",
            "created": "object",
            "name": "string",
            "email": "object",
            "firstName": "string",
            "lastName": "string",
            "groups": [
              {
                "id": "object",
                "archived": "boolean",
                "name": "string"
              }
            ],
            "roles": [
              {
                "roleName": "string"
              }
            ],
            "collaborators": [
              {
                "id": "object",
                "archived": "boolean",
                "created": "object",
                "name": "string",
                "email": "object",
                "firstName": "string",
                "lastName": "string",
                "groups": [
                  {}
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}

TaskGroupAssignmentInput: object

Represents the input for assigning a group to a task.

taskId:

The ID of the task to change.

groupId:

The new assigned group.

Example
{
  "taskId": "object",
  "groupId": "object"
}

TaskID: object

Represents a UUID of a task.

Example
object

TaskProblem: object

Represents a task problem in the Onedot Platform. A task problem is raised by the Onedot Platform if a problem has been detected with the task, its workflow state or the consistency or validity of the task data set.

id:

The ID of the problem.

severity:

The severity of the problem.

task:

The task causing the problem.

message:

The message of the problem.

Example
{
  "id": "object",
  "severity": "string",
  "task": {
    "id": "object",
    "versionId": "object",
    "archived": "boolean",
    "created": "object",
    "modified": "object",
    "creator": {
      "id": "object",
      "archived": "boolean",
      "created": "object",
      "name": "string",
      "email": "object",
      "firstName": "string",
      "lastName": "string",
      "groups": [
        {
          "id": "object",
          "archived": "boolean",
          "name": "string"
        }
      ],
      "roles": [
        {
          "roleName": "string"
        }
      ],
      "collaborators": [
        {
          "id": "object",
          "archived": "boolean",
          "created": "object",
          "name": "string",
          "email": "object",
          "firstName": "string",
          "lastName": "string",
          "groups": [
            {
              "id": "object",
              "archived": "boolean",
              "name": "string"
            }
          ],
          "roles": [
            {
              "roleName": "string"
            }
          ],
          "collaborators": [
            {
              "id": "object",
              "archived": "boolean",
              "created": "object",
              "name": "string",
              "email": "object",
              "firstName": "string",
              "lastName": "string",
              "groups": [
                {
                  "id": "object"
                }
              ]
            }
          ]
        }
      ]
    }
  }
}

TaskProblemInput: object

Represents the input for creating a task problem.

id:

The ID of the existing problem to be updated.

severity:

The severity of the problem.

taskId:

The ID of the task causing the problem.

Example
{
  "id": "object",
  "severity": "string",
  "taskId": "object"
}

TaskStatus: string

Represents a workflow status of a task in the Onedot Platform.

object
DRAFTING

The drafting status, signalling that the task is still drafting and needs finalising before being assigned.

object
PENDING

The pending status, signalling that the task is ready to be worked on.

object
IN_PROGRESS

The in progress status, signalling that the task is being worked on.

object
RESOLVED

The resolved status, signalling that work on the task has been completed.

object
CLOSED

The closed status, signalling that task has been processed and closed.

object
REJECTED

The rejected status, signalling that the task has been rejected for some reason.

TaskStatusInput: object

Represents the input for changing the task status.

taskId:

The ID of the task to change.

status:

The new task status.

Example
{
  "taskId": "object",
  "status": "string"
}

TaskType: string

Represents a type of task in the Onedot Platform. Several types of tasks are supported; currently only feedback task are available. Feedback task are issued by Onedot to seek approval of proposed data manipulations and offer users to correct and override those proposals.

object
FEEDBACK

The feedback task type.

TaskUserAssignmentInput: object

Represents the input for assigning a user to a task.

taskId:

The ID of the task to change.

userId:

The new assigned user.

Example
{
  "taskId": "object",
  "userId": "object"
}

URL: object

Represents a URL.

Example
object

UpdateJobStepInput: object

Represents the input for updating one step of a processing job.

jobId:

The ID of the job to change.

stepId:

The ID of the step.

status:

The new step status.

results:

The new results.

problems:

The new problems.

Example
{
  "jobId": "object",
  "stepId": "object",
  "status": "string",
  "results": {
    "fileIds": [
      "object"
    ],
    "taskIds": [
      "object"
    ]
  },
  "problems": {
    "genericProblems": [
      {
        "id": "object",
        "severity": "string",
        "status": "string"
      }
    ],
    "taskProblems": [
      {
        "id": "object",
        "severity": "string",
        "taskId": "object"
      }
    ]
  }
}

Upload: object

The Upload scalar type represents a file upload.

Example
object

UploadFileInput: object

Represents a statistics type in the Onedot Platform.

name:

The name of the file.

folderId:

The ID of the folder where to upload the file to.

fileId:

The ID of the file where to upload a new version to.

mimeType:

The MIME type of the file.

encoding:

The encoding of the file.

Example
{
  "name": "string",
  "folderId": "object",
  "fileId": "object",
  "mimeType": "object",
  "encoding": "object"
}

User: object

Represents a user in the Onedot Platform. Users can be registered by specifying email and password, or by federated login using identity providers such as Google, Microsoft or others. Alternatively, users can also be maintained in a directory service such as Microsoft ActiveDirectory or any LDAP-compatible directory service.

id:

The ID of the user.

archived:

Whether the user is archived or not.

created:

The time stamp when the user has been created.

name:

The user name.

email:

The email of the user.

firstName:

The first name of the user.

lastName:

The last name of the user.

groups:

The groups the user is a member of.

roles:

The roles assigned to the user.

collaborators:

The users this user is collaborating with.

Example
{
  "id": "object",
  "archived": "boolean",
  "created": "object",
  "name": "string",
  "email": "object",
  "firstName": "string",
  "lastName": "string",
  "groups": [
    {
      "id": "object",
      "archived": "boolean",
      "name": "string"
    }
  ],
  "roles": [
    {
      "roleName": "string"
    }
  ],
  "collaborators": [
    {
      "id": "object",
      "archived": "boolean",
      "created": "object",
      "name": "string",
      "email": "object",
      "firstName": "string",
      "lastName": "string",
      "groups": [
        {
          "id": "object",
          "archived": "boolean",
          "name": "string"
        }
      ],
      "roles": [
        {
          "roleName": "string"
        }
      ],
      "collaborators": [
        {
          "id": "object",
          "archived": "boolean",
          "created": "object",
          "name": "string",
          "email": "object",
          "firstName": "string",
          "lastName": "string",
          "groups": [
            {
              "id": "object",
              "archived": "boolean",
              "name": "string"
            }
          ],
          "roles": [
            {
              "roleName": "string"
            }
          ],
          "collaborators": [
            {
              "id": "object",
              "archived": "boolean",
              "created": "object"
            }
          ]
        }
      ]
    }
  ]
}

UserConnection: object

Represents a connection to request users using pagination.

cursor:

The cursor of the current connection. NOTE: the format of the cursor is not specified.

hasMore:

Are there more users available?

users:

The requested users, less than requested page size.

Example
{
  "cursor": "string",
  "hasMore": "boolean",
  "users": [
    {
      "id": "object",
      "archived": "boolean",
      "created": "object",
      "name": "string",
      "email": "object",
      "firstName": "string",
      "lastName": "string",
      "groups": [
        {
          "id": "object",
          "archived": "boolean",
          "name": "string"
        }
      ],
      "roles": [
        {
          "roleName": "string"
        }
      ],
      "collaborators": [
        {
          "id": "object",
          "archived": "boolean",
          "created": "object",
          "name": "string",
          "email": "object",
          "firstName": "string",
          "lastName": "string",
          "groups": [
            {
              "id": "object",
              "archived": "boolean",
              "name": "string"
            }
          ],
          "roles": [
            {
              "roleName": "string"
            }
          ],
          "collaborators": [
            {
              "id": "object",
              "archived": "boolean",
              "created": "object",
              "name": "string",
              "email": "object",
              "firstName": "string",
              "lastName": "string",
              "groups": [
                {
                  "id": "object",
                  "archived": "boolean",
                  "name": "string"
                }
              ],
              "roles": [
                {
                  "roleName": "string"
                }
              ],
              "collaborators": [
                null
              ]
            }
          ]
        }
      ]
    }
  ]
}

UserID: object

Represents a UUID of a user.

Example
object

VersionID: object

Represents a UUID of a version of an entity.

Example
object