Workflow

Integrate your OneUptime project with rest of your software stack.

Permissions

Your API Token needs permissions to create, update, read or delete this resource. If you do not have permissions to make a request a 4xx status will be sent as response.

Read Permissions

You need one of these permissions to read Workflow:

  • Name
    ProjectOwner
    Type
    Project Owner
    Description

    Owner of this project. Manages billing, inviting other admins to this project, and can delete this project.

  • Name
    ProjectAdmin
    Type
    Project Admin
    Description

    Admin of this project. Manages team members in this project, however cannot manage billing or delete this project.

  • Name
    ProjectMember
    Type
    Project Member
    Description

    Member of this project. Can view most resources unless restricted.

  • Name
    CanReadWorkflow
    Type
    Can Read Workflow
    Description

    This permission can read Workflow in this project.

Create Permissions

You need one of these permissions to create Workflow:

  • Name
    ProjectOwner
    Type
    Project Owner
    Description

    Owner of this project. Manages billing, inviting other admins to this project, and can delete this project.

  • Name
    ProjectAdmin
    Type
    Project Admin
    Description

    Admin of this project. Manages team members in this project, however cannot manage billing or delete this project.

  • Name
    CanCreateWorkflow
    Type
    Can Create Workflow
    Description

    This permission can create Workflow in this project.

  • Name
    ProjectMember
    Type
    Project Member
    Description

    Member of this project. Can view most resources unless restricted.

Update Permissions

You need one of these permissions to update Workflow:

  • Name
    ProjectOwner
    Type
    Project Owner
    Description

    Owner of this project. Manages billing, inviting other admins to this project, and can delete this project.

  • Name
    ProjectAdmin
    Type
    Project Admin
    Description

    Admin of this project. Manages team members in this project, however cannot manage billing or delete this project.

  • Name
    CanDeleteWorkflow
    Type
    Can Delete Workflow
    Description

    This permission can delete Workflow in this project.

  • Name
    CanEditWorkflow
    Type
    Can Edit Workflow
    Description

    This permission can edit Workflow in this project.

Delete Permissions

You need one of these permissions to delete Workflow:

  • Name
    ProjectOwner
    Type
    Project Owner
    Description

    Owner of this project. Manages billing, inviting other admins to this project, and can delete this project.

  • Name
    ProjectAdmin
    Type
    Project Admin
    Description

    Admin of this project. Manages team members in this project, however cannot manage billing or delete this project.

  • Name
    CanDeleteWorkflow
    Type
    Can Delete Workflow
    Description

    This permission can delete Workflow in this project.

  • Name
    ProjectMember
    Type
    Project Member
    Description

    Member of this project. Can view most resources unless restricted.

The Workflow model

Properties

  • Name
    _id
    Type
    Object ID
    Description

    ID of this object

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  ProjectOwner or ProjectAdmin or CanDeleteWorkflow or CanEditWorkflow
  • Name
    createdAt
    Type
    Date
    Description

    Date and Time when the object was created.

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  ProjectOwner or ProjectAdmin or CanDeleteWorkflow or CanEditWorkflow
  • Name
    updatedAt
    Type
    Date
    Description

    Date and Time when the object was updated.

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  ProjectOwner or ProjectAdmin or CanDeleteWorkflow or CanEditWorkflow
  • Name
    project
    Type
    Entity
    Description

    Relation to Project Resource in which this object belongs

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  This property cannot be updated.
  • Name
    projectId
    Type
    Object ID (Required)
    Description

    ID of your OneUptime Project in which this object belongs

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  This property cannot be updated.
  • Name
    name
    Type
    Text (Required)
    Description

    Any friendly name of this object

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  ProjectOwner or ProjectAdmin or CanDeleteWorkflow or CanEditWorkflow
  • Name
    slug
    Type
    Slug (Required)
    Description

    Friendly globally unique name for your object

    Permissions to Create:  This property is autogenerated.
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  This property cannot be updated.
  • Name
    description
    Type
    Long Text
    Description

    Friendly description that will help you remember

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  ProjectOwner or ProjectAdmin or CanDeleteWorkflow or CanEditWorkflow
  • Name
    createdByUser
    Type
    Entity
    Description

    Relation to User who created this object (if this object was created by a User)

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  This property cannot be updated.
  • Name
    createdByUserId
    Type
    Object ID
    Description

    User ID who created this object (if this object was created by a User)

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  This property cannot be updated.
  • Name
    isEnabled
    Type
    Boolean
    Description

    Is this workflow enabled?

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  ProjectOwner or ProjectAdmin or CanDeleteWorkflow or CanEditWorkflow
  • Name
    graph
    Type
    JSON
    Description

    Workflow Graph in JSON. Ideally, create this via UI and not via API.

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  ProjectOwner or ProjectAdmin or CanDeleteWorkflow or CanEditWorkflow
  • Name
    labels
    Type
    Entity Array
    Description

    Relation to Labels Array where this object is categorized in.

    Permissions to Create:  ProjectOwner or ProjectAdmin or CanCreateWorkflow or ProjectMember
    Permissions to Read:  ProjectOwner or ProjectAdmin or ProjectMember or CanReadWorkflow
    Permissions to Update:  ProjectOwner or ProjectAdmin or CanDeleteWorkflow or CanEditWorkflow

GET or POST/api/workflow/get-list

List

This endpoint allows you to retrieve a paginated list of all your Workflow. By default, a maximum of ten Workflow are shown per page.

Optional Query Params

  • Limit
    limit
    Type
    number
    Description

    Number of objects to fetch. By default 10, you can increase this count up to 100

  • Skip
    skip
    Type
    number
    Description

    Number of objects to skip. This can be useful in pagination

Optional Request Body

  • Query
    query
    Type
    query
    Description

    If you would like to filter on Workflow. You can specify include a query here. For more information, please check out writing queries here.

  • Select
    select
    Type
    select
    Description

    By default you will only retrieve ID of objects, to retrieve more fields you need to select them. For more information, please check how to select here.

  • Sort
    sort
    Type
    sort
    Description

    Objects will be sorted based on created date by default. You can change the sort order by passing please check how to select here.

Example List Request

POST
/api/workflow/get-list?skip=0&limit=10
Request Headers: 

ApiKey: {secret-api-key}
ProjectID: {project-id}

Request Body:

{
    "select": {
        // select object  (optional, if left optional it'll only fetch ID). 
    },
    "query": {
        // query object (optional, if left optional it'll select everything)
    },
    "sort": {
        // sort object (optional)
    }
}

Example List Response

{
    "count": 10,
    "limit": 10,
    "skip": 0,
    "data": [
        {
            "_id": "p39d997a-026c-44b2-8b02-7b2814d886d2",
            // ...
        },
        {
            "_id": "l34e743e-1af5-4b0a-998f-1d421c22f7a1",
            // ...
        },
        {
            "_id": "6a5aa129-0b3e-45b7-a7f6-b4b6df338a19",
            // ...
        }
    ]
}

GET or POST/api/workflow/:id/get-item

Get item by ID

This endpoint allows you to retrieve Workflow by ID.

Required Query Params

  • ID
    id
    Type
    text
    Description

    ID of the Object

Optional Request Body

  • Select
    select
    Type
    select
    Description

    By default you will only retrieve ID of objects, to retrieve more fields you need to select them. For more information, please check how to select here.

Example Item Request

POST
/api/workflow/3599ee69-43a7-42d7/get-item
Request Headers: 

ApiKey: {secret-api-key}
ProjectID: {project-id}

Request Body: 

{
    "select": {
        // select object  (optional, if left optional it'll only fetch ID). 
    },
}

Example Item Response

{
    "_id": "3599ee69-43a7-42d7",
    // ... other object fields.
}

POST/api/workflow/count

Count

This endpoint allows you to retrieve the count of all your Workflow.

Optional Request Body

Example Count Request

POST
/api/workflow/count
Request Headers: 

ApiKey: {secret-api-key}
ProjectID: {project-id}

Request Body:

{
    "query": {
        // query object (optional, if left optional it'll select everything)
    },
}

Example Count Response

{
    "count": 107
}

POST/api/workflow

Create Workflow

This endpoint allows you to create a new object.

Request Body

  • Data
    data
    Type
    JSON
    Description

    Object to update as JSON

Example Create Request

POST
/api/workflow
Request Headers: 

ApiKey: {secret-api-key}
ProjectID: {project-id}

Request Body:

{
    "data": {
        // properties to update as JSON.
    }
}

Example Create Response

{
    "_id": "xxx-xxx-xxxx-xxxx",
    // other object fields.
}

PUT/api/workflow/:id

Update by ID

This endpoint allows you to update object by its ID.

Request Body

  • Data
    data
    Type
    JSON
    Description

    Object to update as JSON

Example Update Request

PUT
/api/workflow/3599ee69-43a7-42d7
Request Headers: 

ApiKey: {secret-api-key}
ProjectID: {project-id}

Request Body:

{
    "data": {
        // properties to update as JSON.
    }
}

Example Update Response

{}

DELETE/api/workflow/:id

Delete by ID

This endpoint allows you to delete object by its ID.

Example Delete Request

DELETE
/api/workflow/3599ee69-43a7-42d7
Request Headers: 

ApiKey: {secret-api-key}
ProjectID: {project-id}

Example Delete Response

{}