NAV

Workstream API Documentation

Welcome to the generated API reference. Get Postman Collection

Approvals

APIs to get and send approvals.

Get all approvals

Returns a list of approvals you can view.

key: The access key. Any approval APIs that reference a key must use this. It is unique per approver.
status: 1 (pending), 2 (approved), -1 (deleted/canceled)
owner: The user object who created this approval.
owner: The user object who created this approval.
object_type: Currently always 1 (asset).
template: Contains the template object if this is a templated approval, else will return null.
current_stage_id: The current stage of a template (0 if there is no template).
object: The object up for approval (currently always an asset).
proof: Currently always null.
settings: Currently always null.
current_stage_responses: All the current approvers. If it is a templated approval, it will only display the approvers on the current stage..
current_stage_responses[0][response]: The approver's response. 1 (pending), 2 (approved), 3 (rejected), 4 (approved with changes).
current_stage_responses[0][user_id]: User ID, if applicable.
current_stage_responses[0][user_email]: Email, if applicable.
current_stage_responses[0][approver_user]: Approver user, if applicable. If this is a team approver and no response has yet been logged, this will contain empty data. If it is a team approver and a user has responded, it will contain the user who responded.
current_stage_responses[0][secondary_approver]: This will be null unless it is a team approval, in which case it will contain the team object.
current_stage_responses[0][secondary_approver_id]: Team ID, if applicable.
current_stage_responses[0][secondary_approver_type]: Currently either null (user/guest approver) or 1 (team approver).
current_stage_responses[0][stage]: Currently always null.
current_approver: Currently always null.
all_stage_responses: Currently always null.
is_approver: Whether or not the current user can view the options to approve/reject/approve with changes. If this is false, the current user is not involved in the process via the given key, and can view but not respond to the approval.
comments: The original comments sent out with the approval.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/approvals?sort=updated_at&sortdir=desc&filter[template_parent_id][]=31957&offset=1615257564&limit=75" \

Example response:

[
    {
        "key": "RCg3Udo%2A34erRZUQDJ-noB5MjMmhA2sxl6eJOhTHIfg%2C",
        "type": "approval",
        "status": 1,
        "owner": {
            "id": "144859",
            "type": "user",
            "username": "someadmin",
            "firstname": "Some",
            "lastname": "Admin",
            "email": "admin@example.com",
            "role": 1,
            "status": "active",
            "profile_image": "https:\/\/example.com\/profileimage.png",
            "color": "#0D39DA"
        },
        "object_type": 1,
        "object_version": 1,
        "template": null,
        "current_stage_id": 0,
        "object": {
            "id": "37719307",
            "type": "asset",
            "user": {
                "type": "user",
                "id": "144859",
                "email": "admin@example.com",
                "name": "Some Admin",
                "username": "someadmin",
                "status": "active"
            },
            "folder_id": "1366944",
            "version": "1",
            "media_url": "https:\/\/example.com\/mediaurl.jpg",
            "filename": "admin-image.jpg",
            "file_type": ".jpg",
            "thumburl": {
                "thumb100": "https:\/\/example.com\/thumb100.jpg",
                "thumb150": "https:\/\/example.com\/thumb150.jpg",
                "thumb220": "https:\/\/example.com\/thumb220.jpg"
            },
            "type_id": "1",
            "hide_preview": false
        },
        "proof": null,
        "settings": null,
        "current_stage_responses": [
            {
                "id": 726,
                "type": "approvalresponse",
                "approval_id": 374,
                "stage_id": 0,
                "response": 1,
                "user_id": 144950,
                "user_email": "contributor@example.com",
                "approver_user": {
                    "id": "144950",
                    "type": "user",
                    "username": "somecontributor",
                    "firstname": "Some",
                    "lastname": "Contributor",
                    "email": "contributor@example.com",
                    "role": 4,
                    "status": "active",
                    "profile_image": false,
                    "color": "#3E743F"
                },
                "secondary_approver": null,
                "secondary_approver_id": null,
                "secondary_approver_type": null,
                "stage": null,
                "escalated_approver": 0,
                "created_at": "1493158417",
                "updated_at": "1493158417"
            }
        ],
        "current_approver": null,
        "all_stage_responses": null,
        "is_approver": true,
        "editable": true,
        "created_at": "1493158417",
        "updated_at": "1493158417",
        "comments": "Example comment or an empty string."
    }
]

HTTP Request

GET workstream/approvals

Parameters

Parameter Type Status Description
sort string optional status, created_at or updated_at
sortdir string optional Only alphabetic characters allowed Maximum: 4 asc or desc
filter array optional An array of arrays with the following keys: owner_id, status, object_type, object_id, object_version, template_parent_id and/or approver
offset numeric optional Minimum: 0
limit numeric optional Minimum: 1 Maximum: 100

Get count of pending approvals

Returns an array of applicable counts for approvals. Currently just returns "pending_count", which is the number of approvals currently pending the logged-in user's approval.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/approvals/counts" \

Example response:

{
    "pending_count": 2
}

HTTP Request

GET workstream/approvals/counts

Get approval by key

Get an approval by a given key. If the key is associated wtih an approver, you will be viewing the data as that approver. If the key is a default view-only key, it will only be accessible if you are the owner of the approval, or if you are an admin.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/approvals/{key}" \

Example response:

{
    "key": "CCECeNaL4MG38vvdsTckFcliDsj2ssZvOdg%2AC09fAp0%2C",
    "type": "approval",
    "status": 1,
    "owner": {
        "id": "144859",
        "type": "user",
        "username": "admin",
        "firstname": "Admin",
        "lastname": "User",
        "email": "admin@user.com",
        "role": 1,
        "status": "active",
        "profile_image": "https:\/\/example.com\/profile.jpg",
        "color": "#1DA0D6",
        "timezone": "America\/Argentina\/Buenos_Aires",
        "language": ""
    },
    "object_type": 1,
    "object_version": 1,
    "template": null,
    "current_stage_id": 0,
    "object": {
        "id": "37719284",
        "type": "asset",
        "type_id": "1",
        "status": "inactive",
        "filename": "sample image.jpg",
        "name": "sample image.jpg",
        "filesize": "0.11",
        "width": "500",
        "height": "305",
        "description": "",
        "filetype": "jpg",
        "colorspace": "RGB",
        "version": "1",
        "datecreated": "2017-04-05 06:52:04",
        "date_created_unix": "1491425524",
        "datemodified": "2017-04-05 06:52:12",
        "date_modified_unix": "1491425532",
        "datecapturedUnix": null,
        "datecaptured": null,
        "mediaUrl": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/example.com\/sample.jpg','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/example.com\/sample.jpg\" border=0 alt=\"sample image.jpg\" title=\"sample image.jpg\">",
        "hiResMediaUrl": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/example.com\/sample.jpg','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/example.com\/sample.jpg\" border=0 alt=\"sample image.jpg\" title=\"sample image.jpg\">",
        "numExif": 0,
        "numXmp": 0,
        "numComments": 0,
        "pagecount": 0,
        "folder": {
            "type": "folder",
            "id": "1366948",
            "name": "Workstream Assets",
            "properties": []
        },
        "user": {
            "type": "user",
            "id": "144859",
            "email": "admin@user.com",
            "name": "Admin User",
            "username": "admin",
            "status": "active"
        },
        "thumbnailurls": [
            {
                "size": 100,
                "url": "https:\/\/example.com\/sample.jpg"
            },
            {
                "size": 150,
                "url": "https:\/\/example.com\/sample.jpg"
            },
            {
                "size": 220,
                "url": "https:\/\/example.com\/sample.jpg"
            },
            {
                "size": 310,
                "url": "https:\/\/example.com\/sample.jpg"
            },
            {
                "size": 550,
                "url": "https:\/\/example.com\/sample.jpg",
                "previewurls": []
            },
            {
                "size": 1280,
                "url": "https:\/\/example.com\/sample.jpg"
            }
        ],
        "numRelated": 0,
        "readonly": 0,
        "readonlynext": 0,
        "onhold": 0,
        "metadata": {
            "xmp": {
                "type": "assetxmp"
            },
            "exif": {
                "type": "assetexif"
            },
            "required": [],
            "active_fields": [
                {
                    "field": "headline",
                    "field_name": "Headline\/Name",
                    "value": "",
                    "required": "0"
                },
                {
                    "field": "caption",
                    "field_name": "Caption\/Description",
                    "value": "",
                    "required": "0"
                },
                {
                    "field": "city",
                    "field_name": "City",
                    "value": "",
                    "required": "0"
                },
                {
                    "field": "state",
                    "field_name": "Province\/State",
                    "value": "",
                    "required": "0"
                },
                {
                    "field": "source",
                    "field_name": "Source",
                    "value": "",
                    "required": "0"
                },
                {
                    "field": "byline",
                    "field_name": "Photographer",
                    "value": "",
                    "required": "0"
                },
                {
                    "field": "keyword",
                    "field_name": "Keywords",
                    "value": "",
                    "required": "0"
                }
            ]
        }
    },
    "proof": null,
    "settings": {
        "2": {
            "id": 7389,
            "approval_id": 457,
            "stage_id": 0,
            "type": 2,
            "value": "0",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "3": {
            "id": 7391,
            "approval_id": 457,
            "stage_id": 0,
            "type": 3,
            "value": "0",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "6": {
            "id": 7393,
            "approval_id": 457,
            "stage_id": 0,
            "type": 6,
            "value": "1",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "10": {
            "id": 7392,
            "approval_id": 457,
            "stage_id": 0,
            "type": 10,
            "value": "1",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "11": {
            "id": 7394,
            "approval_id": 457,
            "stage_id": 0,
            "type": 11,
            "value": "0",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "12": {
            "id": 7395,
            "approval_id": 457,
            "stage_id": 0,
            "type": 12,
            "value": "0",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "13": {
            "id": 7390,
            "approval_id": 457,
            "stage_id": 0,
            "type": 13,
            "value": "0",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "14": {
            "id": 7396,
            "approval_id": 457,
            "stage_id": 0,
            "type": 14,
            "value": "0",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "15": {
            "id": 7397,
            "approval_id": 457,
            "stage_id": 0,
            "type": 15,
            "value": "0",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "16": {
            "id": 7398,
            "approval_id": 457,
            "stage_id": 0,
            "type": 16,
            "value": "0",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "17": {
            "id": 7399,
            "approval_id": 457,
            "stage_id": 0,
            "type": 17,
            "value": "1",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "18": {
            "id": 7400,
            "approval_id": 457,
            "stage_id": 0,
            "type": 18,
            "value": "2",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "19": {
            "id": 7401,
            "approval_id": 457,
            "stage_id": 0,
            "type": 19,
            "value": "1",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "21": {
            "id": 7402,
            "approval_id": 457,
            "stage_id": 0,
            "type": 21,
            "value": "0",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        "22": {
            "id": 7403,
            "approval_id": 457,
            "stage_id": 0,
            "type": 22,
            "value": "<p>Message set from ad-hoc approval.<\/p>",
            "data": null,
            "created_at": "1504028179",
            "updated_at": "1504028884"
        }
    },
    "current_stage_responses": [
        {
            "id": 919,
            "type": "approvalresponse",
            "approval_id": 457,
            "stage_id": 0,
            "response": 1,
            "user_id": 144859,
            "user_email": "admin@user.com",
            "approver_user": {
                "id": "144859",
                "type": "user",
                "username": "admin",
                "firstname": "Admin",
                "lastname": "User",
                "email": "admin@user.com",
                "role": 1,
                "status": "active",
                "profile_image": "https:\/\/example.com\/profile.jpg",
                "color": "#1DA0D6",
                "timezone": "America\/Argentina\/Buenos_Aires",
                "language": ""
            },
            "secondary_approver": null,
            "secondary_approver_id": null,
            "secondary_approver_type": null,
            "stage": null,
            "escalated_approver": 0,
            "created_at": "1504028179",
            "updated_at": "1504028179"
        },
        {
            "id": 920,
            "type": "approvalresponse",
            "approval_id": 457,
            "stage_id": 0,
            "response": 1,
            "user_id": 144906,
            "user_email": "admin2@user.com",
            "approver_user": {
                "id": "144906",
                "type": "user",
                "username": "admin2",
                "firstname": "Admin2",
                "lastname": "User",
                "email": "admin2@user.com",
                "role": 1,
                "status": "active",
                "profile_image": false,
                "color": "#4968F3",
                "timezone": "Canada\/Eastern",
                "language": "en"
            },
            "secondary_approver": null,
            "secondary_approver_id": null,
            "secondary_approver_type": null,
            "stage": null,
            "escalated_approver": 0,
            "created_at": "1504028884",
            "updated_at": "1504028884"
        }
    ],
    "current_approver": {
        "id": "144859",
        "affiliateid": null,
        "username": "admin",
        "firstname": "Admin",
        "lastname": "User",
        "email": "admin@user.com",
        "usertype": "1",
        "role": 1,
        "status": "active",
        "datecreated": null,
        "laston": null,
        "timezone": "America\/Argentina\/Buenos_Aires",
        "profileImage": "https:\/\/example.com\/profile.jpg",
        "color": "#1DA0D6",
        "shortDateFormat": "DD\/MM\/YYYY",
        "longDateFormat": "MMM DD, YYYY",
        "timeFormat": "h:mm a",
        "weekStart": "7",
        "language": "",
        "preferences": {
            "1": "public_id",
            "2": "desc",
            "3": "name",
            "4": "asc"
        },
        "teams": {
            "1": "User's team 1",
            "8": "User's team 2"
        }
    },
    "all_stage_responses": null,
    "is_approver": true,
    "editable": true,
    "created_at": "1504028179",
    "updated_at": "1504028179"
}

HTTP Request

GET workstream/approvals/{key}

Get approval comments

Get all comments associated with a given approval. Approval owners & admins can view all the comments, but other users can only view comments in the current stage, provided comments are enabled.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/approvals/{key}/comments" \

Example response:

[
    {
        "id": 17012,
        "type": "activity_feed",
        "object_id": 457,
        "object_type": 4,
        "user_id": 144859,
        "action": 1,
        "field": "added",
        "value": "<p>A comment accompanying an approval.<\/p>",
        "user": {
            "id": "144859",
            "type": "user",
            "username": "admin",
            "firstname": "Admin",
            "lastname": "User",
            "email": "admin@user.com",
            "role": 1,
            "status": "active",
            "profile_image": "https:\/\/example.com\/profile.jpg",
            "color": "#1DA0D6",
            "timezone": "America\/Argentina\/Buenos_Aires",
            "language": ""
        },
        "settings": {
            "approval_response": 2
        },
        "cs_comment_id": 0,
        "primary_id": 0,
        "user_email": "admin@user.com",
        "created_at": "1504204327",
        "updated_at": "1504204327"
    },
    {
        "id": 17011,
        "type": "activity_feed",
        "object_id": 457,
        "object_type": 4,
        "user_id": 144859,
        "action": 1,
        "field": "added",
        "value": "<p>A comment accompanying a rejected response.<\/p>",
        "user": {
            "id": "144859",
            "type": "user",
            "username": "admin",
            "firstname": "Admin",
            "lastname": "User",
            "email": "admin@user.com",
            "role": 1,
            "status": "active",
            "profile_image": "https:\/\/example.com\/profile.jpg",
            "color": "#1DA0D6",
            "timezone": "America\/Argentina\/Buenos_Aires",
            "language": ""
        },
        "settings": {
            "approval_response": 3
        },
        "cs_comment_id": 0,
        "primary_id": 0,
        "user_email": "admin@user.com",
        "created_at": "1504204251",
        "updated_at": "1504204251"
    },
    {
        "id": 17010,
        "type": "activity_feed",
        "object_id": 457,
        "object_type": 4,
        "user_id": 144906,
        "action": 1,
        "field": "added",
        "value": "<p>A comment accompanying an approve w\/ changes response.<\/p>",
        "user": {
            "id": "144906",
            "type": "user",
            "username": "admin2",
            "firstname": "Admin",
            "lastname": "User",
            "email": "admin2@user.com",
            "role": 1,
            "status": "active",
            "profile_image": false,
            "color": "#4968F3",
            "timezone": "Canada\/Eastern",
            "language": "en"
        },
        "settings": {
            "approval_response": 4
        },
        "cs_comment_id": 0,
        "primary_id": 0,
        "user_email": "admin2@user.com",
        "created_at": "1504204235",
        "updated_at": "1504204235"
    }
]

HTTP Request

GET workstream/approvals/{key}/comments

Send a reminder

Sends a reminder to respond to the approval to the requested recipient_type.

recipient_type 3 is the approver, and must have a recipient_id passed in according to a current_stage_responses id.
recipient_type 4 is a user, and must have a recipient_id passed in coorresponding to a user_id.
recipient_type 5 sends a reminder to all approvers who have not responded on the current step of the approval (all if not a templated approval).

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/approvals/{key}/remind" \
        -d "recipient_type"="4" \
        -d "recipient_id"="33440" \
        -d "message"="rerum" \

HTTP Request

POST workstream/approvals/{key}/remind

Parameters

Parameter Type Status Description
recipient_type numeric required 3, 4 or 5
recipient_id numeric optional
message string optional Minimum: 1 Maximum: 3000

Resubmit approval

Given an approval and an approval responder's response ID, performing this action will reset their response to "pending". If "send_reminder" is passed in as true, a reminder email will be sent to the approver(s).

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/approvals/{key}/resubmit/{approvalResponseId}" \
        -d "send_reminder"="1" \
        -d "message"="eos" \

HTTP Request

POST workstream/approvals/{key}/resubmit/{approvalResponseId}

Parameters

Parameter Type Status Description
send_reminder boolean optional
message string optional Minimum: 1 Maximum: 3000

Respond to approval

Respond to an approval for either a given approval response ID (in the current_stage_responses array as part of the Approval object), or the current user associated by the key. Note: You will only be able to change the response if the current responder's stage ID is the same as the current_stage_id returned in the successfully updated Approval object, and if the returned Approval object is still of status "pending" (1). A successful response will contain an approval object.

message: An optional comment you'd like to associate with your response.
response: The response you are giving. Must be either: 2 (approved), 3 (rejected), or 4 (approve with changes).
approval_response_id: The approval response ID associated with the approver user the current user is responding for, as long as you are the owner of the approval or if you are an admin. If this is not set, you will be submitting the response as the user associated with the given key.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/approvals/{key}/response" \
        -d "message"="dolores" \
        -d "response"="2" \
        -d "approval_response_id"="40" \

HTTP Request

POST workstream/approvals/{key}/response

Parameters

Parameter Type Status Description
message string optional Maximum: 3000
response integer required 2, 3 or 4
approval_response_id integer optional

Cancel approval

Given an approval key, cancels the approval. No notifications go out for this action.

Example request:

curl -X PUT "https://apiv2.webdamdb.com/workstream/approvals/{key}/cancel" \

HTTP Request

PUT workstream/approvals/{key}/cancel

Check asset for approval (folder)

Returns a limited approval object associated with a given asset. If the user has no access to the asset through the given folder, the API will return a 403. If there is an issue retrieving the approval, the API will return a 404. If there is no approval for the given asset but the user can create one, the API will return a 200 success.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/folders/{folderId}/assets/{assetId}/approvals" \

Example response:

{
    "key": "CCECeNaL4MG38vvdsTckFcliDsj2ssZvOdg%2AC09fAp0%2C",
    "type": "approval",
    "status": 1,
    "owner": {
        "id": "144859",
        "type": "user",
        "username": "admin",
        "firstname": "Admin",
        "lastname": "User",
        "email": "admin@user.com",
        "role": 1,
        "status": "active",
        "profile_image": "https:\/\/example.com\/profile.jpg",
        "color": "#1DA0D6",
        "timezone": "America\/Argentina\/Buenos_Aires",
        "language": ""
    },
    "object_type": 1,
    "object_version": 1,
    "template": null,
    "current_stage_id": 0,
    "object": null,
    "proof": null,
    "settings": null,
    "current_stage_responses": null,
    "current_approver": null,
    "all_stage_responses": null,
    "is_approver": true,
    "editable": true,
    "created_at": "1504028179",
    "updated_at": "1504028179"
}

HTTP Request

GET workstream/folders/{folderId}/assets/{assetId}/approvals

Check asset for approval (project)

Returns a limited approval object associated with a given asset. If the user has no access to the asset through the given folder, the API will return a 403. If there is an issue retrieving the approval, the API will return a 404. If there is no approval for the given asset but the user can create one, the API will return a 200 success.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/projects/{projectId}/assets/{assetId}/approvals" \

Example response:

{
    "key": "CCECeNaL4MG38vvdsTckFcliDsj2ssZvOdg%2AC09fAp0%2C",
    "type": "approval",
    "status": 1,
    "owner": {
        "id": "144859",
        "type": "user",
        "username": "admin",
        "firstname": "Admin",
        "lastname": "User",
        "email": "admin@user.com",
        "role": 1,
        "status": "active",
        "profile_image": "https:\/\/example.com\/profile.jpg",
        "color": "#1DA0D6",
        "timezone": "America\/Argentina\/Buenos_Aires",
        "language": ""
    },
    "object_type": 1,
    "object_version": 1,
    "template": null,
    "current_stage_id": 0,
    "object": null,
    "proof": null,
    "settings": null,
    "current_stage_responses": null,
    "current_approver": null,
    "all_stage_responses": null,
    "is_approver": true,
    "editable": true,
    "created_at": "1504028179",
    "updated_at": "1504028179"
}

HTTP Request

GET workstream/projects/{projectId}/assets/{assetId}/approvals

Check asset for approval (task)

Returns a limited approval object associated with a given asset. If the user has no access to the asset through the given folder, the API will return a 403. If there is an issue retrieving the approval, the API will return a 404. If there is no approval for the given asset but the user can create one, the API will return a 200 success.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks/{taskId}/assets/{assetId}/approvals" \

Example response:

{
    "key": "CCECeNaL4MG38vvdsTckFcliDsj2ssZvOdg%2AC09fAp0%2C",
    "type": "approval",
    "status": 1,
    "owner": {
        "id": "144859",
        "type": "user",
        "username": "admin",
        "firstname": "Admin",
        "lastname": "User",
        "email": "admin@user.com",
        "role": 1,
        "status": "active",
        "profile_image": "https:\/\/example.com\/profile.jpg",
        "color": "#1DA0D6",
        "timezone": "America\/Argentina\/Buenos_Aires",
        "language": ""
    },
    "object_type": 1,
    "object_version": 1,
    "template": null,
    "current_stage_id": 0,
    "object": null,
    "proof": null,
    "settings": null,
    "current_stage_responses": null,
    "current_approver": null,
    "all_stage_responses": null,
    "is_approver": true,
    "editable": true,
    "created_at": "1504028179",
    "updated_at": "1504028179"
}

HTTP Request

GET workstream/tasks/{taskId}/assets/{assetId}/approvals

Get approval details URL

Returns a URL for iframing in the approval request or pending approval page based off your current authentication token. The url expires after use, or within 5 minutes of retrieving this url. 400 on failure to authenticate, and 404 if there is an approval but you have no permission to edit or view it, or if the asset was not found.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/folders/{id}/assets/{assetId}/approvals/url" \

Example response:

{
    "url": "https:\/\/example.com\/workstream\/#\/guest\/approval-request\/some-token?folderId=123&assetId=123&fileType=.jpg"
}

HTTP Request

GET workstream/folders/{id}/assets/{assetId}/approvals/url

Create an approval

Create an approval either following permissions for a given project, task, or folder.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/folders/{id}/assets/{assetId}/approvals" \

HTTP Request

POST workstream/folders/{id}/assets/{assetId}/approvals

Create an approval

Create an approval either following permissions for a given project, task, or folder.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/projects/{id}/assets/{assetId}/approvals" \

HTTP Request

POST workstream/projects/{id}/assets/{assetId}/approvals

Create an approval

Create an approval either following permissions for a given project, task, or folder.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets/{assetId}/approvals" \

HTTP Request

POST workstream/tasks/{id}/assets/{assetId}/approvals

Forms

APIs to get forms.

Get all forms

Get all forms the user has permission to see. Whether or not a form should display when filling out a form relies on "status" of 1, which is an available filter. If you pass in the "datatable" parameter, you will be able to view the current sort and filters, as well as additional form stats.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/forms?sort=updated_at&sortdir=asc&offset=754658510&limit=35&filter[status][]=24895&datatable=1" \

Example response:

[
    {
        "id": 648,
        "type": "requestform",
        "icon": "",
        "draft_icon": null,
        "name": "Example Form 1",
        "draft_name": null,
        "status": 1,
        "owner": null,
        "settings": null,
        "fields": null,
        "totals": null,
        "stats": null,
        "created_at": "1498256392",
        "updated_at": "1498767260"
    },
    {
        "id": 171,
        "type": "requestform",
        "icon": "",
        "draft_icon": null,
        "name": "Example Form 2",
        "draft_name": "This form has been deleted and shouldn't display to the user.",
        "status": -1,
        "owner": null,
        "settings": null,
        "fields": null,
        "totals": null,
        "stats": null,
        "created_at": "1475087542",
        "updated_at": "1498250410"
    },
    {
        "id": 432,
        "type": "requestform",
        "icon": "",
        "draft_icon": null,
        "name": "Example Form 3",
        "draft_name": "This form is inactive and the user should not be able to fill out a task based on this form.",
        "status": 0,
        "owner": null,
        "settings": null,
        "fields": null,
        "totals": null,
        "stats": null,
        "created_at": "1475087542",
        "updated_at": "1498250410"
    }
]

HTTP Request

GET workstream/forms

Parameters

Parameter Type Status Description
sort string optional name, status, created_at, updated_at, owner_id, in_use_now, ever_used, last_used, completion or permitted_users
sortdir string optional Only alphabetic characters allowed Maximum: 4 asc or desc
offset numeric optional Minimum: 0
limit numeric optional Minimum: 1 Maximum: 100
filter array optional An array of arrays with the following keys: owner_id, status and/or brandportal_id
datatable boolean optional

Get form

"status" is either 1 (active), 0 (inactive), or -1 (temporarily deleted). If presenting this to a user to fill in, always have the "Task name" field as a required first field. The rest of the fields map as the following: 15 (Dropdown), 16 (Radio), 17 (Checkbox), 18 (Datepicker), 20 (Static image), 21 (Static title), 22 (Short answer), 23 (Long answer), 24 (Static description), 19 (Attachments), 25 (Keywords), 26 (Due date), 27 (Project), 28 (Assignee), 30 (Task description), and 31 (Email).

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/forms/{id}" \

Example response:

{
    "id": 648,
    "type": "requestform",
    "icon": "",
    "draft_icon": null,
    "name": "Example Form 1",
    "draft_name": null,
    "status": 1,
    "owner": null,
    "settings": null,
    "fields": [
        {
            "id": 9980,
            "object_type": 1,
            "object_id": 648,
            "type": 15,
            "pos": 0,
            "content": "{\"question\":\"Required Dropdown field\",\"options\":[{\"label\":\"Dropdown item 1\",\"checked\":false,\"index\":0},{\"label\":\"Dropdown item 2\",\"checked\":false,\"index\":1},{\"label\":\"\",\"checked\":false,\"index\":2}],\"required\":true}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1498767202",
            "updated_at": "1499892175"
        },
        {
            "id": 10017,
            "object_type": 1,
            "object_id": 648,
            "type": 26,
            "pos": 1,
            "content": "{\"question\":\"Due date field\"}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1499892080",
            "updated_at": "1499892175"
        },
        {
            "id": 10018,
            "object_type": 1,
            "object_id": 648,
            "type": 23,
            "pos": 2,
            "content": "{\"question\":\"Long answer field\"}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1499892087",
            "updated_at": "1499892175"
        },
        {
            "id": 10019,
            "object_type": 1,
            "object_id": 648,
            "type": 17,
            "pos": 3,
            "content": "{\"question\":\"Checkbox field\",\"options\":[{\"label\":\"Checkbox item 1\",\"checked\":false,\"index\":0},{\"label\":\"Checkbox item 2\",\"checked\":false,\"index\":1},{\"label\":\"Checkbox item 3\",\"checked\":false,\"index\":2},{\"label\":\"Checkbox item 4\",\"checked\":false,\"index\":3},{\"label\":\"\",\"checked\":false,\"index\":4}]}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1499892093",
            "updated_at": "1499892175"
        },
        {
            "id": 10020,
            "object_type": 1,
            "object_id": 648,
            "type": 16,
            "pos": 4,
            "content": "{\"question\":\"Required multiple choice field\",\"options\":[{\"label\":\"Multiple choice 1\",\"checked\":false,\"index\":0},{\"label\":\"Multiple choice 2\",\"checked\":false,\"index\":1},{\"label\":\"\",\"checked\":false,\"index\":2}]}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1499892103",
            "updated_at": "1499892175"
        },
        {
            "id": 10021,
            "object_type": 1,
            "object_id": 648,
            "type": 21,
            "pos": 5,
            "content": "{\"question\":\"Just a title\",\"title\":\"Just a title\"}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1499892128",
            "updated_at": "1499892175"
        },
        {
            "id": 10022,
            "object_type": 1,
            "object_id": 648,
            "type": 20,
            "pos": 6,
            "content": "{\"question\":\"\",\"filename\":\"\\\/10022_1499892145.jpg\",\"url\":\"https:\\\/\\\/example.com\\\/db1442a52db002216dd896f3c1d56c94\\\/wip\\\/10022_1499892145.jpg\"}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1499892134",
            "updated_at": "1499892175"
        },
        {
            "id": 10023,
            "object_type": 1,
            "object_id": 648,
            "type": 24,
            "pos": 7,
            "content": "{\"question\":\"\",\"description\":\"<p>Just a static description<\\\/p>\"}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1499892146",
            "updated_at": "1499892175"
        },
        {
            "id": 10025,
            "object_type": 1,
            "object_id": 648,
            "type": 25,
            "pos": 8,
            "content": "{\"question\":\"Keywords field\"}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1499892167",
            "updated_at": "1499892175"
        },
        {
            "id": 10024,
            "object_type": 1,
            "object_id": 648,
            "type": 19,
            "pos": 9,
            "content": "{\"question\":\"Attachments field\"}",
            "draft_pos": null,
            "draft_content": null,
            "created_at": "1499892160",
            "updated_at": "1499892175"
        }
    ],
    "totals": null,
    "stats": null,
    "created_at": "1498256392",
    "updated_at": "1499892175"
}

HTTP Request

GET workstream/forms/{id}

Miscellaneous

Search users/teams

The only available filter is "roles", which expects an array of user roles (1 (admin), 3 (brand portal user), 4 (contributor user), 5 (regular user)). It only applies to users. By default, teams_enabled is true as long as you have teams enabled on your account. q is the query parameter you are searching for, which compares against user's name, user's email, or team's name.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/shareoptions?limit=1465729320&filter[roles][]=18812&project_id=3749826&teams_enabled=1" \

Example response:

[
    {
        "id": "2",
        "firstname": "Example Team",
        "lastname": "",
        "email": "",
        "type": "team",
        "color": "#7e87bc",
        "image": "https:\/\/example.com\/teamimg.png"
    },
    {
        "id": "144876",
        "firstname": "Example",
        "lastname": "User",
        "email": "exampleuser@test.com",
        "type": "user",
        "color": "#2B8615",
        "image": "https:\/\/example.com\/profileimg.png"
    }
]

HTTP Request

GET workstream/shareoptions

Parameters

Parameter Type Status Description
limit numeric optional Minimum: 1
filter array optional An array of arrays with the following keys: roles
project_id numeric optional
teams_enabled boolean optional

Projects

APIs to get projects.

Get all projects

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/projects?sort=owner_id&sortdir=asc&offset=692443972&limit=32&filter[sponsor_id][]=11682" \

Example response:

[
    {
        "id": 516,
        "project_key": "P",
        "public_id": 8,
        "name": "Test Project B",
        "assignee_id": 144905,
        "description": "<p>A sample description<\/p>",
        "completion": "0.0000",
        "launch_date": 1487836800,
        "sponsor": {
            "id": "144905",
            "type": "user",
            "username": "example_admin",
            "firstname": "Example",
            "lastname": "Admin",
            "email": "exampleadmin@test.com",
            "role": 1,
            "status": "active",
            "profile_image": "https:\/\/example.com\/profileimg.jpg",
            "color": "#50ae55",
            "timezone": "",
            "language": "en"
        },
        "tasks": {
            "remaining_count": 1,
            "tasks_soon": 0,
            "tasks_overdue": 0
        },
        "watcher_count": 3,
        "created_at": 1487836300
    },
    {
        "id": 515,
        "project_key": "P",
        "public_id": 7,
        "name": "Test Project A",
        "assignee_id": 144909,
        "description": "<p>Another sample description<\/p>",
        "completion": "70.0000",
        "launch_date": 1487836800,
        "sponsor": {
            "id": "144909",
            "type": "user",
            "username": "example_contributor",
            "firstname": "Example",
            "lastname": "Contributor",
            "email": "examplecontributor@test.com",
            "role": 4,
            "status": "active",
            "profile_image": "https:\/\/example.com\/profileimg.jpg",
            "color": "#239f8f",
            "timezone": "America\/Los_Angeles",
            "language": "en"
        },
        "tasks": {
            "remaining_count": 22,
            "tasks_soon": 14
        },
        "watcher_count": 0,
        "created_at": 1487836000,
        "updated_at": 1487836000
    }
]

HTTP Request

GET workstream/projects

Parameters

Parameter Type Status Description
sort string optional name, created_at, updated_at, owner_id, sponsor, owner, watched, asset_count, completion, launch_date, recently_viewed or status
sortdir string optional Only alphabetic characters allowed Maximum: 4 asc or desc
offset numeric optional Minimum: 0
limit numeric optional Minimum: 1 Maximum: 100
filter array optional An array of arrays with the following keys: sponsor_id, status and/or watched

Get project

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/projects/{id}" \

Example response:

{
    "id": 515,
    "project_key": "P",
    "public_id": 7,
    "name": "Test Project A",
    "assignee_id": 144909,
    "description": "<p>Another sample description<\/p>",
    "completion": "70.0000",
    "launch_date": 1487836800,
    "sponsor": {
        "id": "144909",
        "type": "user",
        "username": "example_contributor",
        "firstname": "Example",
        "lastname": "Contributor",
        "email": "examplecontributor@test.com",
        "role": 4,
        "status": "active",
        "profile_image": "https:\/\/example.com\/profileimg.jpg",
        "color": "#239f8f",
        "timezone": "America\/Los_Angeles",
        "language": "en"
    },
    "tasks": {
        "remaining_count": 22,
        "tasks_soon": 14,
        "tasks_overdue": 0
    },
    "watcher_count": 0,
    "created_at": 1487836000,
    "updated_at": 1487836200
}

HTTP Request

GET workstream/projects/{id}

Get project assets

Get all assets associated with a given project. Passing in the "approval_status" parameter will also return the "approval" object with the response, which will either be null or an object like the following: "approval": { "key": "mxKs2BrstY%2AOfr4AO8m8TWedO7TYgF1SDdKrZJm9vDE%2C", "type": "approval", "status": 1, "current_stage_id": 0, "is_approver": true, "editable": true }

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/projects/{id}/assets?offset=1963647349&limit=92&approval_status=1" \

Example response:

[
    {
        "id": "37719310",
        "type": "asset",
        "user": {
            "type": "user",
            "id": "144844",
            "email": "contributor@example.com",
            "name": "Some Contributor",
            "username": "somecontributor",
            "status": "active"
        },
        "folder_id": "1366948",
        "version": "1",
        "media_url": "https:\/\/example.com\/mediaurl.jpg",
        "filename": "contributor-image.jpg",
        "file_type": ".jpg",
        "thumburl": {
            "thumb100": "https:\/\/example.com\/thumb100.jpg",
            "thumb150": "https:\/\/example.com\/thumb150.jpg",
            "thumb220": "https:\/\/example.com\/thumb220.jpg"
        },
        "type_id": "1",
        "hide_preview": false
    },
    {
        "id": "37719303",
        "type": "asset",
        "user": {
            "type": "user",
            "id": "144859",
            "email": "admin@example.com",
            "name": "Some Admin",
            "username": "someadmin",
            "status": "active"
        },
        "folder_id": "1366948",
        "version": "1",
        "media_url": "https:\/\/example.com\/mediaurl.jpg",
        "filename": "admin-image.jpg",
        "file_type": ".jpg",
        "thumburl": {
            "thumb100": "https:\/\/example.com\/thumb100.jpg",
            "thumb150": "https:\/\/example.com\/thumb150.jpg",
            "thumb220": "https:\/\/example.com\/thumb220.jpg"
        },
        "type_id": "1",
        "hide_preview": false
    }
]

HTTP Request

GET workstream/projects/{id}/assets

Parameters

Parameter Type Status Description
offset numeric optional Minimum: 0
limit numeric optional Minimum: 1 Maximum: 100
approval_status boolean optional

Get project asset by ID

Returns the project asset object using project permissions.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/projects/{id}/assets/{assetId}" \

Example response:

{
    "id": "37720166",
    "type": "asset",
    "type_id": "1",
    "status": "active",
    "filename": "image.jpg",
    "name": "image.jpg",
    "filesize": "0.16",
    "width": "960",
    "height": "1280",
    "description": "",
    "filetype": "jpg",
    "colorspace": "RGB",
    "version": "2",
    "date_created_unix": "1497560185",
    "date_modified_unix": "1497560230",
    "date_captured_unix": "0",
    "media_url": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/cdn.webdamdb.com\/md_UOBj6FI2uZyU.jpg?1497535030?1497535030','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/cdn.webdamdb.com\/md_UOBj6FI2uZyU.jpg?1497535030?1497535030\" border=0 alt=\"image.jpg\" title=\"image.jpg\">",
    "hi_res_media_url": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/cdb.webdamdb.com\/1280_UOBj6FI2uZyU.jpg?1497535030?1497535030','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/cdn.webdamdb.com\/1280_UOBj6FI2uZyU.jpg?1497535030?1497535030\" border=0 alt=\"image.jpg\" title=\"image.jpg\">",
    "num_exif": 0,
    "num_xmp": 0,
    "num_comments": 0,
    "page_count": 0,
    "folder": {
        "type": "folder",
        "id": "1366964",
        "name": "Workstream Assets",
        "properties": []
    },
    "user": {
        "type": "user",
        "id": "144859",
        "email": "admin@email.com",
        "name": "Admin User",
        "username": "adminuser",
        "status": "active"
    },
    "thumbnailurls": [
        {
            "size": 100,
            "url": "https:\/\/cdn.webdamdb.com\/100th_sm_UOBj6FI2uZyU.jpg?1497535030"
        },
        {
            "size": 150,
            "url": "https:\/\/cdn.webdamdb.com\/150th_sm_UOBj6FI2uZyU.jpg?1497535030"
        },
        {
            "size": 220,
            "url": "https:\/\/cdn.webdamdb.com\/220th_sm_UOBj6FI2uZyU.jpg?1497535030"
        },
        {
            "size": 310,
            "url": "https:\/\/cdn.webdamdb.com\/310th_sm_UOBj6FI2uZyU.jpg?1497535030"
        },
        {
            "size": 550,
            "url": "https:\/\/cdn.webdamdb.com\/md_UOBj6FI2uZyU.jpg?1497535030",
            "previewurls": []
        },
        {
            "size": 1280,
            "url": "https:\/\/cdn.webdamdb.com\/1280_UOBj6FI2uZyU.jpg?1497535030"
        }
    ],
    "watched": false,
    "num_related": 0,
    "readonly": 0,
    "readonlynext": 0,
    "onhold": 0,
    "metadata": {
        "xmp": {
            "type": "assetxmp"
        },
        "exif": {
            "type": "assetexif"
        },
        "required": [],
        "active_fields": [
            {
                "field": "headline",
                "field_name": "Headline\/Name",
                "value": "",
                "required": "0"
            },
            {
                "field": "caption",
                "field_name": "Caption\/Description",
                "value": "",
                "required": "0"
            },
            {
                "field": "city",
                "field_name": "City",
                "value": "",
                "required": "0"
            },
            {
                "field": "state",
                "field_name": "Province\/State",
                "value": "",
                "required": "0"
            },
            {
                "field": "source",
                "field_name": "Source",
                "value": "",
                "required": "0"
            },
            {
                "field": "byline",
                "field_name": "Photographer",
                "value": "",
                "required": "0"
            },
            {
                "field": "keyword",
                "field_name": "Keywords",
                "value": "",
                "required": "0"
            }
        ]
    }
}

HTTP Request

GET workstream/projects/{id}/assets/{assetId}

Get project asset's versions

Returns the project asset versions using project permissions.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/projects/{id}/assets/{assetId}/versions" \

Example response:

[
    {
        "id": "37720166",
        "type": "assetversion",
        "type_id": null,
        "status": "inactive",
        "filename": "version1.png",
        "name": "version1.png",
        "filesize": "0.43",
        "width": "512",
        "height": "512",
        "description": "",
        "filetype": "png",
        "colorspace": "RGB",
        "version": "1",
        "date_created_unix": "1496779702",
        "date_modified_unix": "1496779756",
        "date_captured_unix": null,
        "media_url": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/cdn.webdamdb.com\/v1_md_UOBj6FI2uZyU.png?1496754556?1496754556','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/cdn.webdamdb.com\/v1_md_UOBj6FI2uZyU.png?1496754556?1496754556\" border=0 alt=\"version1.png\" title=\"version1.png\">",
        "hi_res_media_url": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/cdn.webdamdb.com\/v1_1280_UOBj6FI2uZyU.png?1496754556?1496754556','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/cdn.webdamdb.com\/v1_1280_UOBj6FI2uZyU.png?1496754556?1496754556\" border=0 alt=\"version1.png\" title=\"version1.png\">",
        "num_exif": 0,
        "num_xmp": 0,
        "num_comments": 0,
        "page_count": 0,
        "folder": {
            "type": "folder",
            "id": "1366964",
            "name": "Workstream Assets",
            "properties": []
        },
        "user": {
            "type": "user",
            "id": null,
            "email": null,
            "name": " ",
            "username": null,
            "status": null
        },
        "thumbnailurls": [
            {
                "size": 100,
                "url": "https:\/\/cdn.webdamdb.com\/v1_100th_sm_UOBj6FI2uZyU.png?1496754556"
            },
            {
                "size": 150,
                "url": "https:\/\/cdn.webdamdb.com\/v1_150th_sm_UOBj6FI2uZyU.png?1496754556"
            },
            {
                "size": 220,
                "url": "https:\/\/cdn.webdamdb.com\/v1_220th_sm_UOBj6FI2uZyU.png?1496754556"
            },
            {
                "size": 310,
                "url": "https:\/\/cdn.webdamdb.com\/v1_310th_sm_UOBj6FI2uZyU.png?1496754556"
            },
            {
                "size": 550,
                "url": "https:\/\/cdn.webdamdb.com\/v1_md_UOBj6FI2uZyU.png?1496754556",
                "previewurls": []
            },
            {
                "size": 1280,
                "url": "https:\/\/cdn.webdamdb.com\/v1_1280_UOBj6FI2uZyU.png?1496754556"
            }
        ],
        "watched": null,
        "num_related": 0,
        "readonly": 0,
        "readonlynext": 0,
        "onhold": 0,
        "metadata": {
            "required": []
        }
    }
]

HTTP Request

GET workstream/projects/{id}/assets/{assetId}/versions

Get project watchers

Get all watchers associated with a given project.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/projects/{id}/watchers?offset=1178984422&limit=55" \

Example response:

[
    {
        "id": "144905",
        "type": "user",
        "username": "example_admin",
        "firstname": "Example",
        "lastname": "Admin",
        "email": "exampleadmin@test.com",
        "role": 1,
        "status": "active",
        "profile_image": "https:\/\/example.com\/profileimg.jpg",
        "color": "#50ae55",
        "timezone": "",
        "language": "en"
    },
    {
        "id": "144909",
        "type": "user",
        "username": "example_admin2",
        "firstname": "Example",
        "lastname": "Admin2",
        "email": "exampleadmin2@test.com",
        "role": 1,
        "status": "active",
        "profile_image": false,
        "color": "#fec958",
        "timezone": "Canada\/Eastern",
        "language": "fr"
    }
]

HTTP Request

GET workstream/projects/{id}/watchers

Parameters

Parameter Type Status Description
offset numeric optional Minimum: 0
limit numeric optional Minimum: 1 Maximum: 100

Add asset to project

Associate a single asset to a project.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/projects/{id}/assets/{assetId}" \

HTTP Request

POST workstream/projects/{id}/assets/{assetId}

Add assets to project

Associate one or more assets to a project.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/projects/{id}/assets" \
        -d "assetids[]"="24110" \

HTTP Request

POST workstream/projects/{id}/assets

Parameters

Parameter Type Status Description
assetids array required

Add watchers to project

Add one or more users to a project.

Example request:

curl -X PUT "https://apiv2.webdamdb.com/workstream/projects/{id}/watchers" \
        -d "user_ids[]"="36464" \
        -d "message"="qui" \

HTTP Request

PUT workstream/projects/{id}/watchers

Parameters

Parameter Type Status Description
user_ids array required
message string optional Minimum: 1 Maximum: 3000

Remove asset from project

Disassociate a single asset from a project. This does not delete the asset from the asset library.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/projects/{id}/assets/{assetId}" \

HTTP Request

DELETE workstream/projects/{id}/assets/{assetId}

Remove assets from project

Disassociate one or more assets from a project. This does not delete the asset from the asset library.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/projects/{id}/assets" \
        -d "assetids[]"="49420" \

HTTP Request

DELETE workstream/projects/{id}/assets

Parameters

Parameter Type Status Description
assetids array required

Remove watchers from project

Remove one or more watchers from a project.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/projects/{id}/watchers" \
        -d "user_ids[]"="18057" \
        -d "message"="ea" \

HTTP Request

DELETE workstream/projects/{id}/watchers

Parameters

Parameter Type Status Description
user_ids array required
message string optional Minimum: 1 Maximum: 3000

Proofing

APIs to get, generate, and delete asset proofs. Proofs are unique per asset. If you delete a proof, you will be deleting access to all versions of the proof. If you try to generate a proof on an earlier version of an already-proofed asset, the call will not be able to complete.

Get folder asset proof

Using folder permissions, get an asset's proof. Possible statuses: 1 (valid), 2/6 (pending), 3/4/5 (not created)

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/folders/{id}/assets/{assetId}/proof" \

Example response:

{
    "id": 555,
    "status": 1,
    "asset_id": 37719542,
    "version": 2,
    "cs_asset_id": 2930,
    "owner_id": 144859,
    "primary_source_id": 515,
    "secondary_source_id": null,
    "source": 3,
    "url": null,
    "created_at": "1495573851",
    "updated_at": "1497559995"
}

HTTP Request

GET workstream/folders/{id}/assets/{assetId}/proof

Get folder asset proof URL

Using folder permissions, get the URL to view an asset's proof.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/folders/{id}/assets/{assetId}/proof/url" \

Example response:

{
    "url": "https:\/\/example.com\/r\/example-key"
}

HTTP Request

GET workstream/folders/{id}/assets/{assetId}/proof/url

Generate folder asset proof

Using folder permissions, generate a proof for an asset. "version" is not required and works best if there is no current proof for a given asset and you want to proof a previous version.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/folders/{id}/assets/{assetId}/proof" \
        -d "version"="1446135632" \

HTTP Request

POST workstream/folders/{id}/assets/{assetId}/proof

Parameters

Parameter Type Status Description
version numeric optional Minimum: 1

Delete folder asset proof

Using folder permissions, delete an asset's proof.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/folders/{id}/assets/{assetId}/proof" \

HTTP Request

DELETE workstream/folders/{id}/assets/{assetId}/proof

Get project asset proof

Using project permissions, get an asset's proof. Possible statuses: 1 (valid), 2/6 (pending), 3/4/5 (not created)

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/projects/{id}/assets/{assetId}/proof" \

Example response:

{
    "id": 555,
    "status": 1,
    "asset_id": 37719542,
    "version": 2,
    "cs_asset_id": 2930,
    "owner_id": 144859,
    "primary_source_id": 515,
    "secondary_source_id": null,
    "source": 3,
    "url": null,
    "created_at": "1495573851",
    "updated_at": "1497559995"
}

HTTP Request

GET workstream/projects/{id}/assets/{assetId}/proof

Get project asset proof URL

Using project permissions, get the URL to view an asset's proof.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/projects/{id}/assets/{assetId}/proof/url" \

Example response:

{
    "url": "https:\/\/example.com\/r\/example-key"
}

HTTP Request

GET workstream/projects/{id}/assets/{assetId}/proof/url

Generate project asset proof

Using project permissions, generate a proof for an asset. "version" is not required and works best if there is no current proof for a given asset and you want to proof a previous version.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/projects/{id}/assets/{assetId}/proof" \
        -d "version"="90583029" \

HTTP Request

POST workstream/projects/{id}/assets/{assetId}/proof

Parameters

Parameter Type Status Description
version numeric optional Minimum: 1

Delete project asset proof

Using project permissions, delete an asset's proof.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/projects/{id}/assets/{assetId}/proof" \

HTTP Request

DELETE workstream/projects/{id}/assets/{assetId}/proof

Get task asset proof

Using task permissions, get an asset's proof. Possible statuses: 1 (valid), 2/6 (pending), 3/4/5 (not created)

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets/{assetId}/proof" \

Example response:

{
    "id": 555,
    "status": 1,
    "asset_id": 37719542,
    "version": 2,
    "cs_asset_id": 2930,
    "owner_id": 144859,
    "primary_source_id": 515,
    "secondary_source_id": null,
    "source": 3,
    "url": null,
    "created_at": "1495573851",
    "updated_at": "1497559995"
}

HTTP Request

GET workstream/tasks/{id}/assets/{assetId}/proof

Get task asset proof URL

Using task permissions, get the URL to view an asset's proof.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets/{assetId}/proof/url" \

Example response:

{
    "url": "https:\/\/example.com\/r\/example-key"
}

HTTP Request

GET workstream/tasks/{id}/assets/{assetId}/proof/url

Generate task asset proof

Using task permissions, generate a proof for an asset. "version" is not required and works best if there is no current proof for a given asset and you want to proof a previous version.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets/{assetId}/proof" \
        -d "version"="1434202454" \

HTTP Request

POST workstream/tasks/{id}/assets/{assetId}/proof

Parameters

Parameter Type Status Description
version numeric optional Minimum: 1

Delete task asset proof

Using task permissions, delete an asset's proof.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets/{assetId}/proof" \

HTTP Request

DELETE workstream/tasks/{id}/assets/{assetId}/proof

Get approval asset proof

Using approval permissions, get an asset's proof. Possible statuses: 1 (valid), 2/6 (pending), 3/4/5 (not created)

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/approvals/{key}/assets/{assetId}/proof" \

Example response:

{
    "id": 555,
    "status": 1,
    "asset_id": 37719542,
    "version": 2,
    "cs_asset_id": 2930,
    "owner_id": 144859,
    "primary_source_id": 515,
    "secondary_source_id": null,
    "source": 3,
    "url": null,
    "created_at": "1495573851",
    "updated_at": "1497559995"
}

HTTP Request

GET workstream/approvals/{key}/assets/{assetId}/proof

Get approval asset proof URL

Using approval permissions, get the URL to view an asset's proof.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/approvals/{key}/assets/{assetId}/proof/url" \

Example response:

{
    "url": "https:\/\/example.com\/r\/example-key"
}

HTTP Request

GET workstream/approvals/{key}/assets/{assetId}/proof/url

Generate approval asset proof

Using approval permissions, generate a proof for an asset.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/approvals/{key}/assets/{assetId}/proof" \

HTTP Request

POST workstream/approvals/{key}/assets/{assetId}/proof

Delete approval asset proof

Using approval permissions, delete an asset's proof.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/approvals/{key}/assets/{assetId}/proof" \

HTTP Request

DELETE workstream/approvals/{key}/assets/{assetId}/proof

Statuses

APIs to get statuses.

Get all statuses

Returns the list of task statuses available on your account.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/statuses" \

Example response:

[
    {
        "id": 6,
        "name": "Draft",
        "color": "#888B8D",
        "type": 1,
        "created_at": "1468349173",
        "updated_at": "1468349173"
    },
    {
        "id": 7,
        "name": "Pending",
        "color": "#C60000",
        "type": 1,
        "created_at": "1468349173",
        "updated_at": "1468349173"
    },
    {
        "id": 8,
        "name": "New",
        "color": "#00A6DC",
        "type": 2,
        "created_at": "1468349173",
        "updated_at": "1487018623"
    },
    {
        "id": 9,
        "name": "In Progress",
        "color": "#F68D2E",
        "type": 2,
        "created_at": "1468349173",
        "updated_at": "1487035029"
    },
    {
        "id": 10,
        "name": "Completed",
        "color": "#000000",
        "type": 1,
        "created_at": "1468349173",
        "updated_at": "1487035029"
    }
]

HTTP Request

GET workstream/statuses

Tasks

APIs to get request tasks.

Get all tasks

If non-admin user is logged in, gets all of his/her requests that he/she has created. If admin user is logged in, gets all requests that are not in "draft" status. If no user is logged in, gets all that they have session_id to.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks?sort=assignee_type&sortdir=desc&offset=1353531804&limit=63&filter[status][]=22198" \

Example response:

[
    {
        "id": 134,
        "public_id": 12,
        "name": "Orphan Task",
        "status": 7,
        "assignee_id": null,
        "assignee": {
            "id": "144905",
            "type": "user",
            "username": "example_admin",
            "firstname": "Example",
            "lastname": "Admin",
            "email": "exampleadmin@test.com",
            "role": 1,
            "status": "active",
            "profile_image": "https:\/\/example.com\/profileimg.jpg",
            "color": "#50ae55",
            "timezone": "",
            "language": "en"
        },
        "recipient": {
            "id": "188049",
            "type": "user",
            "username": "example_admin3",
            "firstname": "Example",
            "lastname": "Admin3",
            "email": "exampleadmin3@test.com",
            "role": 1,
            "status": "active",
            "profile_image": "https:\/\/example.com\/profileimg.png",
            "color": "#43D421",
            "timezone": "",
            "language": ""
        },
        "project_id": null,
        "project": null,
        "due_date": null,
        "keywords": "a,list,of,keywords",
        "description": "<p>Sample description<\/p>",
        "watcher_count": 0,
        "created_at": 1468358317,
        "updated_at": 1468358317
    },
    {
        "id": 960,
        "public_id": 54,
        "name": "Task assigned to project (Copy)",
        "status": 7,
        "assignee_id": 144880,
        "assignee": {
            "id": "144909",
            "type": "user",
            "username": "example_contributor",
            "firstname": "Example",
            "lastname": "Contributor",
            "email": "examplecontributor@test.com",
            "role": 4,
            "status": "active",
            "profile_image": "https:\/\/example.com\/profileimg.jpg",
            "color": "#239f8f",
            "timezone": "America\/Los_Angeles",
            "language": "en"
        },
        "recipient": {
            "id": "188049",
            "type": "user",
            "username": "example_admin3",
            "firstname": "Example",
            "lastname": "Admin3",
            "email": "exampleadmin3@test.com",
            "role": 1,
            "status": "active",
            "profile_image": "https:\/\/example.com\/profileimg.png",
            "color": "#43D421",
            "timezone": "",
            "language": ""
        },
        "project_id": 192,
        "project": {
            "id": 192,
            "type": "requestproject",
            "name": "An example project",
            "status": 1,
            "start_date": 1502348400,
            "end_date": null,
            "completion": null,
            "asset_count": null,
            "watcher_count": null,
            "assignee_type": 1,
            "owner": null,
            "watchers": null,
            "assets": null,
            "tasks": null,
            "description": null,
            "keywords": null,
            "assignee": null,
            "fields": null,
            "activity_feed": null,
            "completed_at": null,
            "created_at": "1497568307",
            "updated_at": "1500661158"
        },
        "due_date": 1474614000,
        "keywords": "some,example,keywords",
        "description": null,
        "watcher_count": 5,
        "created_at": 1474613000,
        "updated_at": 1474613009
    }
]

HTTP Request

GET workstream/tasks

Parameters

Parameter Type Status Description
sort string optional public_id, name, form_name, status_name, owner_id, created_at, updated_at, assignee_id, assignee, assignee, owner, watched, asset_count, assignee_type, project_id, due_date, recently_viewed, incomplete_checklist_count, keyword_count, recipient, description or project_title
sortdir string optional Only alphabetic characters allowed Maximum: 4 asc or desc
offset numeric optional Minimum: 0
limit numeric optional Minimum: 1 Maximum: 100
filter array optional An array of arrays with the following keys: assignee_id, project_id, status and/or watching

Get task

If non-admin is viewing, returns the request if he/she created it. If admin user is logged in, returns the quest if it is not in "draft" status.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks/{id}" \

Example response:

{
    "id": 481,
    "public_id": 24,
    "name": "Assigned Orphan Task",
    "status": 6,
    "assignee_id": 144905,
    "assignee": {
        "id": "144909",
        "type": "user",
        "username": "example_admin2",
        "firstname": "Example",
        "lastname": "Admin2",
        "email": "exampleadmin2@test.com",
        "role": 1,
        "status": "active",
        "profile_image": false,
        "color": "#fec958",
        "timezone": "Canada\/Eastern",
        "language": "fr"
    },
    "recipient": {
        "id": "188049",
        "type": "user",
        "username": "example_admin3",
        "firstname": "Example",
        "lastname": "Admin3",
        "email": "exampleadmin3@test.com",
        "role": 1,
        "status": "active",
        "profile_image": "https:\/\/example.com\/profileimg.png",
        "color": "#43D421",
        "timezone": "",
        "language": ""
    },
    "project_id": null,
    "project": null,
    "due_date": 1485345600,
    "keywords": null,
    "description": null,
    "watcher_count": 0,
    "created_at": 1485345000,
    "updated_at": 1485345300
}

HTTP Request

GET workstream/tasks/{id}

Get task assets

Get all assets associated with a given task. Passing in the "approval_status" parameter will also return the "approval" object with the response, which will either be null or an object like the following: "approval": { "key": "mxKs2BrstY%2AOfr4AO8m8TWedO7TYgF1SDdKrZJm9vDE%2C", "type": "approval", "status": 1, "current_stage_id": 0, "is_approver": true, "editable": true }

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets?offset=529373646&limit=24&approval_status=1" \

Example response:

[
    {
        "id": "37719339",
        "type": "asset",
        "user": {
            "type": "user",
            "id": "144859",
            "email": "admin@example.com",
            "name": "Some Admin",
            "username": "someadmin",
            "status": "active"
        },
        "folder_id": "1366948",
        "version": "1",
        "media_url": "https:\/\/example.com\/mediaurl.jpg",
        "filename": "admin-image.png",
        "file_type": ".jpg",
        "thumburl": {
            "thumb100": "https:\/\/example.com\/thumb100.jpg",
            "thumb150": "https:\/\/example.com\/thumb150.jpg",
            "thumb220": "https:\/\/example.com\/thumb220.jpg"
        },
        "type_id": "1",
        "hide_preview": false
    },
    {
        "id": "37719338",
        "type": "asset",
        "user": {
            "type": "user",
            "id": "144844",
            "email": "contributor@example.com",
            "name": "Some Contributor",
            "username": "somecontributor",
            "status": "active"
        },
        "folder_id": "1366948",
        "version": "1",
        "media_url": "https:\/\/example.com\/mediaurl.jpg",
        "filename": "contributor-image.jpg",
        "file_type": ".jpg",
        "thumburl": {
            "thumb100": "https:\/\/example.com\/thumb100.jpg",
            "thumb150": "https:\/\/example.com\/thumb150.jpg",
            "thumb220": "https:\/\/example.com\/thumb220.jpg"
        },
        "type_id": "1",
        "hide_preview": false
    }
]

HTTP Request

GET workstream/tasks/{id}/assets

Parameters

Parameter Type Status Description
offset numeric optional Minimum: 0
limit numeric optional Minimum: 1 Maximum: 100
approval_status boolean optional

Get task asset by ID

Returns the task asset object using task permissions.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets/{assetId}" \

Example response:

{
    "id": "37720166",
    "type": "asset",
    "type_id": "1",
    "status": "active",
    "filename": "image.jpg",
    "name": "image.jpg",
    "filesize": "0.16",
    "width": "960",
    "height": "1280",
    "description": "",
    "filetype": "jpg",
    "colorspace": "RGB",
    "version": "2",
    "date_created_unix": "1497560185",
    "date_modified_unix": "1497560230",
    "date_captured_unix": "0",
    "media_url": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/cdn.webdamdb.com\/md_UOBj6FI2uZyU.jpg?1497535030?1497535030','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/cdn.webdamdb.com\/md_UOBj6FI2uZyU.jpg?1497535030?1497535030\" border=0 alt=\"image.jpg\" title=\"image.jpg\">",
    "hi_res_media_url": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/cdb.webdamdb.com\/1280_UOBj6FI2uZyU.jpg?1497535030?1497535030','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/cdn.webdamdb.com\/1280_UOBj6FI2uZyU.jpg?1497535030?1497535030\" border=0 alt=\"image.jpg\" title=\"image.jpg\">",
    "num_exif": 0,
    "num_xmp": 0,
    "num_comments": 0,
    "page_count": 0,
    "folder": {
        "type": "folder",
        "id": "1366964",
        "name": "Workstream Assets",
        "properties": []
    },
    "user": {
        "type": "user",
        "id": "144859",
        "email": "admin@email.com",
        "name": "Admin User",
        "username": "adminuser",
        "status": "active"
    },
    "thumbnailurls": [
        {
            "size": 100,
            "url": "https:\/\/cdn.webdamdb.com\/100th_sm_UOBj6FI2uZyU.jpg?1497535030"
        },
        {
            "size": 150,
            "url": "https:\/\/cdn.webdamdb.com\/150th_sm_UOBj6FI2uZyU.jpg?1497535030"
        },
        {
            "size": 220,
            "url": "https:\/\/cdn.webdamdb.com\/220th_sm_UOBj6FI2uZyU.jpg?1497535030"
        },
        {
            "size": 310,
            "url": "https:\/\/cdn.webdamdb.com\/310th_sm_UOBj6FI2uZyU.jpg?1497535030"
        },
        {
            "size": 550,
            "url": "https:\/\/cdn.webdamdb.com\/md_UOBj6FI2uZyU.jpg?1497535030",
            "previewurls": []
        },
        {
            "size": 1280,
            "url": "https:\/\/cdn.webdamdb.com\/1280_UOBj6FI2uZyU.jpg?1497535030"
        }
    ],
    "watched": false,
    "num_related": 0,
    "readonly": 0,
    "readonlynext": 0,
    "onhold": 0,
    "metadata": {
        "xmp": {
            "type": "assetxmp"
        },
        "exif": {
            "type": "assetexif"
        },
        "required": [],
        "active_fields": [
            {
                "field": "headline",
                "field_name": "Headline\/Name",
                "value": "",
                "required": "0"
            },
            {
                "field": "caption",
                "field_name": "Caption\/Description",
                "value": "",
                "required": "0"
            },
            {
                "field": "city",
                "field_name": "City",
                "value": "",
                "required": "0"
            },
            {
                "field": "state",
                "field_name": "Province\/State",
                "value": "",
                "required": "0"
            },
            {
                "field": "source",
                "field_name": "Source",
                "value": "",
                "required": "0"
            },
            {
                "field": "byline",
                "field_name": "Photographer",
                "value": "",
                "required": "0"
            },
            {
                "field": "keyword",
                "field_name": "Keywords",
                "value": "",
                "required": "0"
            }
        ]
    }
}

HTTP Request

GET workstream/tasks/{id}/assets/{assetId}

Get task asset's versions

Returns the task asset versions using task permissions.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets/{assetId}/versions" \

Example response:

[
    {
        "id": "37720166",
        "type": "assetversion",
        "type_id": null,
        "status": "inactive",
        "filename": "version1.png",
        "name": "version1.png",
        "filesize": "0.43",
        "width": "512",
        "height": "512",
        "description": "",
        "filetype": "png",
        "colorspace": "RGB",
        "version": "1",
        "date_created_unix": "1496779702",
        "date_modified_unix": "1496779756",
        "date_captured_unix": null,
        "media_url": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/cdn.webdamdb.com\/v1_md_UOBj6FI2uZyU.png?1496754556?1496754556','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/cdn.webdamdb.com\/v1_md_UOBj6FI2uZyU.png?1496754556?1496754556\" border=0 alt=\"version1.png\" title=\"version1.png\">",
        "hi_res_media_url": "<div class=\"asset-proc-wrapper hide\"><div class=\"asset_proc proc-details image_220px\" style=\"display:block;\">Asset Processing<\/div><\/div><img onload=\"$('.image-loading, .loading').hide();\" onerror=\"if(WebDAM.isAssetLoaded){WebDAM.isAssetLoaded(this,'https:\/\/cdn.webdamdb.com\/v1_1280_UOBj6FI2uZyU.png?1496754556?1496754556','\/images\/220imageprocessing.gif',false)};\" src=\"https:\/\/cdn.webdamdb.com\/v1_1280_UOBj6FI2uZyU.png?1496754556?1496754556\" border=0 alt=\"version1.png\" title=\"version1.png\">",
        "num_exif": 0,
        "num_xmp": 0,
        "num_comments": 0,
        "page_count": 0,
        "folder": {
            "type": "folder",
            "id": "1366964",
            "name": "Workstream Assets",
            "properties": []
        },
        "user": {
            "type": "user",
            "id": null,
            "email": null,
            "name": " ",
            "username": null,
            "status": null
        },
        "thumbnailurls": [
            {
                "size": 100,
                "url": "https:\/\/cdn.webdamdb.com\/v1_100th_sm_UOBj6FI2uZyU.png?1496754556"
            },
            {
                "size": 150,
                "url": "https:\/\/cdn.webdamdb.com\/v1_150th_sm_UOBj6FI2uZyU.png?1496754556"
            },
            {
                "size": 220,
                "url": "https:\/\/cdn.webdamdb.com\/v1_220th_sm_UOBj6FI2uZyU.png?1496754556"
            },
            {
                "size": 310,
                "url": "https:\/\/cdn.webdamdb.com\/v1_310th_sm_UOBj6FI2uZyU.png?1496754556"
            },
            {
                "size": 550,
                "url": "https:\/\/cdn.webdamdb.com\/v1_md_UOBj6FI2uZyU.png?1496754556",
                "previewurls": []
            },
            {
                "size": 1280,
                "url": "https:\/\/cdn.webdamdb.com\/v1_1280_UOBj6FI2uZyU.png?1496754556"
            }
        ],
        "watched": null,
        "num_related": 0,
        "readonly": 0,
        "readonlynext": 0,
        "onhold": 0,
        "metadata": {
            "required": []
        }
    }
]

HTTP Request

GET workstream/tasks/{id}/assets/{assetId}/versions

Get task watchers

Get all watchers associated with a given task.

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks/{id}/watchers?offset=1111102146&limit=52" \

Example response:

[
    {
        "id": "144905",
        "type": "user",
        "username": "example_admin",
        "firstname": "Example",
        "lastname": "Admin",
        "email": "exampleadmin@test.com",
        "role": 1,
        "status": "active",
        "profile_image": "https:\/\/example.com\/profileimg.jpg",
        "color": "#50ae55",
        "timezone": "",
        "language": "en"
    },
    {
        "id": "144909",
        "type": "user",
        "username": "example_admin2",
        "firstname": "Example",
        "lastname": "Admin2",
        "email": "exampleadmin2@test.com",
        "role": 1,
        "status": "active",
        "profile_image": false,
        "color": "#fec958",
        "timezone": "Canada\/Eastern",
        "language": "fr"
    }
]

HTTP Request

GET workstream/tasks/{id}/watchers

Parameters

Parameter Type Status Description
offset numeric optional Minimum: 0
limit numeric optional Minimum: 1 Maximum: 100

Get task checklist

Example request:

curl -X GET "https://apiv2.webdamdb.com/workstream/tasks/{id}/checklists" \

Example response:

[
    {
        "creator_id": "144859",
        "value": "Checklist item 1",
        "status": 0,
        "pos": 0,
        "completed_by_id": null,
        "id": 1,
        "task_id": 12,
        "created_at": 1493756028,
        "updated_at": 1493758702
    },
    {
        "creator_id": "144859",
        "value": "Checklist item 2",
        "status": 1,
        "pos": 1,
        "completed_by_id": null,
        "id": 2,
        "task_id": 12,
        "created_at": 1493756028,
        "updated_at": 1493758702
    },
    {
        "creator_id": "144859",
        "value": "Checklist item 3",
        "status": 0,
        "pos": 2,
        "completed_by_id": null,
        "id": 3,
        "task_id": 12,
        "created_at": 1493756028,
        "updated_at": 1493758702
    },
    {
        "creator_id": "144859",
        "value": "Checklist item 4",
        "status": 1,
        "pos": 3,
        "completed_by_id": null,
        "id": 4,
        "task_id": 12,
        "created_at": 1493756028,
        "updated_at": 1493758702
    }
]

HTTP Request

GET workstream/tasks/{id}/checklists

Create task

Create a new task. At a minimum, "form_id" is required for this to work. Name will default to an empty string and status will default to the draft status in that case. Draft tasks may only be seen by the current logged-in user.

A successful response will be a 200 message and the request task object that has been created.

form_id: The form ID that this task is being created off of.
assetids: An array of asset IDs to automatically associate with this task.
keywords: A comma-separated string of keywords. These will automatically get assigned to any of the above asset IDs. Anything passed into the "keywords" type field should be in here.
status: Default status of a created form is draft, but to submit a form, it needs to be set to pending. These statuses are associated with the ids returned in the GET /statuses call.
name: The name of your task. Anything passed into the "task name" type field should be in here.
due_date:A UTC unix timestamp. Anything passed into the "due date" type field should be in here.
assignee_id: The user ID of the assignee. Anything passed into the "assignee" type field should be in here.
project_id: A valid project ID to associate this task with.
fields: An array of field data objects. Each field object needs to have a required numeric "id" (corresponding to the original field ID when retrieving the form fields) and an optional "response" (empty if no response). Static fields do not use the response. Picklists dropdowns, radio button options, and checkbox options should have the selected string value as the response. Attachments requires an array of assets that have both filename and id. Field types: Picklist (15), Radio (16), Checkbox (17), Datepicker (18), Static image (20), Static text (21), Short answer (22), Long answer (23), Static description (24), Attachments (19), Keywords (25, comma-separated keywords), Due date (26, unix timestamp), Assignee (28, numeric user id), Task name (29), Task description (30), Task email (31)

Here's an example of some JSON you might pass in to create a task: { "form_id": 213, "name": "Task created via API", "status": 7, "fields": [ { "id": 17396, "response": "The task description." }, { "id": 17393, "response": "user@email.com" }, { "id": 17394, "response": 144859 }, { "id": 17395, "response": 1522173658 }, { "id": 2764, "response": "some,example,keywords" }, { "id": 17398, "response": "a short answer" }, { "id": 17399, "response": "a long, long, long, long, long answer" }, { "id": 17400, "response": "Drop 3" }, { "id": 17401, "response": 1522173658 }, { "id": 17402, "response": ["Check 1", "Check 3"] }, { "id": 17403, "response": "Choice 2" } ] }

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/tasks" \
        -d "form_id"="34435237" \
        -d "assetids[]"="44415" \
        -d "keywords"="necessitatibus" \
        -d "status"="34435237" \
        -d "name"="necessitatibus" \
        -d "due_date"="34435237" \
        -d "assignee_id"="34435237" \
        -d "project_id"="34435237" \
        -d "fields[]"="44415" \

HTTP Request

POST workstream/tasks

Parameters

Parameter Type Status Description
form_id numeric required
assetids array optional
keywords string optional
status numeric optional
name string optional Maximum: 255
due_date numeric optional
assignee_id numeric optional
project_id numeric optional
fields array optional

Add asset to task

Associate a single asset to a task.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets/{assetId}" \

HTTP Request

POST workstream/tasks/{id}/assets/{assetId}

Add assets to task

Associate one or more assets to a task.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets" \
        -d "assetids[]"="49770" \

HTTP Request

POST workstream/tasks/{id}/assets

Parameters

Parameter Type Status Description
assetids array required

Edit task checklist

Takes in the full checklist for both marking a checklist item complete, and for editing the checklist content. Takes in an array of checklist_items which consist of "value", "status", "creator_id", "pos", and "completed_by_id" per checklist item. "status" should be 0 if incomplete, and 1 if complete.

Example request:

curl -X POST "https://apiv2.webdamdb.com/workstream/tasks/{id}/checklists" \
        -d "checklist_items[]"="13658" \

HTTP Request

POST workstream/tasks/{id}/checklists

Parameters

Parameter Type Status Description
checklist_items array optional

Add watchers to task

Add one or more users to a task.

Example request:

curl -X PUT "https://apiv2.webdamdb.com/workstream/tasks/{id}/watchers" \
        -d "user_ids[]"="41724" \
        -d "message"="fugiat" \

HTTP Request

PUT workstream/tasks/{id}/watchers

Parameters

Parameter Type Status Description
user_ids array required
message string optional Minimum: 1 Maximum: 3000

Update task

status: If you are updating your task's status, it must be one of the status IDs associated with your account, not including draft.
name: The name of your task.
due_date:A UTC unix timestamp.
assignee_id: The user ID of the assignee.
project_id: A valid project ID to associate this task with.

Example request:

curl -X PUT "https://apiv2.webdamdb.com/workstream/tasks/{id}" \
        -d "status"="4" \
        -d "name"="aspernatur" \
        -d "due_date"="4" \
        -d "assignee_id"="4" \
        -d "project_id"="4" \

HTTP Request

PUT workstream/tasks/{id}

Parameters

Parameter Type Status Description
status numeric optional
name string optional Maximum: 255
due_date numeric optional
assignee_id numeric optional
project_id numeric optional

Remove asset from task

Disassociate a single asset from a task. This does not delete the asset from the asset library.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets/{assetId}" \

HTTP Request

DELETE workstream/tasks/{id}/assets/{assetId}

Remove assets from task

Disassociate one or more assets from a task. This does not delete the asset from the asset library.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/tasks/{id}/assets" \
        -d "assetids[]"="2317" \

HTTP Request

DELETE workstream/tasks/{id}/assets

Parameters

Parameter Type Status Description
assetids array required

Remove watchers from task

Remove one or more watchers from a task.

Example request:

curl -X DELETE "https://apiv2.webdamdb.com/workstream/tasks/{id}/watchers" \
        -d "user_ids[]"="29818" \
        -d "message"="mollitia" \

HTTP Request

DELETE workstream/tasks/{id}/watchers

Parameters

Parameter Type Status Description
user_ids array required
message string optional Minimum: 1 Maximum: 3000