Create a task
Schema: | Connectors.Asana.functions.CreateTask |
---|---|
Service: | Asana |
Create a new task in a project.
{ credential_source: "END_USER" }
"0fb0abc-1qwe234-asdf1234-zxcv0987"
"0fb0abc-1qwe234-asdf1234-zxcv0987"
A connector's access token property specifies how the connector handles authentication.
user Workflows that include a connector function relying on end-user authentication can can only be started with a link trigger.
asana_access_token: {
credential_source: "END_USER"
}
End-user experience: User will be prompted to link their external account via OAuth when they first start the workflow that contains this connector.
Developer experience: Developer does not have to implement authentication in app.
asana_access_token: {
credential_source: "DEVELOPER"
}
End-user experience: User can start a workflow containing the connector (they are not prompted to authenticate).
Developer experience: One of the app's collaborators configures external authentication via the CLI before sharing the app with users.
First, import Connectors
from deno-slack-hub
into your project's import_map.json
file, like this:
{
"imports": {
"deno-slack-hub/": "https://deno.land/x/deno_slack_hub@2.2.0/",
"deno-slack-sdk/": "https://deno.land/x/deno_slack_sdk@2.14.2/",
"deno-slack-api/": "https://deno.land/x/deno_slack_api@2.8.0/",
}
}
Next, import Connectors
at the top of your workflow's definition file:
// my_workflow_file.ts
import { Connectors } from "deno-slack-hub/mod.ts";
Finally, add the connector as a step in your workflow just like you would a built-in Slack function.
SomeWorkflow.addStep(
Connectors.Asana.functions.CreateTask, {
// The globally unique identifier for the workspace or organization
workspace_gid: "0fb0abc-1qwe234-asdf1234-zxcv0987",
// The globally unique identifier of the project to add a task to
project: "0fb0abc-1qwe234-asdf1234-zxcv0987",
// (Optional) The Slack user ID of the person to assign this task to
// assignee: "U123456",
// A concise name for this task
name: "Merge orders spreadsheets",
// (Optional) The date and time when this task should start, as a Unix timestamp
// start_at: 1698681600,
// (Optional) The date and time when this task is due, as a Unix timestamp
// due_at: 1710220715,
// (Optional) Free-form text describing this task
// description: "Merge these orders spreadsheets and make sure to alert billing if we are off by 10%",
// (Optional) A comma-separated array of globally unique tag identifiers
// tags: ["1234","9876"],
// (Optional) A comma-separated array of Slack user IDs to be added as project followers. In Asana, followers are a subset of members who have opted in to receive 'tasks added' notifications for a project.
// collaborators: ["U123456","U987653"],
asana_access_token: { credential_source: "END_USER" }
}
);
🧙🏼 Your admin may need to approve the connector first. If your workspace has been configured to only allow admin-approved apps, the CLI will prompt you to send an admin approval request the first time you try to use a connector that hasn't been approved by an admin yet. While waiting for admin approval, the CLI may report an error like this:
Workflow function... is referring to an unknown step output parameter...
You can safely ignore this error; it will go away as soon as your workspace admin approves your request to use the connector.