Canvas REST API

The Canvas REST API enables your organization to interact with Canvas programmatically. Use this API to register new accounts and build integration workflows between third-party applications.

This page documents the REST resources available in Canvas, including the HTTP response codes and example requests and responses:

Base URL for environments:

DEV - https://canvastest.connectmyapps.com/api

PRD - https://canvas.connectmyapps.com/api

IP restriction

You can send Canvas REST API requests from any server by default.

If you want to restict access by IP addresses, then please provide your IP addresses to ConnectMyApps support for adding them into white list.

Authentication

For enabling of access to your organization data by REST API you need to set <API access> flag ON and copy provided Secret and Consumer keys. These keys are for access to Canvas REST API and you will use them in request headers. Do not share provided keys with anybody and keep them in safe place because they are not saved in Canvas and you will not be able to get them anymore.

Use following authentication request for checking your access keys:

Headers:

Consumer:5D1AEF05263B497182992E324517FFFD0FED85FBEC2342B19CE02AB5ED62D6ED
SecretKey:a5ae515d-d53b-478c-90bd-060c616d37b7

true

Returned if the Consumer or SecretKey are incorrect or missing.

APIs for help

There are two APIs, which describes list of all provided APIs

GetMetaData

For getting of all provided APIs you need to send following request:

Headers:

no header

[ { "name": "GetMetaData", "parameters": "", "verb": "GET", "authenticate": false, "description": "Returns controllers actions", "returns": "JSON array" }, { "name": "Describe", "parameters": "String name", "verb": "GET", "authenticate": false, "description": "Describes object properties", "returns": "" }, { "name": "Authenticate", "parameters": "", "verb": "GET", "authenticate": false, "description": "Checks authentification", "returns": "boolean" }, { "name": "Applications", "parameters": "", "verb": "GET", "authenticate": false, "description": "Returns Canvas applications", "returns": "JSON Array" }, { "name": "WorkflowTemplates", "parameters": "", "verb": "GET", "authenticate": false, "description": "Returns list of workflow templates", "returns": "JSON array" }, { "name": "Accounts", "parameters": "", "verb": "GET", "authenticate": false, "description": "Returns list of accounts in the organization", "returns": "JSON array" }, { "name": "RegApplications", "parameters": "", "verb": "GET", "authenticate": false, "description": "Returns account registerred applications", "returns": "JSON Array" }, { "name": "Workflows", "parameters": "", "verb": "GET", "authenticate": false, "description": "Returns list of registered workflows", "returns": "JSON array" }, { "name": "Workflow", "parameters": "Guid id", "verb": "GET", "authenticate": false, "description": "Returns registered workflow by id", "returns": "JSON" }, { "name": "RegApplication", "parameters": "[FromBody]AddRegApplicationApiDto regApp", "verb": "POST", "authenticate": false, "description": "Registers a new application and returns Id", "returns": "Guid" }, { "name": "Workflow", "parameters": "[FromBody]AddWorkflowApiDto workflow", "verb": "POST", "authenticate": false, "description": "Registers a new workflow based on template and returns Id", "returns": "Guid" }, { "name": "DeleteWorkflow", "parameters": "Guid id", "verb": "GET", "authenticate": false, "description": "Deletes workflow by Id", "returns": "Guid" }, { "name": "RunWorkflow", "parameters": "[FromBody]RunMetadataApiDto metadata", "verb": "POST", "authenticate": false, "description": "Runs workflow", "returns": "Guid" }, { "name": "WorkflowScheduler", "parameters": "[FromBody]UpdateWorkfowSchedulerApiDto scheduler", "verb": "POST", "authenticate": false, "description": "Updates the workflow scheduler", "returns": "" }, { "name": "Account", "parameters": "[FromBody]AddAccountApiDto data", "verb": "POST", "authenticate": false, "description": "Account registration", "returns": "" } ]

 

Describe

For getting of description about APIs parameters you can use following request:

APIs for organization administration

Accounts

Returns list of all active accounts in your organization

Account

Registers a new account and returns account Id. If account is created as inactive then an email to complete activation will be send by corresponded address.

Application APIs

Applications

Returns list of all third-part applications supported by CMA

RegApplications

Returns account registerred applications

RegApplication

Registers a new application and returns Id

Workflow APIs

WorkflowTemplates

Returns list of workflow templates provided by CMA and your organization

Workflows

Returns list of registered workflows

Workflow (get)

Returns registered workflow by id

Workflow (post)

Registers a new workflow based on template

DeleteWorkflow

Removes workflow by Id

RunWorkflow

Runs workflow or needed blocks

WorkflowScheduler

Sets ON/OFF a workflow scheduler. The scheduler frequency should be set in CRON format.