Asana Collect Slice
Overview
Asana is a project management tool that helps teams track their tasks and projects.
The Datacoral Asana slice collects data from an Asana account and enables data flow from an Asana workspace into a data warehouse, such as Redshift. For workspaces with a high number of tasks, use of the Asana Premium slice is recommended to fetch only changed tasks.
Steps to add this slice to your installation
The steps to launch your slice are:
- Generate Asana API keys
- Specify the slice config
- Add the Asana slice
1. Generate Asana API keys
Setup requirements
Before getting started please make sure to have the following information:
- Access to an active Asana account
Setup instructions
The Asana slice requires an auth token to collect data. An auth token can be obtained from Asana through the following steps:
- Click on your initials in the right top corner of the Asana navigation banner and access "Admin Console"
- In the left sidebar menu, navigate to Apps > Service accounts.
- Click on "Add Service Account".
- Provide a name for the token, like "datacoral" and copy the Token
- Click on "Save Changes"
2. Specify the slice config
To get a template for the Asana slice configuration save the output of the describe --input-parameters
command as follows:
Example template:
Modify the asana_parameters_file
file to add the auth_token generated from Asana
3. Add the Slice
slice-name
Name of your slice. A schema with your slice-name is automatically created in your warehouseparams-file
File path to your input parameters file. Ex. asana_parameters_file.json
Supported load units
The Asana slice automatically collects the following loadunits from the Asana API and makes them available in your warehouse for analysis.
workspaces
: captures all the attributes for workspaces that anchors all data within Asanaprojects
: captures all the attributes for projects within a workspaceproject_members
: represents all members associated with a project projects. This information is derived from the project members arrayproject_current_status
: represents the status of the project projects as of the load time. This loadunit is intended to be loaded incrementally to the destination table for historical viewsproject_sections
: represents all sections associated with a project projects. This information is derived from the project sections arraysections
: represents the sections. This slice will extract all section data upon execution.stories
: represents the stories. This slice will extract all story data upon execution.task_stories
: represents the task stories associated with tasks.tasks
: represents the core object of Asana, tasks. This slice will extract all task data upon execution. Use of AsanaPremium is recommended for for large workspaces, which enables incremental pull of updated tasks.task_custom_fields
: represents the custom fields associated with taskstask_memberships
: represents the sections and projects that a task belongs toworkspace_projects
&project_tasks
are intermediate loadunits used to extract related data from Asana.
Slice output
Output of this slice is stored in S3 and Redshift.
AWS S3
Data stored in AWS S3 is partitioned by date and time
s3://datacoral-data-bucket/<slice-name>
AWS Redshift: Schema - schema name will be same as a slice-name. Tables produced by the slice are:
Questions? Interested?
If you have questions or feedback, feel free to reach out at hello@datacoral.co or Request a demo