├── .Rbuildignore ├── R ├── utils-pipe.R ├── get-available-workspaces.R ├── call-api.R ├── utils.R ├── authentication.R ├── attachments.R ├── events.R ├── custom_field_settings.R ├── project_memberships.R ├── query-for-projects.R ├── organization_exports.R ├── users.R ├── project_statuses.R ├── stories.R ├── teams.R ├── sections.R └── webhooks.R ├── man ├── pipe.Rd ├── print.asana_api.Rd ├── assert_is_access_token.Rd ├── asn_get.Rd ├── asn_put.Rd ├── asn_post.Rd ├── asn_attachments.Rd ├── asn_users_me.Rd ├── asn_teams.Rd ├── asn_attachments_find_by_id.Rd ├── asn_attachments_find_by_task.Rd ├── asn_webhooks_get_by_id.Rd ├── store_access_token.Rd ├── asn_project_memberships_get_single.Rd ├── asn_project_statuses_delete.Rd ├── get_all_workspaces.Rd ├── asn_sections.Rd ├── asn_stories_find_by_id.Rd ├── asn_teams_find_by_id.Rd ├── asn_users.Rd ├── asn_project_memberships.Rd ├── asn_stories_find_by_task.Rd ├── asn_stories_delete.Rd ├── asn_tags_delete.Rd ├── asn_users_find_by_workspace.Rd ├── asn_workspaces_find_all.Rd ├── asn_organization_exports_find_by_id.Rd ├── asn_sections_find_by_id.Rd ├── asn_teams_users.Rd ├── asn_tags_find_by_id.Rd ├── asn_project_memberships_get_many.Rd ├── asn_project_statuses_find_by_id.Rd ├── asn_custom_field_settings.Rd ├── get_all_projects.Rd ├── asn_workspaces_find_by_id.Rd ├── asn_sections_find_by_project.Rd ├── asn_project_statuses_find_by_project.Rd ├── asn_organization_exports_create.Rd ├── asn_users_find_by_id.Rd ├── asn_users_find_all.Rd ├── asn_tags_find_by_workspace.Rd ├── asn_stories.Rd ├── asn_sections_delete.Rd ├── asn_sections_create_in_project.Rd ├── asn_stories_create_on_task.Rd ├── asn_teams_find_by_organization.Rd ├── asn_webhooks_get_all.Rd ├── asn_webhooks_delete_by_id.Rd ├── get_workspace_projects.Rd ├── asn_tags.Rd ├── asn_custom_fields_delete.Rd ├── asn_project_statuses_create.Rd ├── asn_tags_get_tasks_with_tag.Rd ├── asn_project_statuses.Rd ├── asn_custom_fields_find_by_id.Rd ├── asn_custom_fields.Rd ├── asn_teams_find_by_user.Rd ├── asn_workspaces_update.Rd ├── asn_tags_create.Rd ├── asn_tags_update.Rd ├── asn_custom_fields_find_by_workspace.Rd ├── asn_tags_create_in_workspace.Rd ├── asn_workspaces_remove_user.Rd ├── asn_tags_find_all.Rd ├── asn_organization_exports.Rd ├── asn_teams_remove_user.Rd ├── asn_workspaces_add_user.Rd ├── asn_sections_update.Rd ├── asn_projects_delete.Rd ├── asn_custom_fields_update_enum_option.Rd ├── asn_projects_create_in_team.Rd ├── asn_projects_find_by_id.Rd ├── asn_sections_insert_in_project.Rd ├── asn_stories_update.Rd ├── asn_workspaces.Rd ├── asn_projects_create_in_workspace.Rd ├── asn_projects_remove_custom_field_setting.Rd ├── asn_projects_find_by_team.Rd ├── asn_custom_field_settings_find_by_project.Rd ├── asn_projects_add_members.Rd ├── asn_projects_remove_members.Rd ├── asn_teams_add_user.Rd ├── asn_projects_find_by_workspace.Rd ├── asn_events.Rd ├── asn_projects_tasks.Rd ├── asn_custom_fields_update.Rd ├── asn_projects.Rd ├── asn_projects_remove_followers.Rd ├── asn_webhooks_create.Rd ├── asn_projects_update.Rd ├── asn_projects_find_all.Rd ├── asn_custom_fields_add_enum_option.Rd ├── asn_tasks_find_by_id.Rd ├── asn_custom_fields_reorder_enum_option.Rd ├── asn_tasks_tags.Rd ├── asn_custom_fields_create.Rd ├── asn_tasks_add_tag.Rd ├── asn_tasks_subtasks.Rd ├── asn_tasks_projects.Rd ├── asn_tasks_stories.Rd ├── asn_tasks_dependents.Rd ├── asn_tasks_find_by_tag.Rd ├── asn_tasks.Rd ├── asn_projects_create.Rd ├── asn_tasks_dependencies.Rd ├── asn_tasks_remove_tag.Rd ├── asn_tasks_remove_dependents.Rd ├── asn_projects_add_followers.Rd ├── asn_tasks_remove_dependencies.Rd ├── asn_tasks_add_subtask.Rd ├── asn_tasks_remove_project.Rd ├── asn_tasks_find_by_section.Rd ├── asn_tasks_delete.Rd ├── asn_tasks_add_comment.Rd ├── asn_tasks_find_by_project.Rd ├── asn_projects_add_custom_field_setting.Rd ├── asn_tasks_add_dependents.Rd ├── asn_tasks_add_dependencies.Rd ├── asn_tasks_add_followers.Rd ├── asn_tasks_remove_followers.Rd ├── asn_tasks_update.Rd ├── asn_tasks_create_in_workspace.Rd ├── asn_tasks_create.Rd ├── asn_workspaces_typeahead.Rd ├── asn_webhooks.Rd ├── asn_tasks_search.Rd ├── asn_tasks_find_all.Rd └── asn_tasks_add_project.Rd ├── asana.Rproj ├── DESCRIPTION ├── README.Rmd ├── .gitignore ├── README.md └── NAMESPACE /.Rbuildignore: -------------------------------------------------------------------------------- 1 | ^.*\.Rproj$ 2 | ^\.Rproj\.user$ 3 | ^README\.Rmd$ 4 | -------------------------------------------------------------------------------- /R/utils-pipe.R: -------------------------------------------------------------------------------- 1 | #' Pipe operator 2 | #' 3 | #' See \code{magrittr::\link[magrittr]{\%>\%}} for details. 4 | #' 5 | #' @name %>% 6 | #' @rdname pipe 7 | #' @keywords internal 8 | #' @export 9 | #' @importFrom magrittr %>% 10 | #' @usage lhs \%>\% rhs 11 | NULL 12 | -------------------------------------------------------------------------------- /man/pipe.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils-pipe.R 3 | \name{\%>\%} 4 | \alias{\%>\%} 5 | \title{Pipe operator} 6 | \usage{ 7 | lhs \%>\% rhs 8 | } 9 | \description{ 10 | See \code{magrittr::\link[magrittr]{\%>\%}} for details. 11 | } 12 | \keyword{internal} 13 | -------------------------------------------------------------------------------- /man/print.asana_api.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/client.R 3 | \name{print.asana_api} 4 | \alias{print.asana_api} 5 | \title{Print response from Asana API} 6 | \usage{ 7 | \method{print}{asana_api}(x, ...) 8 | } 9 | \description{ 10 | Print response from Asana API 11 | } 12 | -------------------------------------------------------------------------------- /man/assert_is_access_token.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/authentication.R 3 | \name{assert_is_access_token} 4 | \alias{assert_is_access_token} 5 | \title{Throw an error if the access token is malformed.} 6 | \usage{ 7 | assert_is_access_token(access_token) 8 | } 9 | \description{ 10 | Throw an error if the access token is malformed. 11 | } 12 | -------------------------------------------------------------------------------- /asana.Rproj: -------------------------------------------------------------------------------- 1 | Version: 1.0 2 | 3 | RestoreWorkspace: Default 4 | SaveWorkspace: Default 5 | AlwaysSaveHistory: Default 6 | 7 | EnableCodeIndexing: Yes 8 | UseSpacesForTab: Yes 9 | NumSpacesForTab: 2 10 | Encoding: UTF-8 11 | 12 | RnwWeave: knitr 13 | LaTeX: pdfLaTeX 14 | 15 | AutoAppendNewline: Yes 16 | StripTrailingWhitespace: Yes 17 | 18 | BuildType: Package 19 | PackageUseDevtools: Yes 20 | PackageInstallArgs: --no-multiarch --with-keep.source 21 | PackageRoxygenize: rd,collate,namespace 22 | -------------------------------------------------------------------------------- /man/asn_get.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/client.R 3 | \name{asn_get} 4 | \alias{asn_get} 5 | \title{Dispatch a GET request to Asana} 6 | \usage{ 7 | asn_get(endpoint, ..., options = list(), 8 | .token = Sys.getenv("ASANA_ACCESS_TOKEN")) 9 | } 10 | \arguments{ 11 | \item{endpoint}{endpoint} 12 | 13 | \item{...}{query parameters} 14 | 15 | \item{.token}{access token} 16 | } 17 | \description{ 18 | Dispatch a GET request to Asana 19 | } 20 | -------------------------------------------------------------------------------- /man/asn_put.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/client.R 3 | \name{asn_put} 4 | \alias{asn_put} 5 | \title{Dispatch a PUT request to Asana} 6 | \usage{ 7 | asn_put(endpoint, ..., options = list(), 8 | .token = Sys.getenv("ASANA_ACCESS_TOKEN")) 9 | } 10 | \arguments{ 11 | \item{endpoint}{endpoint} 12 | 13 | \item{...}{query parameters} 14 | 15 | \item{.token}{access token} 16 | } 17 | \description{ 18 | Dispatch a PUT request to Asana 19 | } 20 | \examples{ 21 | \dontrun{ 22 | asn_put('/projects/760385849063788', name = 'New Name') 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /man/asn_post.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/client.R 3 | \name{asn_post} 4 | \alias{asn_post} 5 | \title{Dispatch a POST request to Asana} 6 | \usage{ 7 | asn_post(endpoint, ..., options = list(), 8 | .token = Sys.getenv("ASANA_ACCESS_TOKEN")) 9 | } 10 | \arguments{ 11 | \item{endpoint}{endpoint} 12 | 13 | \item{...}{query parameters} 14 | 15 | \item{.token}{access token} 16 | } 17 | \description{ 18 | Dispatch a POST request to Asana 19 | } 20 | \examples{ 21 | \dontrun{ 22 | asn_post('/teams/730118080732127/projects', name = 'My New Project') 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /man/asn_attachments.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/attachments.R 3 | \name{asn_attachments} 4 | \alias{asn_attachments} 5 | \title{Attachments} 6 | \description{ 7 | An _attachment_ object represents any file attached to a task in Asana, 8 | whether it's an uploaded file or one associated via a third-party service 9 | such as Dropbox or Google Drive. 10 | } 11 | \seealso{ 12 | \link{https://asana.com/developers/api-reference/attachments} 13 | 14 | Other attachments: \code{\link{asn_attachments_find_by_id}}, 15 | \code{\link{asn_attachments_find_by_task}} 16 | } 17 | \concept{attachments} 18 | -------------------------------------------------------------------------------- /R/get-available-workspaces.R: -------------------------------------------------------------------------------- 1 | #' List Available Workspaces in the Asana 2 | #' 3 | #' @param access_token An Asana access token. 4 | #' @return A list containing a dataframe of all available workspaces to the Asana user. 5 | #' @references \url{https://asana.com/developers/api-reference/workspaces#get} 6 | #' @examples 7 | #' \donttest{ 8 | #' ## Marked as don't test because an access token is needed 9 | #' get_all_workspaces() 10 | #' } 11 | #' @export 12 | 13 | get_all_workspaces <- function(access_token = Sys.getenv("ASANA_ACCESS_TOKEN")){ 14 | 15 | results <- call_asana_api("workspaces", access_token = access_token) 16 | fix_ids(results$data) 17 | 18 | } 19 | -------------------------------------------------------------------------------- /man/asn_users_me.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/users.R 3 | \name{asn_users_me} 4 | \alias{asn_users_me} 5 | \title{Returns the full user record for the currently authenticated user.} 6 | \usage{ 7 | asn_users_me(..., options = list()) 8 | } 9 | \arguments{ 10 | \item{...}{{Object} Parameters for the request} 11 | } 12 | \description{ 13 | Returns the full user record for the currently authenticated user. 14 | } 15 | \seealso{ 16 | Other users: \code{\link{asn_users_find_all}}, 17 | \code{\link{asn_users_find_by_id}}, 18 | \code{\link{asn_users_find_by_workspace}}, 19 | \code{\link{asn_users}} 20 | } 21 | \concept{users} 22 | -------------------------------------------------------------------------------- /man/asn_teams.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/teams.R 3 | \name{asn_teams} 4 | \alias{asn_teams} 5 | \title{Teams} 6 | \description{ 7 | A _team_ is used to group related projects and people together within an 8 | organization. Each project in an organization is associated with a team. 9 | } 10 | \seealso{ 11 | \link{https://asana.com/developers/api-reference/teams} 12 | 13 | Other teams: \code{\link{asn_teams_add_user}}, 14 | \code{\link{asn_teams_find_by_id}}, 15 | \code{\link{asn_teams_find_by_organization}}, 16 | \code{\link{asn_teams_find_by_user}}, 17 | \code{\link{asn_teams_remove_user}}, 18 | \code{\link{asn_teams_users}} 19 | } 20 | \concept{teams} 21 | -------------------------------------------------------------------------------- /DESCRIPTION: -------------------------------------------------------------------------------- 1 | Package: asana 2 | Type: Package 3 | Title: Access the Asana API 4 | Version: 0.1.1 5 | Author: Chris Cardillo [aut, cre], Sumedh Panchadhar [aut], Richard Cotton [aut] 6 | Maintainer: Richard Cotton 7 | Description: Manage your Asana projects via R. 8 | URL: https://github.com/datacamp/asana 9 | BugReports: https://github.com/datacamp/asana/issues 10 | Depends: 11 | R (>= 3.0.0) 12 | Imports: 13 | assertive.types, 14 | httr, 15 | purrr, 16 | dplyr, 17 | magrittr, 18 | jsonlite 19 | Suggests: 20 | testthat, 21 | knitr 22 | License: GPL (>= 3) 23 | LazyLoad: yes 24 | LazyData: yes 25 | VignetteBuilder: knitr 26 | Roxygen: list(wrap = FALSE) 27 | RoxygenNote: 6.1.0 28 | -------------------------------------------------------------------------------- /man/asn_attachments_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/attachments.R 3 | \name{asn_attachments_find_by_id} 4 | \alias{asn_attachments_find_by_id} 5 | \title{Returns the full record for a single attachment.} 6 | \usage{ 7 | asn_attachments_find_by_id(attachment, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{attachment}{{Id} Globally unique identifier for the attachment.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the full record for a single attachment. 16 | } 17 | \seealso{ 18 | Other attachments: \code{\link{asn_attachments_find_by_task}}, 19 | \code{\link{asn_attachments}} 20 | } 21 | \concept{attachments} 22 | -------------------------------------------------------------------------------- /man/asn_attachments_find_by_task.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/attachments.R 3 | \name{asn_attachments_find_by_task} 4 | \alias{asn_attachments_find_by_task} 5 | \title{Returns the compact records for all attachments on the task.} 6 | \usage{ 7 | asn_attachments_find_by_task(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} Globally unique identifier for the task.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the compact records for all attachments on the task. 16 | } 17 | \seealso{ 18 | Other attachments: \code{\link{asn_attachments_find_by_id}}, 19 | \code{\link{asn_attachments}} 20 | } 21 | \concept{attachments} 22 | -------------------------------------------------------------------------------- /man/asn_webhooks_get_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/webhooks.R 3 | \name{asn_webhooks_get_by_id} 4 | \alias{asn_webhooks_get_by_id} 5 | \title{Returns the full record for the given webhook.} 6 | \usage{ 7 | asn_webhooks_get_by_id(webhook, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{webhook}{{Id} The webhook to get.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the full record for the given webhook. 16 | } 17 | \seealso{ 18 | Other webhooks: \code{\link{asn_webhooks_create}}, 19 | \code{\link{asn_webhooks_delete_by_id}}, 20 | \code{\link{asn_webhooks_get_all}}, 21 | \code{\link{asn_webhooks}} 22 | } 23 | \concept{webhooks} 24 | -------------------------------------------------------------------------------- /man/store_access_token.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/authentication.R 3 | \name{store_access_token} 4 | \alias{store_access_token} 5 | \title{Store an access token} 6 | \usage{ 7 | store_access_token(access_token) 8 | } 9 | \arguments{ 10 | \item{access_token}{A string giving an access token to authenticate the API 11 | call.} 12 | } 13 | \value{ 14 | Invoked for the side effect of setting the environment variable 15 | \code{ASANA_ACCESS_TOKEN} to the input. 16 | } 17 | \description{ 18 | Stores an Asana API access token for the R session. 19 | } 20 | \details{ 21 | See the developer documentation for how to get an access token. 22 | \url{https://asana.com/developers/documentation/getting-started/auth} 23 | } 24 | -------------------------------------------------------------------------------- /man/asn_project_memberships_get_single.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/project_memberships.R 3 | \name{asn_project_memberships_get_single} 4 | \alias{asn_project_memberships_get_single} 5 | \title{Returns the project membership record.} 6 | \usage{ 7 | asn_project_memberships_get_single(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} Globally unique identifier for the project membership.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the project membership record. 16 | } 17 | \seealso{ 18 | Other project_memberships: \code{\link{asn_project_memberships_get_many}}, 19 | \code{\link{asn_project_memberships}} 20 | } 21 | \concept{project_memberships} 22 | -------------------------------------------------------------------------------- /README.Rmd: -------------------------------------------------------------------------------- 1 | --- 2 | output: github_document 3 | --- 4 | 5 | 6 | 7 | ```{r setup, include = FALSE} 8 | knitr::opts_chunk$set( 9 | collapse = TRUE, 10 | comment = "##", 11 | fig.path = "man/figures/README-", 12 | out.width = "100%" 13 | ) 14 | ``` 15 | # asana 16 | 17 | An R package for accessing the Asana API. 18 | 19 | ## Installation 20 | 21 | One day, you will be able to install the released version of `asana` from [CRAN](https://CRAN.R-project.org) with: 22 | 23 | ``` r 24 | install.packages("asana") 25 | ``` 26 | 27 | For now, install the development version from [GitHub](https://github.com/) with: 28 | 29 | ``` r 30 | # install.packages("remotes") 31 | remotes::install_github("datacamp/asana") 32 | ``` 33 | -------------------------------------------------------------------------------- /man/asn_project_statuses_delete.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/project_statuses.R 3 | \name{asn_project_statuses_delete} 4 | \alias{asn_project_statuses_delete} 5 | \title{Deletes a specific, existing project status update.} 6 | \usage{ 7 | asn_project_statuses_delete(project_status, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project-status}{{Id} The project status update to delete.} 11 | } 12 | \description{ 13 | Returns an empty data record. 14 | } 15 | \seealso{ 16 | Other project_statuses: \code{\link{asn_project_statuses_create}}, 17 | \code{\link{asn_project_statuses_find_by_id}}, 18 | \code{\link{asn_project_statuses_find_by_project}}, 19 | \code{\link{asn_project_statuses}} 20 | } 21 | \concept{project_statuses} 22 | -------------------------------------------------------------------------------- /man/get_all_workspaces.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/get-available-workspaces.R 3 | \name{get_all_workspaces} 4 | \alias{get_all_workspaces} 5 | \title{List Available Workspaces in the Asana} 6 | \usage{ 7 | get_all_workspaces(access_token = Sys.getenv("ASANA_ACCESS_TOKEN")) 8 | } 9 | \arguments{ 10 | \item{access_token}{An Asana access token.} 11 | } 12 | \value{ 13 | A list containing a dataframe of all available workspaces to the Asana user. 14 | } 15 | \description{ 16 | List Available Workspaces in the Asana 17 | } 18 | \examples{ 19 | \donttest{ 20 | ## Marked as don't test because an access token is needed 21 | get_all_workspaces() 22 | } 23 | } 24 | \references{ 25 | \url{https://asana.com/developers/api-reference/workspaces#get} 26 | } 27 | -------------------------------------------------------------------------------- /man/asn_sections.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/sections.R 3 | \name{asn_sections} 4 | \alias{asn_sections} 5 | \title{Sections} 6 | \description{ 7 | A _section_ is a subdivision of a project that groups tasks together. It can 8 | either be a header above a list of tasks in a list view or a column in a 9 | board view of a project. 10 | } 11 | \seealso{ 12 | \link{https://asana.com/developers/api-reference/sections} 13 | 14 | Other sections: \code{\link{asn_sections_create_in_project}}, 15 | \code{\link{asn_sections_delete}}, 16 | \code{\link{asn_sections_find_by_id}}, 17 | \code{\link{asn_sections_find_by_project}}, 18 | \code{\link{asn_sections_insert_in_project}}, 19 | \code{\link{asn_sections_update}} 20 | } 21 | \concept{sections} 22 | -------------------------------------------------------------------------------- /man/asn_stories_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/stories.R 3 | \name{asn_stories_find_by_id} 4 | \alias{asn_stories_find_by_id} 5 | \title{Returns the full record for a single story.} 6 | \usage{ 7 | asn_stories_find_by_id(story, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{story}{{Id} Globally unique identifier for the story.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the full record for a single story. 16 | } 17 | \seealso{ 18 | Other stories: \code{\link{asn_stories_create_on_task}}, 19 | \code{\link{asn_stories_delete}}, 20 | \code{\link{asn_stories_find_by_task}}, 21 | \code{\link{asn_stories_update}}, 22 | \code{\link{asn_stories}} 23 | } 24 | \concept{stories} 25 | -------------------------------------------------------------------------------- /man/asn_teams_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/teams.R 3 | \name{asn_teams_find_by_id} 4 | \alias{asn_teams_find_by_id} 5 | \title{Returns the full record for a single team.} 6 | \usage{ 7 | asn_teams_find_by_id(team, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{team}{{Id} Globally unique identifier for the team.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the full record for a single team. 16 | } 17 | \seealso{ 18 | Other teams: \code{\link{asn_teams_add_user}}, 19 | \code{\link{asn_teams_find_by_organization}}, 20 | \code{\link{asn_teams_find_by_user}}, 21 | \code{\link{asn_teams_remove_user}}, 22 | \code{\link{asn_teams_users}}, \code{\link{asn_teams}} 23 | } 24 | \concept{teams} 25 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # History files 2 | .Rhistory 3 | .Rapp.history 4 | 5 | # Session Data files 6 | .RData 7 | 8 | # Example code in package build process 9 | *-Ex.R 10 | 11 | # Output files from R CMD build 12 | /*.tar.gz 13 | 14 | # Output files from R CMD check 15 | /*.Rcheck/ 16 | 17 | # RStudio files 18 | .Rproj.user/ 19 | 20 | # produced vignettes 21 | vignettes/*.html 22 | vignettes/*.pdf 23 | 24 | # OAuth2 token, see https://github.com/hadley/httr/releases/tag/v0.3 25 | .httr-oauth 26 | 27 | # knitr and R markdown default cache directories 28 | /*_cache/ 29 | /cache/ 30 | 31 | # Temporary files created by R markdown 32 | *.utf8.md 33 | *.knit.md 34 | 35 | # Shiny token, see https://shiny.rstudio.com/articles/shinyapps.html 36 | rsconnect/ 37 | .Rproj.user 38 | 39 | # Pesky .DS_Store from my OSX desktop 40 | .DS_Store 41 | -------------------------------------------------------------------------------- /man/asn_users.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/users.R 3 | \name{asn_users} 4 | \alias{asn_users} 5 | \title{Users} 6 | \description{ 7 | A _user_ object represents an account in Asana that can be given access to 8 | various workspaces, projects, and tasks. 9 | 10 | Like other objects in the system, users are referred to by numerical IDs. 11 | However, the special string identifier `me` can be used anywhere 12 | a user ID is accepted, to refer to the current authenticated user. 13 | } 14 | \seealso{ 15 | \link{https://asana.com/developers/api-reference/users} 16 | 17 | Other users: \code{\link{asn_users_find_all}}, 18 | \code{\link{asn_users_find_by_id}}, 19 | \code{\link{asn_users_find_by_workspace}}, 20 | \code{\link{asn_users_me}} 21 | } 22 | \concept{users} 23 | -------------------------------------------------------------------------------- /man/asn_project_memberships.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/project_memberships.R 3 | \name{asn_project_memberships} 4 | \alias{asn_project_memberships} 5 | \title{ProjectMemberships} 6 | \description{ 7 | With the introduction of "comment-only" projects in Asana, a user's membership 8 | in a project comes with associated permissions. These permissions (whether a 9 | user has full access to the project or comment-only access) are accessible 10 | through the project memberships endpoints described here. 11 | } 12 | \seealso{ 13 | \link{https://asana.com/developers/api-reference/project_memberships} 14 | 15 | Other project_memberships: \code{\link{asn_project_memberships_get_many}}, 16 | \code{\link{asn_project_memberships_get_single}} 17 | } 18 | \concept{project_memberships} 19 | -------------------------------------------------------------------------------- /man/asn_stories_find_by_task.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/stories.R 3 | \name{asn_stories_find_by_task} 4 | \alias{asn_stories_find_by_task} 5 | \title{Returns the compact records for all stories on the task.} 6 | \usage{ 7 | asn_stories_find_by_task(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} Globally unique identifier for the task.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the compact records for all stories on the task. 16 | } 17 | \seealso{ 18 | Other stories: \code{\link{asn_stories_create_on_task}}, 19 | \code{\link{asn_stories_delete}}, 20 | \code{\link{asn_stories_find_by_id}}, 21 | \code{\link{asn_stories_update}}, 22 | \code{\link{asn_stories}} 23 | } 24 | \concept{stories} 25 | -------------------------------------------------------------------------------- /man/asn_stories_delete.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/stories.R 3 | \name{asn_stories_delete} 4 | \alias{asn_stories_delete} 5 | \title{Deletes a story. A user can only delete stories they have created. Returns an empty data record.} 6 | \usage{ 7 | asn_stories_delete(story, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{story}{{Id} Globally unique identifier for the story.} 11 | } 12 | \description{ 13 | Deletes a story. A user can only delete stories they have created. Returns an empty data record. 14 | } 15 | \seealso{ 16 | Other stories: \code{\link{asn_stories_create_on_task}}, 17 | \code{\link{asn_stories_find_by_id}}, 18 | \code{\link{asn_stories_find_by_task}}, 19 | \code{\link{asn_stories_update}}, 20 | \code{\link{asn_stories}} 21 | } 22 | \concept{stories} 23 | -------------------------------------------------------------------------------- /man/asn_tags_delete.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tags.R 3 | \name{asn_tags_delete} 4 | \alias{asn_tags_delete} 5 | \title{A specific, existing tag can be deleted by making a DELETE request 6 | on the URL for that tag.} 7 | \usage{ 8 | asn_tags_delete(tag, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{tag}{{Id} The tag to delete.} 12 | } 13 | \description{ 14 | Returns an empty data record. 15 | } 16 | \seealso{ 17 | Other tags: \code{\link{asn_tags_create_in_workspace}}, 18 | \code{\link{asn_tags_create}}, 19 | \code{\link{asn_tags_find_all}}, 20 | \code{\link{asn_tags_find_by_id}}, 21 | \code{\link{asn_tags_find_by_workspace}}, 22 | \code{\link{asn_tags_get_tasks_with_tag}}, 23 | \code{\link{asn_tags_update}}, \code{\link{asn_tags}} 24 | } 25 | \concept{tags} 26 | -------------------------------------------------------------------------------- /man/asn_users_find_by_workspace.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/users.R 3 | \name{asn_users_find_by_workspace} 4 | \alias{asn_users_find_by_workspace} 5 | \title{Returns the user records for all users in the specified workspace or 6 | organization.} 7 | \usage{ 8 | asn_users_find_by_workspace(workspace, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{workspace}{{Id} The workspace in which to get users.#'} 12 | 13 | \item{...}{{Object} Parameters for the request} 14 | } 15 | \description{ 16 | Returns the user records for all users in the specified workspace or 17 | organization. 18 | } 19 | \seealso{ 20 | Other users: \code{\link{asn_users_find_all}}, 21 | \code{\link{asn_users_find_by_id}}, 22 | \code{\link{asn_users_me}}, \code{\link{asn_users}} 23 | } 24 | \concept{users} 25 | -------------------------------------------------------------------------------- /man/asn_workspaces_find_all.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/workspaces.R 3 | \name{asn_workspaces_find_all} 4 | \alias{asn_workspaces_find_all} 5 | \title{Returns the compact records for all workspaces visible to the authorized user.} 6 | \usage{ 7 | asn_workspaces_find_all(..., options = list()) 8 | } 9 | \arguments{ 10 | \item{...}{{Object} Parameters for the request} 11 | } 12 | \description{ 13 | Returns the compact records for all workspaces visible to the authorized user. 14 | } 15 | \seealso{ 16 | Other workspaces: \code{\link{asn_workspaces_add_user}}, 17 | \code{\link{asn_workspaces_find_by_id}}, 18 | \code{\link{asn_workspaces_remove_user}}, 19 | \code{\link{asn_workspaces_typeahead}}, 20 | \code{\link{asn_workspaces_update}}, 21 | \code{\link{asn_workspaces}} 22 | } 23 | \concept{workspaces} 24 | -------------------------------------------------------------------------------- /R/call-api.R: -------------------------------------------------------------------------------- 1 | #' Call the Asana api 2 | #' 3 | #' @param endpoint A string describing the URL to access. 4 | #' @param access_token A string giving an access token to authenticate the API 5 | #' call. See \code{\link{get_access_token}}. 6 | #' @return A list. The exact contents depend upon the endpoint. 7 | #' @importFrom httr add_headers 8 | #' @importFrom httr GET 9 | #' @importFrom httr stop_for_status 10 | #' @importFrom httr content 11 | #' @importFrom jsonlite fromJSON 12 | #' @noRd 13 | call_asana_api <- function(endpoint, access_token, ...) { 14 | query <- list(...) 15 | response <- GET( 16 | paste0("https://app.asana.com/api/1.0/", endpoint), 17 | config = add_headers(Authorization = paste("Bearer", access_token)), 18 | query = query 19 | ) 20 | stop_for_status(response) 21 | txt <- content(response, as = "text") 22 | fromJSON(txt) 23 | } 24 | -------------------------------------------------------------------------------- /man/asn_organization_exports_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/organization_exports.R 3 | \name{asn_organization_exports_find_by_id} 4 | \alias{asn_organization_exports_find_by_id} 5 | \title{Returns details of a previously-requested Organization export.} 6 | \usage{ 7 | asn_organization_exports_find_by_id(organization_export, ..., 8 | options = list()) 9 | } 10 | \arguments{ 11 | \item{organization_export}{{Id} Globally unique identifier for the Organization export.#'} 12 | 13 | \item{...}{{Object} Parameters for the request} 14 | } 15 | \description{ 16 | Returns details of a previously-requested Organization export. 17 | } 18 | \seealso{ 19 | Other organization_exports: \code{\link{asn_organization_exports_create}}, 20 | \code{\link{asn_organization_exports}} 21 | } 22 | \concept{organization_exports} 23 | -------------------------------------------------------------------------------- /man/asn_sections_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/sections.R 3 | \name{asn_sections_find_by_id} 4 | \alias{asn_sections_find_by_id} 5 | \title{Returns the complete record for a single section.} 6 | \usage{ 7 | asn_sections_find_by_id(section, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{section}{{Id} The section to get.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the complete record for a single section. 16 | } 17 | \seealso{ 18 | Other sections: \code{\link{asn_sections_create_in_project}}, 19 | \code{\link{asn_sections_delete}}, 20 | \code{\link{asn_sections_find_by_project}}, 21 | \code{\link{asn_sections_insert_in_project}}, 22 | \code{\link{asn_sections_update}}, 23 | \code{\link{asn_sections}} 24 | } 25 | \concept{sections} 26 | -------------------------------------------------------------------------------- /man/asn_teams_users.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/teams.R 3 | \name{asn_teams_users} 4 | \alias{asn_teams_users} 5 | \title{Returns the compact records for all users that are members of the team.} 6 | \usage{ 7 | asn_teams_users(team, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{team}{{Id} Globally unique identifier for the team.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the compact records for all users that are members of the team. 16 | } 17 | \seealso{ 18 | Other teams: \code{\link{asn_teams_add_user}}, 19 | \code{\link{asn_teams_find_by_id}}, 20 | \code{\link{asn_teams_find_by_organization}}, 21 | \code{\link{asn_teams_find_by_user}}, 22 | \code{\link{asn_teams_remove_user}}, 23 | \code{\link{asn_teams}} 24 | } 25 | \concept{teams} 26 | -------------------------------------------------------------------------------- /man/asn_tags_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tags.R 3 | \name{asn_tags_find_by_id} 4 | \alias{asn_tags_find_by_id} 5 | \title{Returns the complete tag record for a single tag.} 6 | \usage{ 7 | asn_tags_find_by_id(tag, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{tag}{{Id} The tag to get.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the complete tag record for a single tag. 16 | } 17 | \seealso{ 18 | Other tags: \code{\link{asn_tags_create_in_workspace}}, 19 | \code{\link{asn_tags_create}}, 20 | \code{\link{asn_tags_delete}}, 21 | \code{\link{asn_tags_find_all}}, 22 | \code{\link{asn_tags_find_by_workspace}}, 23 | \code{\link{asn_tags_get_tasks_with_tag}}, 24 | \code{\link{asn_tags_update}}, \code{\link{asn_tags}} 25 | } 26 | \concept{tags} 27 | -------------------------------------------------------------------------------- /man/asn_project_memberships_get_many.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/project_memberships.R 3 | \name{asn_project_memberships_get_many} 4 | \alias{asn_project_memberships_get_many} 5 | \title{Returns the compact project membership records for the project.} 6 | \usage{ 7 | asn_project_memberships_get_many(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project for which to fetch memberships.#'} 11 | 12 | \item{...}{{Object} Parameters for the request 13 | [user] : {String} If present, the user to filter the memberships to.} 14 | } 15 | \description{ 16 | Returns the compact project membership records for the project. 17 | } 18 | \seealso{ 19 | Other project_memberships: \code{\link{asn_project_memberships_get_single}}, 20 | \code{\link{asn_project_memberships}} 21 | } 22 | \concept{project_memberships} 23 | -------------------------------------------------------------------------------- /man/asn_project_statuses_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/project_statuses.R 3 | \name{asn_project_statuses_find_by_id} 4 | \alias{asn_project_statuses_find_by_id} 5 | \title{Returns the complete record for a single status update.} 6 | \usage{ 7 | asn_project_statuses_find_by_id(project_status, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{...}{{Object} Parameters for the request} 11 | 12 | \item{project-status}{{Id} The project status update to get.#'} 13 | } 14 | \description{ 15 | Returns the complete record for a single status update. 16 | } 17 | \seealso{ 18 | Other project_statuses: \code{\link{asn_project_statuses_create}}, 19 | \code{\link{asn_project_statuses_delete}}, 20 | \code{\link{asn_project_statuses_find_by_project}}, 21 | \code{\link{asn_project_statuses}} 22 | } 23 | \concept{project_statuses} 24 | -------------------------------------------------------------------------------- /man/asn_custom_field_settings.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_field_settings.R 3 | \name{asn_custom_field_settings} 4 | \alias{asn_custom_field_settings} 5 | \title{CustomFieldSettings} 6 | \description{ 7 | Custom fields are attached to a particular project with the Custom 8 | Field Settings resource. This resource both represents the many-to-many join 9 | of the Custom Field and Project as well as stores information that is relevant to that 10 | particular pairing; for instance, the `is_important` property determines 11 | some possible application-specific handling of that custom field (see below) 12 | } 13 | \seealso{ 14 | \link{https://asana.com/developers/api-reference/custom_field_settings} 15 | 16 | Other custom_field_settings: \code{\link{asn_custom_field_settings_find_by_project}} 17 | } 18 | \concept{custom_field_settings} 19 | -------------------------------------------------------------------------------- /man/get_all_projects.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/query-for-projects.R 3 | \name{get_all_projects} 4 | \alias{get_all_projects} 5 | \title{List all available projects in Asana} 6 | \usage{ 7 | get_all_projects(archived = NA, 8 | access_token = Sys.getenv("ASANA_ACCESS_TOKEN")) 9 | } 10 | \arguments{ 11 | \item{archived}{TRUE, FALSE, or NA for archived, live, or all projects, respectively. Defaults to NA.} 12 | 13 | \item{access_token}{An Asana access token.} 14 | } 15 | \value{ 16 | A list containing a dataframe of all available projects to the Asana user. 17 | } 18 | \description{ 19 | List all available projects in Asana 20 | } 21 | \examples{ 22 | \donttest{ 23 | ## Marked as don't test because an access token is needed 24 | get_all_projects() 25 | } 26 | } 27 | \references{ 28 | \url{https://asana.com/developers/api-reference/projects#query} 29 | } 30 | -------------------------------------------------------------------------------- /man/asn_workspaces_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/workspaces.R 3 | \name{asn_workspaces_find_by_id} 4 | \alias{asn_workspaces_find_by_id} 5 | \title{Returns the full workspace record for a single workspace.} 6 | \usage{ 7 | asn_workspaces_find_by_id(workspace, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{workspace}{{Id} Globally unique identifier for the workspace or organization.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the full workspace record for a single workspace. 16 | } 17 | \seealso{ 18 | Other workspaces: \code{\link{asn_workspaces_add_user}}, 19 | \code{\link{asn_workspaces_find_all}}, 20 | \code{\link{asn_workspaces_remove_user}}, 21 | \code{\link{asn_workspaces_typeahead}}, 22 | \code{\link{asn_workspaces_update}}, 23 | \code{\link{asn_workspaces}} 24 | } 25 | \concept{workspaces} 26 | -------------------------------------------------------------------------------- /man/asn_sections_find_by_project.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/sections.R 3 | \name{asn_sections_find_by_project} 4 | \alias{asn_sections_find_by_project} 5 | \title{Returns the compact records for all sections in the specified project.} 6 | \usage{ 7 | asn_sections_find_by_project(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project to get sections from.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the compact records for all sections in the specified project. 16 | } 17 | \seealso{ 18 | Other sections: \code{\link{asn_sections_create_in_project}}, 19 | \code{\link{asn_sections_delete}}, 20 | \code{\link{asn_sections_find_by_id}}, 21 | \code{\link{asn_sections_insert_in_project}}, 22 | \code{\link{asn_sections_update}}, 23 | \code{\link{asn_sections}} 24 | } 25 | \concept{sections} 26 | -------------------------------------------------------------------------------- /man/asn_project_statuses_find_by_project.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/project_statuses.R 3 | \name{asn_project_statuses_find_by_project} 4 | \alias{asn_project_statuses_find_by_project} 5 | \title{Returns the compact project status update records for all updates on the project.} 6 | \usage{ 7 | asn_project_statuses_find_by_project(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project to find status updates for.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the compact project status update records for all updates on the project. 16 | } 17 | \seealso{ 18 | Other project_statuses: \code{\link{asn_project_statuses_create}}, 19 | \code{\link{asn_project_statuses_delete}}, 20 | \code{\link{asn_project_statuses_find_by_id}}, 21 | \code{\link{asn_project_statuses}} 22 | } 23 | \concept{project_statuses} 24 | -------------------------------------------------------------------------------- /man/asn_organization_exports_create.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/organization_exports.R 3 | \name{asn_organization_exports_create} 4 | \alias{asn_organization_exports_create} 5 | \title{This method creates a request to export an Organization. Asana will complete the export at some 6 | point after you create the request.} 7 | \usage{ 8 | asn_organization_exports_create(..., options = list()) 9 | } 10 | \arguments{ 11 | \item{...}{{Object} Data for the request 12 | organization : {Id} Globally unique identifier for the workspace or organization.} 13 | } 14 | \description{ 15 | This method creates a request to export an Organization. Asana will complete the export at some 16 | point after you create the request. 17 | } 18 | \seealso{ 19 | Other organization_exports: \code{\link{asn_organization_exports_find_by_id}}, 20 | \code{\link{asn_organization_exports}} 21 | } 22 | \concept{organization_exports} 23 | -------------------------------------------------------------------------------- /man/asn_users_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/users.R 3 | \name{asn_users_find_by_id} 4 | \alias{asn_users_find_by_id} 5 | \title{Returns the full user record for the single user with the provided ID.} 6 | \usage{ 7 | asn_users_find_by_id(user, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{user}{{String} An identifier for the user. Can be one of an email address,} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | 14 | \item{the}{globally unique identifier for the user, or the keyword `me`} 15 | 16 | \item{to}{indicate the current user making the request.#'} 17 | } 18 | \description{ 19 | Returns the full user record for the single user with the provided ID. 20 | } 21 | \seealso{ 22 | Other users: \code{\link{asn_users_find_all}}, 23 | \code{\link{asn_users_find_by_workspace}}, 24 | \code{\link{asn_users_me}}, \code{\link{asn_users}} 25 | } 26 | \concept{users} 27 | -------------------------------------------------------------------------------- /man/asn_users_find_all.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/users.R 3 | \name{asn_users_find_all} 4 | \alias{asn_users_find_all} 5 | \title{Returns the user records for all users in all workspaces and organizations 6 | accessible to the authenticated user. Accepts an optional workspace ID 7 | parameter.} 8 | \usage{ 9 | asn_users_find_all(..., options = list()) 10 | } 11 | \arguments{ 12 | \item{...}{{Object} Parameters for the request 13 | [workspace] : {Id} The workspace or organization to filter users on.} 14 | } 15 | \description{ 16 | Returns the user records for all users in all workspaces and organizations 17 | accessible to the authenticated user. Accepts an optional workspace ID 18 | parameter. 19 | } 20 | \seealso{ 21 | Other users: \code{\link{asn_users_find_by_id}}, 22 | \code{\link{asn_users_find_by_workspace}}, 23 | \code{\link{asn_users_me}}, \code{\link{asn_users}} 24 | } 25 | \concept{users} 26 | -------------------------------------------------------------------------------- /man/asn_tags_find_by_workspace.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tags.R 3 | \name{asn_tags_find_by_workspace} 4 | \alias{asn_tags_find_by_workspace} 5 | \title{Returns the compact tag records for all tags in the workspace.} 6 | \usage{ 7 | asn_tags_find_by_workspace(workspace, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{workspace}{{Id} The workspace or organization to find tags in.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the compact tag records for all tags in the workspace. 16 | } 17 | \seealso{ 18 | Other tags: \code{\link{asn_tags_create_in_workspace}}, 19 | \code{\link{asn_tags_create}}, 20 | \code{\link{asn_tags_delete}}, 21 | \code{\link{asn_tags_find_all}}, 22 | \code{\link{asn_tags_find_by_id}}, 23 | \code{\link{asn_tags_get_tasks_with_tag}}, 24 | \code{\link{asn_tags_update}}, \code{\link{asn_tags}} 25 | } 26 | \concept{tags} 27 | -------------------------------------------------------------------------------- /man/asn_stories.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/stories.R 3 | \name{asn_stories} 4 | \alias{asn_stories} 5 | \title{Stories} 6 | \description{ 7 | A _story_ represents an activity associated with an object in the Asana 8 | system. Stories are generated by the system whenever users take actions such 9 | as creating or assigning tasks, or moving tasks between projects. _Comments_ 10 | are also a form of user-generated story. 11 | 12 | Stories are a form of history in the system, and as such they are read-only. 13 | Once generated, it is not possible to modify a story. 14 | } 15 | \seealso{ 16 | \link{https://asana.com/developers/api-reference/stories} 17 | 18 | Other stories: \code{\link{asn_stories_create_on_task}}, 19 | \code{\link{asn_stories_delete}}, 20 | \code{\link{asn_stories_find_by_id}}, 21 | \code{\link{asn_stories_find_by_task}}, 22 | \code{\link{asn_stories_update}} 23 | } 24 | \concept{stories} 25 | -------------------------------------------------------------------------------- /man/asn_sections_delete.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/sections.R 3 | \name{asn_sections_delete} 4 | \alias{asn_sections_delete} 5 | \title{A specific, existing section can be deleted by making a DELETE request 6 | on the URL for that section.} 7 | \usage{ 8 | asn_sections_delete(section, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{section}{{Id} The section to delete.} 12 | } 13 | \description{ 14 | Note that sections must be empty to be deleted. 15 | } 16 | \details{ 17 | The last remaining section in a board view cannot be deleted. 18 | 19 | Returns an empty data block. 20 | } 21 | \seealso{ 22 | Other sections: \code{\link{asn_sections_create_in_project}}, 23 | \code{\link{asn_sections_find_by_id}}, 24 | \code{\link{asn_sections_find_by_project}}, 25 | \code{\link{asn_sections_insert_in_project}}, 26 | \code{\link{asn_sections_update}}, 27 | \code{\link{asn_sections}} 28 | } 29 | \concept{sections} 30 | -------------------------------------------------------------------------------- /man/asn_sections_create_in_project.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/sections.R 3 | \name{asn_sections_create_in_project} 4 | \alias{asn_sections_create_in_project} 5 | \title{Creates a new section in a project.} 6 | \usage{ 7 | asn_sections_create_in_project(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project to create the section in#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | name : {String} The text to be displayed as the section name. This cannot be an empty string.} 14 | } 15 | \description{ 16 | Returns the full record of the newly created section. 17 | } 18 | \seealso{ 19 | Other sections: \code{\link{asn_sections_delete}}, 20 | \code{\link{asn_sections_find_by_id}}, 21 | \code{\link{asn_sections_find_by_project}}, 22 | \code{\link{asn_sections_insert_in_project}}, 23 | \code{\link{asn_sections_update}}, 24 | \code{\link{asn_sections}} 25 | } 26 | \concept{sections} 27 | -------------------------------------------------------------------------------- /man/asn_stories_create_on_task.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/stories.R 3 | \name{asn_stories_create_on_task} 4 | \alias{asn_stories_create_on_task} 5 | \title{Adds a comment to a task. The comment will be authored by the 6 | currently authenticated user, and timestamped when the server receives 7 | the request.} 8 | \usage{ 9 | asn_stories_create_on_task(task, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{task}{{Id} Globally unique identifier for the task.#'} 13 | 14 | \item{...}{{Object} Data for the request 15 | text : {String} The plain text of the comment to add.} 16 | } 17 | \description{ 18 | Returns the full record for the new story added to the task. 19 | } 20 | \seealso{ 21 | Other stories: \code{\link{asn_stories_delete}}, 22 | \code{\link{asn_stories_find_by_id}}, 23 | \code{\link{asn_stories_find_by_task}}, 24 | \code{\link{asn_stories_update}}, 25 | \code{\link{asn_stories}} 26 | } 27 | \concept{stories} 28 | -------------------------------------------------------------------------------- /man/asn_teams_find_by_organization.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/teams.R 3 | \name{asn_teams_find_by_organization} 4 | \alias{asn_teams_find_by_organization} 5 | \title{Returns the compact records for all teams in the organization visible to 6 | the authorized user.} 7 | \usage{ 8 | asn_teams_find_by_organization(organization, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{organization}{{Id} Globally unique identifier for the workspace or organization.#'} 12 | 13 | \item{...}{{Object} Parameters for the request} 14 | } 15 | \description{ 16 | Returns the compact records for all teams in the organization visible to 17 | the authorized user. 18 | } 19 | \seealso{ 20 | Other teams: \code{\link{asn_teams_add_user}}, 21 | \code{\link{asn_teams_find_by_id}}, 22 | \code{\link{asn_teams_find_by_user}}, 23 | \code{\link{asn_teams_remove_user}}, 24 | \code{\link{asn_teams_users}}, \code{\link{asn_teams}} 25 | } 26 | \concept{teams} 27 | -------------------------------------------------------------------------------- /man/asn_webhooks_get_all.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/webhooks.R 3 | \name{asn_webhooks_get_all} 4 | \alias{asn_webhooks_get_all} 5 | \title{Returns the compact representation of all webhooks your app has 6 | registered for the authenticated user in the given workspace.} 7 | \usage{ 8 | asn_webhooks_get_all(..., options = list()) 9 | } 10 | \arguments{ 11 | \item{...}{{Object} Parameters for the request 12 | [resource] : {Id} Only return webhooks for the given resource.} 13 | 14 | \item{workspace}{{Id} The workspace to query for webhooks in.#'} 15 | } 16 | \description{ 17 | Returns the compact representation of all webhooks your app has 18 | registered for the authenticated user in the given workspace. 19 | } 20 | \seealso{ 21 | Other webhooks: \code{\link{asn_webhooks_create}}, 22 | \code{\link{asn_webhooks_delete_by_id}}, 23 | \code{\link{asn_webhooks_get_by_id}}, 24 | \code{\link{asn_webhooks}} 25 | } 26 | \concept{webhooks} 27 | -------------------------------------------------------------------------------- /man/asn_webhooks_delete_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/webhooks.R 3 | \name{asn_webhooks_delete_by_id} 4 | \alias{asn_webhooks_delete_by_id} 5 | \title{This method permanently removes a webhook. Note that it may be possible 6 | to receive a request that was already in flight after deleting the 7 | webhook, but no further requests will be issued.} 8 | \usage{ 9 | asn_webhooks_delete_by_id(webhook, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{webhook}{{Id} The webhook to delete.} 13 | } 14 | \description{ 15 | This method permanently removes a webhook. Note that it may be possible 16 | to receive a request that was already in flight after deleting the 17 | webhook, but no further requests will be issued. 18 | } 19 | \seealso{ 20 | Other webhooks: \code{\link{asn_webhooks_create}}, 21 | \code{\link{asn_webhooks_get_all}}, 22 | \code{\link{asn_webhooks_get_by_id}}, 23 | \code{\link{asn_webhooks}} 24 | } 25 | \concept{webhooks} 26 | -------------------------------------------------------------------------------- /man/get_workspace_projects.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/query-for-projects.R 3 | \name{get_workspace_projects} 4 | \alias{get_workspace_projects} 5 | \title{List a specific workspace's projects in Asana} 6 | \usage{ 7 | get_workspace_projects(workspace_id, archived = NA, 8 | access_token = Sys.getenv("ASANA_ACCESS_TOKEN")) 9 | } 10 | \arguments{ 11 | \item{workspace_id}{An Asana workspace ID} 12 | 13 | \item{archived}{TRUE, FALSE, or NA for archived, live, or all projects, respectively. Defaults to NA.} 14 | 15 | \item{access_token}{An Asana access token.} 16 | } 17 | \value{ 18 | A list containing a dataframe of all projects available in a specific workspace 19 | } 20 | \description{ 21 | List a specific workspace's projects in Asana 22 | } 23 | \examples{ 24 | \donttest{ 25 | ## Marked as don't test because an access token is needed 26 | get_workspace_projects() 27 | } 28 | } 29 | \references{ 30 | \url{https://asana.com/developers/api-reference/projects#query} 31 | } 32 | -------------------------------------------------------------------------------- /man/asn_tags.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tags.R 3 | \name{asn_tags} 4 | \alias{asn_tags} 5 | \title{Tags} 6 | \description{ 7 | A _tag_ is a label that can be attached to any task in Asana. It exists in a 8 | single workspace or organization. 9 | 10 | Tags have some metadata associated with them, but it is possible that we will 11 | simplify them in the future so it is not encouraged to rely too heavily on it. 12 | Unlike projects, tags do not provide any ordering on the tasks they 13 | are associated with. 14 | } 15 | \seealso{ 16 | \link{https://asana.com/developers/api-reference/tags} 17 | 18 | Other tags: \code{\link{asn_tags_create_in_workspace}}, 19 | \code{\link{asn_tags_create}}, 20 | \code{\link{asn_tags_delete}}, 21 | \code{\link{asn_tags_find_all}}, 22 | \code{\link{asn_tags_find_by_id}}, 23 | \code{\link{asn_tags_find_by_workspace}}, 24 | \code{\link{asn_tags_get_tasks_with_tag}}, 25 | \code{\link{asn_tags_update}} 26 | } 27 | \concept{tags} 28 | -------------------------------------------------------------------------------- /man/asn_custom_fields_delete.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_fields.R 3 | \name{asn_custom_fields_delete} 4 | \alias{asn_custom_fields_delete} 5 | \title{A specific, existing custom field can be deleted by making a DELETE request on the URL for that custom field.} 6 | \usage{ 7 | asn_custom_fields_delete(custom_field, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{custom_field}{{Id} Globally unique identifier for the custom field.} 11 | } 12 | \description{ 13 | Returns an empty data record. 14 | } 15 | \seealso{ 16 | Other custom_fields: \code{\link{asn_custom_fields_add_enum_option}}, 17 | \code{\link{asn_custom_fields_create}}, 18 | \code{\link{asn_custom_fields_find_by_id}}, 19 | \code{\link{asn_custom_fields_find_by_workspace}}, 20 | \code{\link{asn_custom_fields_reorder_enum_option}}, 21 | \code{\link{asn_custom_fields_update_enum_option}}, 22 | \code{\link{asn_custom_fields_update}}, 23 | \code{\link{asn_custom_fields}} 24 | } 25 | \concept{custom_fields} 26 | -------------------------------------------------------------------------------- /man/asn_project_statuses_create.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/project_statuses.R 3 | \name{asn_project_statuses_create} 4 | \alias{asn_project_statuses_create} 5 | \title{Creates a new status update on the project.} 6 | \usage{ 7 | asn_project_statuses_create(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project on which to create a status update.#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | text : {String} The text of the project status update. 14 | color : {String} The color to associate with the status update. Must be one of `"red"`, `"yellow"`, or `"green"`.} 15 | } 16 | \description{ 17 | Returns the full record of the newly created project status update. 18 | } 19 | \seealso{ 20 | Other project_statuses: \code{\link{asn_project_statuses_delete}}, 21 | \code{\link{asn_project_statuses_find_by_id}}, 22 | \code{\link{asn_project_statuses_find_by_project}}, 23 | \code{\link{asn_project_statuses}} 24 | } 25 | \concept{project_statuses} 26 | -------------------------------------------------------------------------------- /man/asn_tags_get_tasks_with_tag.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tags.R 3 | \name{asn_tags_get_tasks_with_tag} 4 | \alias{asn_tags_get_tasks_with_tag} 5 | \title{Returns the compact task records for all tasks with the given tag. 6 | Tasks can have more than one tag at a time.} 7 | \usage{ 8 | asn_tags_get_tasks_with_tag(tag, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{tag}{{Id} The tag to fetch tasks from.#'} 12 | 13 | \item{...}{{Object} Parameters for the request} 14 | } 15 | \description{ 16 | Returns the compact task records for all tasks with the given tag. 17 | Tasks can have more than one tag at a time. 18 | } 19 | \seealso{ 20 | Other tags: \code{\link{asn_tags_create_in_workspace}}, 21 | \code{\link{asn_tags_create}}, 22 | \code{\link{asn_tags_delete}}, 23 | \code{\link{asn_tags_find_all}}, 24 | \code{\link{asn_tags_find_by_id}}, 25 | \code{\link{asn_tags_find_by_workspace}}, 26 | \code{\link{asn_tags_update}}, \code{\link{asn_tags}} 27 | } 28 | \concept{tags} 29 | -------------------------------------------------------------------------------- /man/asn_project_statuses.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/project_statuses.R 3 | \name{asn_project_statuses} 4 | \alias{asn_project_statuses} 5 | \title{ProjectStatuses} 6 | \description{ 7 | A _project status_ is an update on the progress of a particular project, and is sent out to all project 8 | followers when created. These updates include both text describing the update and a color code intended to 9 | represent the overall state of the project: "green" for projects that are on track, "yellow" for projects 10 | at risk, and "red" for projects that are behind. 11 | 12 | Project statuses can be created and deleted, but not modified. 13 | } 14 | \seealso{ 15 | \link{https://asana.com/developers/api-reference/project_statuses} 16 | 17 | Other project_statuses: \code{\link{asn_project_statuses_create}}, 18 | \code{\link{asn_project_statuses_delete}}, 19 | \code{\link{asn_project_statuses_find_by_id}}, 20 | \code{\link{asn_project_statuses_find_by_project}} 21 | } 22 | \concept{project_statuses} 23 | -------------------------------------------------------------------------------- /man/asn_custom_fields_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_fields.R 3 | \name{asn_custom_fields_find_by_id} 4 | \alias{asn_custom_fields_find_by_id} 5 | \title{Returns the complete definition of a custom field's metadata.} 6 | \usage{ 7 | asn_custom_fields_find_by_id(custom_field, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{custom_field}{{Id} Globally unique identifier for the custom field.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the complete definition of a custom field's metadata. 16 | } 17 | \seealso{ 18 | Other custom_fields: \code{\link{asn_custom_fields_add_enum_option}}, 19 | \code{\link{asn_custom_fields_create}}, 20 | \code{\link{asn_custom_fields_delete}}, 21 | \code{\link{asn_custom_fields_find_by_workspace}}, 22 | \code{\link{asn_custom_fields_reorder_enum_option}}, 23 | \code{\link{asn_custom_fields_update_enum_option}}, 24 | \code{\link{asn_custom_fields_update}}, 25 | \code{\link{asn_custom_fields}} 26 | } 27 | \concept{custom_fields} 28 | -------------------------------------------------------------------------------- /man/asn_custom_fields.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_fields.R 3 | \name{asn_custom_fields} 4 | \alias{asn_custom_fields} 5 | \title{CustomFields} 6 | \description{ 7 | Custom Fields store the metadata that is used in order to add user-specified 8 | information to tasks in Asana. Be sure to reference the [Custom 9 | Fields](/developers/documentation/getting-started/custom-fields) developer 10 | documentation for more information about how custom fields relate to various 11 | resources in Asana. 12 | } 13 | \seealso{ 14 | \link{https://asana.com/developers/api-reference/custom_fields} 15 | 16 | Other custom_fields: \code{\link{asn_custom_fields_add_enum_option}}, 17 | \code{\link{asn_custom_fields_create}}, 18 | \code{\link{asn_custom_fields_delete}}, 19 | \code{\link{asn_custom_fields_find_by_id}}, 20 | \code{\link{asn_custom_fields_find_by_workspace}}, 21 | \code{\link{asn_custom_fields_reorder_enum_option}}, 22 | \code{\link{asn_custom_fields_update_enum_option}}, 23 | \code{\link{asn_custom_fields_update}} 24 | } 25 | \concept{custom_fields} 26 | -------------------------------------------------------------------------------- /man/asn_teams_find_by_user.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/teams.R 3 | \name{asn_teams_find_by_user} 4 | \alias{asn_teams_find_by_user} 5 | \title{Returns the compact records for all teams to which user is assigned.} 6 | \usage{ 7 | asn_teams_find_by_user(user, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{user}{{String} An identifier for the user. Can be one of an email address,} 11 | 12 | \item{...}{{Object} Parameters for the request 13 | [organization] : {Id} The workspace or organization to filter teams on.} 14 | 15 | \item{the}{globally unique identifier for the user, or the keyword `me`} 16 | 17 | \item{to}{indicate the current user making the request.#'} 18 | } 19 | \description{ 20 | Returns the compact records for all teams to which user is assigned. 21 | } 22 | \seealso{ 23 | Other teams: \code{\link{asn_teams_add_user}}, 24 | \code{\link{asn_teams_find_by_id}}, 25 | \code{\link{asn_teams_find_by_organization}}, 26 | \code{\link{asn_teams_remove_user}}, 27 | \code{\link{asn_teams_users}}, \code{\link{asn_teams}} 28 | } 29 | \concept{teams} 30 | -------------------------------------------------------------------------------- /man/asn_workspaces_update.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/workspaces.R 3 | \name{asn_workspaces_update} 4 | \alias{asn_workspaces_update} 5 | \title{A specific, existing workspace can be updated by making a PUT request on 6 | the URL for that workspace. Only the fields provided in the data block 7 | will be updated; any unspecified fields will remain unchanged.} 8 | \usage{ 9 | asn_workspaces_update(workspace, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{workspace}{{Id} The workspace to update.#'} 13 | 14 | \item{...}{{Object} Data for the request} 15 | } 16 | \description{ 17 | Currently the only field that can be modified for a workspace is its `name`. 18 | } 19 | \details{ 20 | Returns the complete, updated workspace record. 21 | } 22 | \seealso{ 23 | Other workspaces: \code{\link{asn_workspaces_add_user}}, 24 | \code{\link{asn_workspaces_find_all}}, 25 | \code{\link{asn_workspaces_find_by_id}}, 26 | \code{\link{asn_workspaces_remove_user}}, 27 | \code{\link{asn_workspaces_typeahead}}, 28 | \code{\link{asn_workspaces}} 29 | } 30 | \concept{workspaces} 31 | -------------------------------------------------------------------------------- /man/asn_tags_create.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tags.R 3 | \name{asn_tags_create} 4 | \alias{asn_tags_create} 5 | \title{Creates a new tag in a workspace or organization.} 6 | \usage{ 7 | asn_tags_create(..., options = list()) 8 | } 9 | \arguments{ 10 | \item{...}{{Object} Data for the request 11 | workspace : {Id} The workspace or organization to create the tag in.} 12 | } 13 | \description{ 14 | Every tag is required to be created in a specific workspace or 15 | organization, and this cannot be changed once set. Note that you can use 16 | the `workspace` parameter regardless of whether or not it is an 17 | organization. 18 | } 19 | \details{ 20 | Returns the full record of the newly created tag. 21 | } 22 | \seealso{ 23 | Other tags: \code{\link{asn_tags_create_in_workspace}}, 24 | \code{\link{asn_tags_delete}}, 25 | \code{\link{asn_tags_find_all}}, 26 | \code{\link{asn_tags_find_by_id}}, 27 | \code{\link{asn_tags_find_by_workspace}}, 28 | \code{\link{asn_tags_get_tasks_with_tag}}, 29 | \code{\link{asn_tags_update}}, \code{\link{asn_tags}} 30 | } 31 | \concept{tags} 32 | -------------------------------------------------------------------------------- /R/utils.R: -------------------------------------------------------------------------------- 1 | 2 | #' Fix IDs 3 | #' 4 | #' Asana stores IDs as integers. Many of these integers are greater than the 5 | #' values that R can store, \code{.Machine$integer.max}. That causes 6 | #' \code{jsonlite} to convert them to \code{numeric}. This function undo that. 7 | #' @param id A numeric vector. 8 | #' @return A character vector. 9 | #' @seealso \code{\link[base]{format}} 10 | #' @examples 11 | #' id <- jsonlite::fromJSON("1234567890123450") 12 | #' fix_ids(id) 13 | #' @noRd 14 | fix_ids <- function(id) { 15 | format(id, digits = 22) 16 | } 17 | 18 | #' Fix Archived 19 | #' 20 | #' Asana projects can be fetched for either all, live, or archived only. 21 | #' We require a function that changes NA to NULL to make this clean in our calls. 22 | #' @param archived A logical or NA 23 | #' @return A logical or NA 24 | #' @seealso \code{\link[base]{format}} 25 | #' @examples 26 | #' fix_archived(NA) 27 | #' @noRd 28 | #' @importFrom assertive.types assert_is_a_bool 29 | fix_archived <- function(archived){ 30 | 31 | assert_is_a_bool(archived) 32 | 33 | if(is.na(archived)){ 34 | 35 | return(NULL) 36 | 37 | } 38 | 39 | archived 40 | 41 | } 42 | -------------------------------------------------------------------------------- /man/asn_tags_update.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tags.R 3 | \name{asn_tags_update} 4 | \alias{asn_tags_update} 5 | \title{Updates the properties of a tag. Only the fields provided in the `data` 6 | block will be updated; any unspecified fields will remain unchanged.} 7 | \usage{ 8 | asn_tags_update(tag, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{tag}{{Id} The tag to update.#'} 12 | 13 | \item{...}{{Object} Data for the request} 14 | } 15 | \description{ 16 | When using this method, it is best to specify only those fields you wish 17 | to change, or else you may overwrite changes made by another user since 18 | you last retrieved the task. 19 | } 20 | \details{ 21 | Returns the complete updated tag record. 22 | } 23 | \seealso{ 24 | Other tags: \code{\link{asn_tags_create_in_workspace}}, 25 | \code{\link{asn_tags_create}}, 26 | \code{\link{asn_tags_delete}}, 27 | \code{\link{asn_tags_find_all}}, 28 | \code{\link{asn_tags_find_by_id}}, 29 | \code{\link{asn_tags_find_by_workspace}}, 30 | \code{\link{asn_tags_get_tasks_with_tag}}, 31 | \code{\link{asn_tags}} 32 | } 33 | \concept{tags} 34 | -------------------------------------------------------------------------------- /R/authentication.R: -------------------------------------------------------------------------------- 1 | #' Store an access token 2 | #' 3 | #' Stores an Asana API access token for the R session. 4 | #' @param access_token A string giving an access token to authenticate the API 5 | #' call. 6 | #' @return Invoked for the side effect of setting the environment variable 7 | #' \code{ASANA_ACCESS_TOKEN} to the input. 8 | #' @details See the developer documentation for how to get an access token. 9 | #' \url{https://asana.com/developers/documentation/getting-started/auth} 10 | #' @export 11 | store_access_token <- function(access_token) { 12 | assert_is_access_token(access_token) 13 | Sys.setenv(ASANA_ACCESS_TOKEN = access_token) 14 | } 15 | 16 | #' Throw an error if the access token is malformed. 17 | #' @importFrom assertive.types is_a_string 18 | assert_is_access_token <- function(access_token) { 19 | if(is.na(access_token)) { 20 | stop("No Asana API access token was found.") 21 | } 22 | if(!is_a_string(access_token)) { 23 | stop("The Asana API access token is not a string.") 24 | } 25 | if(nchar(access_token) != 34L) { 26 | stop("The Asana API access token does not contain 34 characters.") 27 | } 28 | invisible(access_token) 29 | } 30 | -------------------------------------------------------------------------------- /man/asn_custom_fields_find_by_workspace.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_fields.R 3 | \name{asn_custom_fields_find_by_workspace} 4 | \alias{asn_custom_fields_find_by_workspace} 5 | \title{Returns a list of the compact representation of all of the custom fields in a workspace.} 6 | \usage{ 7 | asn_custom_fields_find_by_workspace(workspace, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{workspace}{{Id} The workspace or organization to find custom field definitions in.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns a list of the compact representation of all of the custom fields in a workspace. 16 | } 17 | \seealso{ 18 | Other custom_fields: \code{\link{asn_custom_fields_add_enum_option}}, 19 | \code{\link{asn_custom_fields_create}}, 20 | \code{\link{asn_custom_fields_delete}}, 21 | \code{\link{asn_custom_fields_find_by_id}}, 22 | \code{\link{asn_custom_fields_reorder_enum_option}}, 23 | \code{\link{asn_custom_fields_update_enum_option}}, 24 | \code{\link{asn_custom_fields_update}}, 25 | \code{\link{asn_custom_fields}} 26 | } 27 | \concept{custom_fields} 28 | -------------------------------------------------------------------------------- /man/asn_tags_create_in_workspace.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tags.R 3 | \name{asn_tags_create_in_workspace} 4 | \alias{asn_tags_create_in_workspace} 5 | \title{Creates a new tag in a workspace or organization.} 6 | \usage{ 7 | asn_tags_create_in_workspace(workspace, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{workspace}{{Id} The workspace or organization to create the tag in.#'} 11 | 12 | \item{...}{{Object} Data for the request} 13 | } 14 | \description{ 15 | Every tag is required to be created in a specific workspace or 16 | organization, and this cannot be changed once set. Note that you can use 17 | the `workspace` parameter regardless of whether or not it is an 18 | organization. 19 | } 20 | \details{ 21 | Returns the full record of the newly created tag. 22 | } 23 | \seealso{ 24 | Other tags: \code{\link{asn_tags_create}}, 25 | \code{\link{asn_tags_delete}}, 26 | \code{\link{asn_tags_find_all}}, 27 | \code{\link{asn_tags_find_by_id}}, 28 | \code{\link{asn_tags_find_by_workspace}}, 29 | \code{\link{asn_tags_get_tasks_with_tag}}, 30 | \code{\link{asn_tags_update}}, \code{\link{asn_tags}} 31 | } 32 | \concept{tags} 33 | -------------------------------------------------------------------------------- /man/asn_workspaces_remove_user.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/workspaces.R 3 | \name{asn_workspaces_remove_user} 4 | \alias{asn_workspaces_remove_user} 5 | \title{The user making this call must be an admin in the workspace. 6 | Returns an empty data record.} 7 | \usage{ 8 | asn_workspaces_remove_user(workspace, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{workspace}{{Id} The workspace or organization to invite the user to.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | user : {String} An identifier for the user. Can be one of an email address, 15 | the globally unique identifier for the user, or the keyword `me` 16 | to indicate the current user making the request.} 17 | } 18 | \description{ 19 | The user making this call must be an admin in the workspace. 20 | Returns an empty data record. 21 | } 22 | \seealso{ 23 | Other workspaces: \code{\link{asn_workspaces_add_user}}, 24 | \code{\link{asn_workspaces_find_all}}, 25 | \code{\link{asn_workspaces_find_by_id}}, 26 | \code{\link{asn_workspaces_typeahead}}, 27 | \code{\link{asn_workspaces_update}}, 28 | \code{\link{asn_workspaces}} 29 | } 30 | \concept{workspaces} 31 | -------------------------------------------------------------------------------- /man/asn_tags_find_all.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tags.R 3 | \name{asn_tags_find_all} 4 | \alias{asn_tags_find_all} 5 | \title{Returns the compact tag records for some filtered set of tags. 6 | Use one or more of the parameters provided to filter the tags returned.} 7 | \usage{ 8 | asn_tags_find_all(..., options = list()) 9 | } 10 | \arguments{ 11 | \item{...}{{Object} Parameters for the request 12 | [workspace] : {Id} The workspace or organization to filter tags on. 13 | [team] : {Id} The team to filter tags on. 14 | [archived] : {Boolean} Only return tags whose `archived` field takes on the value of 15 | this parameter.} 16 | } 17 | \description{ 18 | Returns the compact tag records for some filtered set of tags. 19 | Use one or more of the parameters provided to filter the tags returned. 20 | } 21 | \seealso{ 22 | Other tags: \code{\link{asn_tags_create_in_workspace}}, 23 | \code{\link{asn_tags_create}}, 24 | \code{\link{asn_tags_delete}}, 25 | \code{\link{asn_tags_find_by_id}}, 26 | \code{\link{asn_tags_find_by_workspace}}, 27 | \code{\link{asn_tags_get_tasks_with_tag}}, 28 | \code{\link{asn_tags_update}}, \code{\link{asn_tags}} 29 | } 30 | \concept{tags} 31 | -------------------------------------------------------------------------------- /man/asn_organization_exports.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/organization_exports.R 3 | \name{asn_organization_exports} 4 | \alias{asn_organization_exports} 5 | \title{OrganizationExports} 6 | \description{ 7 | An _organization_export_ object represents a request to export the complete data of an Organization 8 | in JSON format. 9 | 10 | To export an Organization using this API: 11 | 12 | * Create an `organization_export` [request](#create) and store the id that is returned.\ 13 | * Request the `organization_export` every few minutes, until the `state` field contains 'finished'.\ 14 | * Download the file located at the URL in the `download_url` field. 15 | 16 | Exports can take a long time, from several minutes to a few hours for large Organizations. 17 | 18 | **Note:** These endpoints are only available to [Service Accounts](/guide/help/premium/service-accounts) 19 | of an [Enterprise](/enterprise) Organization. 20 | } 21 | \seealso{ 22 | \link{https://asana.com/developers/api-reference/organization_exports} 23 | 24 | Other organization_exports: \code{\link{asn_organization_exports_create}}, 25 | \code{\link{asn_organization_exports_find_by_id}} 26 | } 27 | \concept{organization_exports} 28 | -------------------------------------------------------------------------------- /man/asn_teams_remove_user.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/teams.R 3 | \name{asn_teams_remove_user} 4 | \alias{asn_teams_remove_user} 5 | \title{The user to remove can be referenced by their globally unique user ID or their email address. 6 | Removes the user from the specified team. Returns an empty data record.} 7 | \usage{ 8 | asn_teams_remove_user(team, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{team}{{Id} Globally unique identifier for the team.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | user : {String} An identifier for the user. Can be one of an email address, 15 | the globally unique identifier for the user, or the keyword `me` 16 | to indicate the current user making the request.} 17 | } 18 | \description{ 19 | The user to remove can be referenced by their globally unique user ID or their email address. 20 | Removes the user from the specified team. Returns an empty data record. 21 | } 22 | \seealso{ 23 | Other teams: \code{\link{asn_teams_add_user}}, 24 | \code{\link{asn_teams_find_by_id}}, 25 | \code{\link{asn_teams_find_by_organization}}, 26 | \code{\link{asn_teams_find_by_user}}, 27 | \code{\link{asn_teams_users}}, \code{\link{asn_teams}} 28 | } 29 | \concept{teams} 30 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | asana 4 | ===== 5 | 6 | An R package for accessing the Asana API. 7 | 8 | Installation 9 | ------------ 10 | 11 | One day, you will be able to install the released version of `asana` from [CRAN](https://CRAN.R-project.org) with: 12 | 13 | ``` r 14 | install.packages("asana") 15 | ``` 16 | 17 | For now, install the development version from [GitHub](https://github.com/) with: 18 | 19 | ``` r 20 | # install.packages("remotes") 21 | remotes::install_github("datacamp/asana") 22 | ``` 23 | 24 | Get an API token from Asana by doing the following steps. More information is under "Personal Access Token" [here](https://asana.com/guide/help/api/api). 25 | 26 | - Click your profile photo from the topbar in Asana 27 | - Select My Profile Settings… 28 | - Open the Apps tab 29 | - Click Manage Developer Apps 30 | - Click + Create New Personal Access Token 31 | 32 | Make sure to set it in your `.Renviron` file. You can run `usethis::edit_r_environ()` to automatically pull up your `.Renviron` file in RStudio for editing. 33 | 34 | ``` 35 | ASANA_ACCESS_TOKEN="xxxxxx" 36 | ``` 37 | 38 | where `xxxxx` is the Token generated. 39 | 40 | 41 | -------------------------------------------------------------------------------- /man/asn_workspaces_add_user.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/workspaces.R 3 | \name{asn_workspaces_add_user} 4 | \alias{asn_workspaces_add_user} 5 | \title{The user can be referenced by their globally unique user ID or their email address. 6 | Returns the full user record for the invited user.} 7 | \usage{ 8 | asn_workspaces_add_user(workspace, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{workspace}{{Id} The workspace or organization to invite the user to.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | user : {String} An identifier for the user. Can be one of an email address, 15 | the globally unique identifier for the user, or the keyword `me` 16 | to indicate the current user making the request.} 17 | } 18 | \description{ 19 | The user can be referenced by their globally unique user ID or their email address. 20 | Returns the full user record for the invited user. 21 | } 22 | \seealso{ 23 | Other workspaces: \code{\link{asn_workspaces_find_all}}, 24 | \code{\link{asn_workspaces_find_by_id}}, 25 | \code{\link{asn_workspaces_remove_user}}, 26 | \code{\link{asn_workspaces_typeahead}}, 27 | \code{\link{asn_workspaces_update}}, 28 | \code{\link{asn_workspaces}} 29 | } 30 | \concept{workspaces} 31 | -------------------------------------------------------------------------------- /man/asn_sections_update.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/sections.R 3 | \name{asn_sections_update} 4 | \alias{asn_sections_update} 5 | \title{A specific, existing section can be updated by making a PUT request on 6 | the URL for that project. Only the fields provided in the `data` block 7 | will be updated; any unspecified fields will remain unchanged. (note that 8 | at this time, the only field that can be updated is the `name` field.)} 9 | \usage{ 10 | asn_sections_update(section, ..., options = list()) 11 | } 12 | \arguments{ 13 | \item{section}{{Id} The section to update.#'} 14 | 15 | \item{...}{{Object} Data for the request} 16 | } 17 | \description{ 18 | When using this method, it is best to specify only those fields you wish 19 | to change, or else you may overwrite changes made by another user since 20 | you last retrieved the task. 21 | } 22 | \details{ 23 | Returns the complete updated section record. 24 | } 25 | \seealso{ 26 | Other sections: \code{\link{asn_sections_create_in_project}}, 27 | \code{\link{asn_sections_delete}}, 28 | \code{\link{asn_sections_find_by_id}}, 29 | \code{\link{asn_sections_find_by_project}}, 30 | \code{\link{asn_sections_insert_in_project}}, 31 | \code{\link{asn_sections}} 32 | } 33 | \concept{sections} 34 | -------------------------------------------------------------------------------- /man/asn_projects_delete.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_delete} 4 | \alias{asn_projects_delete} 5 | \title{A specific, existing project can be deleted by making a DELETE request 6 | on the URL for that project.} 7 | \usage{ 8 | asn_projects_delete(project, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{project}{{Id} The project to delete.} 12 | } 13 | \description{ 14 | Returns an empty data record. 15 | } 16 | \seealso{ 17 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 18 | \code{\link{asn_projects_add_followers}}, 19 | \code{\link{asn_projects_add_members}}, 20 | \code{\link{asn_projects_create_in_team}}, 21 | \code{\link{asn_projects_create_in_workspace}}, 22 | \code{\link{asn_projects_create}}, 23 | \code{\link{asn_projects_find_all}}, 24 | \code{\link{asn_projects_find_by_id}}, 25 | \code{\link{asn_projects_find_by_team}}, 26 | \code{\link{asn_projects_find_by_workspace}}, 27 | \code{\link{asn_projects_remove_custom_field_setting}}, 28 | \code{\link{asn_projects_remove_followers}}, 29 | \code{\link{asn_projects_remove_members}}, 30 | \code{\link{asn_projects_tasks}}, 31 | \code{\link{asn_projects_update}}, 32 | \code{\link{asn_projects}} 33 | } 34 | \concept{projects} 35 | -------------------------------------------------------------------------------- /man/asn_custom_fields_update_enum_option.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_fields.R 3 | \name{asn_custom_fields_update_enum_option} 4 | \alias{asn_custom_fields_update_enum_option} 5 | \title{Updates an existing enum option. Enum custom fields require at least one enabled enum option.} 6 | \usage{ 7 | asn_custom_fields_update_enum_option(enum_option, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{enum_option}{{Id} Globally unique identifier for the enum option.#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | name : {String} The name of the enum option. 14 | [color] : {String} The color of the enum option. Defaults to 'none'. 15 | [enabled] : {Boolean} Whether or not the enum option is a selectable value for the custom field.} 16 | } 17 | \description{ 18 | Returns the full record of the updated enum option. 19 | } 20 | \seealso{ 21 | Other custom_fields: \code{\link{asn_custom_fields_add_enum_option}}, 22 | \code{\link{asn_custom_fields_create}}, 23 | \code{\link{asn_custom_fields_delete}}, 24 | \code{\link{asn_custom_fields_find_by_id}}, 25 | \code{\link{asn_custom_fields_find_by_workspace}}, 26 | \code{\link{asn_custom_fields_reorder_enum_option}}, 27 | \code{\link{asn_custom_fields_update}}, 28 | \code{\link{asn_custom_fields}} 29 | } 30 | \concept{custom_fields} 31 | -------------------------------------------------------------------------------- /man/asn_projects_create_in_team.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_create_in_team} 4 | \alias{asn_projects_create_in_team} 5 | \title{Creates a project shared with the given team.} 6 | \usage{ 7 | asn_projects_create_in_team(team, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{team}{{Id} The team to create the project in.#'} 11 | 12 | \item{...}{{Object} Data for the request} 13 | } 14 | \description{ 15 | Returns the full record of the newly created project. 16 | } 17 | \seealso{ 18 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 19 | \code{\link{asn_projects_add_followers}}, 20 | \code{\link{asn_projects_add_members}}, 21 | \code{\link{asn_projects_create_in_workspace}}, 22 | \code{\link{asn_projects_create}}, 23 | \code{\link{asn_projects_delete}}, 24 | \code{\link{asn_projects_find_all}}, 25 | \code{\link{asn_projects_find_by_id}}, 26 | \code{\link{asn_projects_find_by_team}}, 27 | \code{\link{asn_projects_find_by_workspace}}, 28 | \code{\link{asn_projects_remove_custom_field_setting}}, 29 | \code{\link{asn_projects_remove_followers}}, 30 | \code{\link{asn_projects_remove_members}}, 31 | \code{\link{asn_projects_tasks}}, 32 | \code{\link{asn_projects_update}}, 33 | \code{\link{asn_projects}} 34 | } 35 | \concept{projects} 36 | -------------------------------------------------------------------------------- /man/asn_projects_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_find_by_id} 4 | \alias{asn_projects_find_by_id} 5 | \title{Returns the complete project record for a single project.} 6 | \usage{ 7 | asn_projects_find_by_id(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project to get.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the complete project record for a single project. 16 | } 17 | \seealso{ 18 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 19 | \code{\link{asn_projects_add_followers}}, 20 | \code{\link{asn_projects_add_members}}, 21 | \code{\link{asn_projects_create_in_team}}, 22 | \code{\link{asn_projects_create_in_workspace}}, 23 | \code{\link{asn_projects_create}}, 24 | \code{\link{asn_projects_delete}}, 25 | \code{\link{asn_projects_find_all}}, 26 | \code{\link{asn_projects_find_by_team}}, 27 | \code{\link{asn_projects_find_by_workspace}}, 28 | \code{\link{asn_projects_remove_custom_field_setting}}, 29 | \code{\link{asn_projects_remove_followers}}, 30 | \code{\link{asn_projects_remove_members}}, 31 | \code{\link{asn_projects_tasks}}, 32 | \code{\link{asn_projects_update}}, 33 | \code{\link{asn_projects}} 34 | } 35 | \concept{projects} 36 | -------------------------------------------------------------------------------- /R/attachments.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' Attachments 3 | #' 4 | #' 5 | #' An _attachment_ object represents any file attached to a task in Asana, 6 | #' whether it's an uploaded file or one associated via a third-party service 7 | #' such as Dropbox or Google Drive. 8 | #' @name asn_attachments 9 | #' @rdname asn_attachments 10 | #' @family attachments 11 | #' @seealso \link{https://asana.com/developers/api-reference/attachments} 12 | NULL 13 | 14 | #' Returns the full record for a single attachment. 15 | #' 16 | #' @param attachment {Id} Globally unique identifier for the attachment.#' 17 | #' @param ... {Object} Parameters for the request 18 | #' @export 19 | #' @family attachments 20 | asn_attachments_find_by_id = function(attachment, ..., options = list()){ 21 | path = sprintf("/attachments/%s", attachment) 22 | asn_get(endpoint = path, ..., options = options) 23 | } 24 | 25 | 26 | #' Returns the compact records for all attachments on the task. 27 | #' 28 | #' @param task {Id} Globally unique identifier for the task.#' 29 | #' @param ... {Object} Parameters for the request 30 | #' @export 31 | #' @family attachments 32 | asn_attachments_find_by_task = function(task, ..., options = list()){ 33 | path = sprintf("/tasks/%s/attachments", task) 34 | asn_get(endpoint = path, ..., options = options) 35 | } 36 | 37 | 38 | -------------------------------------------------------------------------------- /man/asn_sections_insert_in_project.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/sections.R 3 | \name{asn_sections_insert_in_project} 4 | \alias{asn_sections_insert_in_project} 5 | \title{Move sections relative to each other in a board view. One of 6 | `before_section` or `after_section` is required.} 7 | \usage{ 8 | asn_sections_insert_in_project(project, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{project}{{Id} The project in which to reorder the given section#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | section : {Id} The section to reorder 15 | [before_section] : {Id} Insert the given section immediately before the section specified by this parameter. 16 | [after_section] : {Id} Insert the given section immediately after the section specified by this parameter.} 17 | } 18 | \description{ 19 | Sections cannot be moved between projects. 20 | } 21 | \details{ 22 | At this point in time, moving sections is not supported in list views, only board views. 23 | 24 | Returns an empty data block. 25 | } 26 | \seealso{ 27 | Other sections: \code{\link{asn_sections_create_in_project}}, 28 | \code{\link{asn_sections_delete}}, 29 | \code{\link{asn_sections_find_by_id}}, 30 | \code{\link{asn_sections_find_by_project}}, 31 | \code{\link{asn_sections_update}}, 32 | \code{\link{asn_sections}} 33 | } 34 | \concept{sections} 35 | -------------------------------------------------------------------------------- /man/asn_stories_update.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/stories.R 3 | \name{asn_stories_update} 4 | \alias{asn_stories_update} 5 | \title{Updates the story and returns the full record for the updated story. 6 | Only comment stories can have their text updated, and only comment stories and 7 | attachment stories can be pinned. Only one of `text` and `html_text` can be specified.} 8 | \usage{ 9 | asn_stories_update(story, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{story}{{Id} Globally unique identifier for the story.#'} 13 | 14 | \item{...}{{Object} Data for the request 15 | [text] : {String} The plain text with which to update the comment. 16 | [html_text] : {String} The rich text with which to update the comment. 17 | [is_pinned] : {Boolean} Whether the story should be pinned on the resource.} 18 | } 19 | \description{ 20 | Updates the story and returns the full record for the updated story. 21 | Only comment stories can have their text updated, and only comment stories and 22 | attachment stories can be pinned. Only one of `text` and `html_text` can be specified. 23 | } 24 | \seealso{ 25 | Other stories: \code{\link{asn_stories_create_on_task}}, 26 | \code{\link{asn_stories_delete}}, 27 | \code{\link{asn_stories_find_by_id}}, 28 | \code{\link{asn_stories_find_by_task}}, 29 | \code{\link{asn_stories}} 30 | } 31 | \concept{stories} 32 | -------------------------------------------------------------------------------- /man/asn_workspaces.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/workspaces.R 3 | \name{asn_workspaces} 4 | \alias{asn_workspaces} 5 | \title{Workspaces} 6 | \description{ 7 | A _workspace_ is the highest-level organizational unit in Asana. All projects 8 | and tasks have an associated workspace. 9 | 10 | An _organization_ is a special kind of workspace that represents a company. 11 | In an organization, you can group your projects into teams. You can read 12 | more about how organizations work on the Asana Guide. 13 | To tell if your workspace is an organization or not, check its 14 | `is_organization` property. 15 | 16 | Over time, we intend to migrate most workspaces into organizations and to 17 | release more organization-specific functionality. We may eventually deprecate 18 | using workspace-based APIs for organizations. Currently, and until after 19 | some reasonable grace period following any further announcements, you can 20 | still reference organizations in any `workspace` parameter. 21 | } 22 | \seealso{ 23 | \link{https://asana.com/developers/api-reference/workspaces} 24 | 25 | Other workspaces: \code{\link{asn_workspaces_add_user}}, 26 | \code{\link{asn_workspaces_find_all}}, 27 | \code{\link{asn_workspaces_find_by_id}}, 28 | \code{\link{asn_workspaces_remove_user}}, 29 | \code{\link{asn_workspaces_typeahead}}, 30 | \code{\link{asn_workspaces_update}} 31 | } 32 | \concept{workspaces} 33 | -------------------------------------------------------------------------------- /man/asn_projects_create_in_workspace.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_create_in_workspace} 4 | \alias{asn_projects_create_in_workspace} 5 | \title{If the workspace for your project _is_ an organization, you must also 6 | supply a `team` to share the project with.} 7 | \usage{ 8 | asn_projects_create_in_workspace(workspace, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{workspace}{{Id} The workspace or organization to create the project in.#'} 12 | 13 | \item{...}{{Object} Data for the request} 14 | } 15 | \description{ 16 | Returns the full record of the newly created project. 17 | } 18 | \seealso{ 19 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 20 | \code{\link{asn_projects_add_followers}}, 21 | \code{\link{asn_projects_add_members}}, 22 | \code{\link{asn_projects_create_in_team}}, 23 | \code{\link{asn_projects_create}}, 24 | \code{\link{asn_projects_delete}}, 25 | \code{\link{asn_projects_find_all}}, 26 | \code{\link{asn_projects_find_by_id}}, 27 | \code{\link{asn_projects_find_by_team}}, 28 | \code{\link{asn_projects_find_by_workspace}}, 29 | \code{\link{asn_projects_remove_custom_field_setting}}, 30 | \code{\link{asn_projects_remove_followers}}, 31 | \code{\link{asn_projects_remove_members}}, 32 | \code{\link{asn_projects_tasks}}, 33 | \code{\link{asn_projects_update}}, 34 | \code{\link{asn_projects}} 35 | } 36 | \concept{projects} 37 | -------------------------------------------------------------------------------- /man/asn_projects_remove_custom_field_setting.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_remove_custom_field_setting} 4 | \alias{asn_projects_remove_custom_field_setting} 5 | \title{Remove a custom field setting on the project.} 6 | \usage{ 7 | asn_projects_remove_custom_field_setting(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project to associate the custom field with#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | [custom_field] : {Id} The id of the custom field to remove from this project.} 14 | } 15 | \description{ 16 | Remove a custom field setting on the project. 17 | } 18 | \seealso{ 19 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 20 | \code{\link{asn_projects_add_followers}}, 21 | \code{\link{asn_projects_add_members}}, 22 | \code{\link{asn_projects_create_in_team}}, 23 | \code{\link{asn_projects_create_in_workspace}}, 24 | \code{\link{asn_projects_create}}, 25 | \code{\link{asn_projects_delete}}, 26 | \code{\link{asn_projects_find_all}}, 27 | \code{\link{asn_projects_find_by_id}}, 28 | \code{\link{asn_projects_find_by_team}}, 29 | \code{\link{asn_projects_find_by_workspace}}, 30 | \code{\link{asn_projects_remove_followers}}, 31 | \code{\link{asn_projects_remove_members}}, 32 | \code{\link{asn_projects_tasks}}, 33 | \code{\link{asn_projects_update}}, 34 | \code{\link{asn_projects}} 35 | } 36 | \concept{projects} 37 | -------------------------------------------------------------------------------- /man/asn_projects_find_by_team.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_find_by_team} 4 | \alias{asn_projects_find_by_team} 5 | \title{Returns the compact project records for all projects in the team.} 6 | \usage{ 7 | asn_projects_find_by_team(team, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{team}{{Id} The team to find projects in.#'} 11 | 12 | \item{...}{{Object} Parameters for the request 13 | [archived] : {Boolean} Only return projects whose `archived` field takes on the value of 14 | this parameter.} 15 | } 16 | \description{ 17 | Returns the compact project records for all projects in the team. 18 | } 19 | \seealso{ 20 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 21 | \code{\link{asn_projects_add_followers}}, 22 | \code{\link{asn_projects_add_members}}, 23 | \code{\link{asn_projects_create_in_team}}, 24 | \code{\link{asn_projects_create_in_workspace}}, 25 | \code{\link{asn_projects_create}}, 26 | \code{\link{asn_projects_delete}}, 27 | \code{\link{asn_projects_find_all}}, 28 | \code{\link{asn_projects_find_by_id}}, 29 | \code{\link{asn_projects_find_by_workspace}}, 30 | \code{\link{asn_projects_remove_custom_field_setting}}, 31 | \code{\link{asn_projects_remove_followers}}, 32 | \code{\link{asn_projects_remove_members}}, 33 | \code{\link{asn_projects_tasks}}, 34 | \code{\link{asn_projects_update}}, 35 | \code{\link{asn_projects}} 36 | } 37 | \concept{projects} 38 | -------------------------------------------------------------------------------- /man/asn_custom_field_settings_find_by_project.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_field_settings.R 3 | \name{asn_custom_field_settings_find_by_project} 4 | \alias{asn_custom_field_settings_find_by_project} 5 | \title{Returns a list of all of the custom fields settings on a project, in compact form. Note that, as in all queries to collections which return compact representation, `opt_fields` and `opt_expand` can be used to include more data than is returned in the compact representation. See the getting started guide on [input/output options](/developers/documentation/getting-started/input-output-options) for more information.} 6 | \usage{ 7 | asn_custom_field_settings_find_by_project(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The ID of the project for which to list custom field settings#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns a list of all of the custom fields settings on a project, in compact form. Note that, as in all queries to collections which return compact representation, `opt_fields` and `opt_expand` can be used to include more data than is returned in the compact representation. See the getting started guide on [input/output options](/developers/documentation/getting-started/input-output-options) for more information. 16 | } 17 | \seealso{ 18 | Other custom_field_settings: \code{\link{asn_custom_field_settings}} 19 | } 20 | \concept{custom_field_settings} 21 | -------------------------------------------------------------------------------- /man/asn_projects_add_members.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_add_members} 4 | \alias{asn_projects_add_members} 5 | \title{Adds the specified list of users as members of the project. Returns the updated project record.} 6 | \usage{ 7 | asn_projects_add_members(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project to add members to.#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | members : {Array} An array of members to add to the project.} 14 | } 15 | \description{ 16 | Adds the specified list of users as members of the project. Returns the updated project record. 17 | } 18 | \seealso{ 19 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 20 | \code{\link{asn_projects_add_followers}}, 21 | \code{\link{asn_projects_create_in_team}}, 22 | \code{\link{asn_projects_create_in_workspace}}, 23 | \code{\link{asn_projects_create}}, 24 | \code{\link{asn_projects_delete}}, 25 | \code{\link{asn_projects_find_all}}, 26 | \code{\link{asn_projects_find_by_id}}, 27 | \code{\link{asn_projects_find_by_team}}, 28 | \code{\link{asn_projects_find_by_workspace}}, 29 | \code{\link{asn_projects_remove_custom_field_setting}}, 30 | \code{\link{asn_projects_remove_followers}}, 31 | \code{\link{asn_projects_remove_members}}, 32 | \code{\link{asn_projects_tasks}}, 33 | \code{\link{asn_projects_update}}, 34 | \code{\link{asn_projects}} 35 | } 36 | \concept{projects} 37 | -------------------------------------------------------------------------------- /man/asn_projects_remove_members.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_remove_members} 4 | \alias{asn_projects_remove_members} 5 | \title{Removes the specified list of members from the project. Returns the updated project record.} 6 | \usage{ 7 | asn_projects_remove_members(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project to remove members from.#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | members : {Array} An array of members to remove from the project.} 14 | } 15 | \description{ 16 | Removes the specified list of members from the project. Returns the updated project record. 17 | } 18 | \seealso{ 19 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 20 | \code{\link{asn_projects_add_followers}}, 21 | \code{\link{asn_projects_add_members}}, 22 | \code{\link{asn_projects_create_in_team}}, 23 | \code{\link{asn_projects_create_in_workspace}}, 24 | \code{\link{asn_projects_create}}, 25 | \code{\link{asn_projects_delete}}, 26 | \code{\link{asn_projects_find_all}}, 27 | \code{\link{asn_projects_find_by_id}}, 28 | \code{\link{asn_projects_find_by_team}}, 29 | \code{\link{asn_projects_find_by_workspace}}, 30 | \code{\link{asn_projects_remove_custom_field_setting}}, 31 | \code{\link{asn_projects_remove_followers}}, 32 | \code{\link{asn_projects_tasks}}, 33 | \code{\link{asn_projects_update}}, 34 | \code{\link{asn_projects}} 35 | } 36 | \concept{projects} 37 | -------------------------------------------------------------------------------- /man/asn_teams_add_user.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/teams.R 3 | \name{asn_teams_add_user} 4 | \alias{asn_teams_add_user} 5 | \title{The user making this call must be a member of the team in order to add others. 6 | The user to add must exist in the same organization as the team in order to be added. 7 | The user to add can be referenced by their globally unique user ID or their email address. 8 | Returns the full user record for the added user.} 9 | \usage{ 10 | asn_teams_add_user(team, ..., options = list()) 11 | } 12 | \arguments{ 13 | \item{team}{{Id} Globally unique identifier for the team.#'} 14 | 15 | \item{...}{{Object} Data for the request 16 | user : {String} An identifier for the user. Can be one of an email address, 17 | the globally unique identifier for the user, or the keyword `me` 18 | to indicate the current user making the request.} 19 | } 20 | \description{ 21 | The user making this call must be a member of the team in order to add others. 22 | The user to add must exist in the same organization as the team in order to be added. 23 | The user to add can be referenced by their globally unique user ID or their email address. 24 | Returns the full user record for the added user. 25 | } 26 | \seealso{ 27 | Other teams: \code{\link{asn_teams_find_by_id}}, 28 | \code{\link{asn_teams_find_by_organization}}, 29 | \code{\link{asn_teams_find_by_user}}, 30 | \code{\link{asn_teams_remove_user}}, 31 | \code{\link{asn_teams_users}}, \code{\link{asn_teams}} 32 | } 33 | \concept{teams} 34 | -------------------------------------------------------------------------------- /man/asn_projects_find_by_workspace.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_find_by_workspace} 4 | \alias{asn_projects_find_by_workspace} 5 | \title{Returns the compact project records for all projects in the workspace.} 6 | \usage{ 7 | asn_projects_find_by_workspace(workspace, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{workspace}{{Id} The workspace or organization to find projects in.#'} 11 | 12 | \item{...}{{Object} Parameters for the request 13 | [archived] : {Boolean} Only return projects whose `archived` field takes on the value of 14 | this parameter.} 15 | } 16 | \description{ 17 | Returns the compact project records for all projects in the workspace. 18 | } 19 | \seealso{ 20 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 21 | \code{\link{asn_projects_add_followers}}, 22 | \code{\link{asn_projects_add_members}}, 23 | \code{\link{asn_projects_create_in_team}}, 24 | \code{\link{asn_projects_create_in_workspace}}, 25 | \code{\link{asn_projects_create}}, 26 | \code{\link{asn_projects_delete}}, 27 | \code{\link{asn_projects_find_all}}, 28 | \code{\link{asn_projects_find_by_id}}, 29 | \code{\link{asn_projects_find_by_team}}, 30 | \code{\link{asn_projects_remove_custom_field_setting}}, 31 | \code{\link{asn_projects_remove_followers}}, 32 | \code{\link{asn_projects_remove_members}}, 33 | \code{\link{asn_projects_tasks}}, 34 | \code{\link{asn_projects_update}}, 35 | \code{\link{asn_projects}} 36 | } 37 | \concept{projects} 38 | -------------------------------------------------------------------------------- /man/asn_events.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/events.R 3 | \name{asn_events} 4 | \alias{asn_events} 5 | \title{Events} 6 | \description{ 7 | An _event_ is an object representing a change to a resource that was observed 8 | by an event subscription. 9 | 10 | In general, requesting events on a resource is faster and subject to higher 11 | rate limits than requesting the resource itself. Additionally, change events 12 | bubble up - listening to events on a project would include when stories are 13 | added to tasks in the project, even on subtasks. 14 | 15 | Establish an initial sync token by making a request with no sync token. 16 | The response will be a `412` error - the same as if the sync token had 17 | expired. 18 | 19 | Subsequent requests should always provide the sync token from the immediately 20 | preceding call. 21 | 22 | Sync tokens may not be valid if you attempt to go 'backward' in the history 23 | by requesting previous tokens, though re-requesting the current sync token 24 | is generally safe, and will always return the same results. 25 | 26 | When you receive a `412 Precondition Failed` error, it means that the 27 | sync token is either invalid or expired. If you are attempting to keep a set 28 | of data in sync, this signals you may need to re-crawl the data. 29 | 30 | Sync tokens always expire after 24 hours, but may expire sooner, depending on 31 | load on the service. 32 | } 33 | \seealso{ 34 | \link{https://asana.com/developers/api-reference/events} 35 | } 36 | \concept{events} 37 | -------------------------------------------------------------------------------- /man/asn_projects_tasks.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_tasks} 4 | \alias{asn_projects_tasks} 5 | \title{Returns the compact task records for all tasks within the given project, 6 | ordered by their priority within the project. Tasks can exist in more than one project at a time.} 7 | \usage{ 8 | asn_projects_tasks(project, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{project}{{Id} The project in which to search for tasks.#'} 12 | 13 | \item{...}{{Object} Parameters for the request} 14 | } 15 | \description{ 16 | Returns the compact task records for all tasks within the given project, 17 | ordered by their priority within the project. Tasks can exist in more than one project at a time. 18 | } 19 | \seealso{ 20 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 21 | \code{\link{asn_projects_add_followers}}, 22 | \code{\link{asn_projects_add_members}}, 23 | \code{\link{asn_projects_create_in_team}}, 24 | \code{\link{asn_projects_create_in_workspace}}, 25 | \code{\link{asn_projects_create}}, 26 | \code{\link{asn_projects_delete}}, 27 | \code{\link{asn_projects_find_all}}, 28 | \code{\link{asn_projects_find_by_id}}, 29 | \code{\link{asn_projects_find_by_team}}, 30 | \code{\link{asn_projects_find_by_workspace}}, 31 | \code{\link{asn_projects_remove_custom_field_setting}}, 32 | \code{\link{asn_projects_remove_followers}}, 33 | \code{\link{asn_projects_remove_members}}, 34 | \code{\link{asn_projects_update}}, 35 | \code{\link{asn_projects}} 36 | } 37 | \concept{projects} 38 | -------------------------------------------------------------------------------- /R/events.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' Events 3 | #' 4 | #' 5 | #' An _event_ is an object representing a change to a resource that was observed 6 | #' by an event subscription. 7 | #' 8 | #' In general, requesting events on a resource is faster and subject to higher 9 | #' rate limits than requesting the resource itself. Additionally, change events 10 | #' bubble up - listening to events on a project would include when stories are 11 | #' added to tasks in the project, even on subtasks. 12 | #' 13 | #' Establish an initial sync token by making a request with no sync token. 14 | #' The response will be a `412` error - the same as if the sync token had 15 | #' expired. 16 | #' 17 | #' Subsequent requests should always provide the sync token from the immediately 18 | #' preceding call. 19 | #' 20 | #' Sync tokens may not be valid if you attempt to go 'backward' in the history 21 | #' by requesting previous tokens, though re-requesting the current sync token 22 | #' is generally safe, and will always return the same results. 23 | #' 24 | #' When you receive a `412 Precondition Failed` error, it means that the 25 | #' sync token is either invalid or expired. If you are attempting to keep a set 26 | #' of data in sync, this signals you may need to re-crawl the data. 27 | #' 28 | #' Sync tokens always expire after 24 hours, but may expire sooner, depending on 29 | #' load on the service. 30 | #' @name asn_events 31 | #' @rdname asn_events 32 | #' @family events 33 | #' @seealso \link{https://asana.com/developers/api-reference/events} 34 | NULL 35 | 36 | -------------------------------------------------------------------------------- /R/custom_field_settings.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' CustomFieldSettings 3 | #' 4 | #' 5 | #' Custom fields are attached to a particular project with the Custom 6 | #' Field Settings resource. This resource both represents the many-to-many join 7 | #' of the Custom Field and Project as well as stores information that is relevant to that 8 | #' particular pairing; for instance, the `is_important` property determines 9 | #' some possible application-specific handling of that custom field (see below) 10 | #' @name asn_custom_field_settings 11 | #' @rdname asn_custom_field_settings 12 | #' @family custom_field_settings 13 | #' @seealso \link{https://asana.com/developers/api-reference/custom_field_settings} 14 | NULL 15 | 16 | #' Returns a list of all of the custom fields settings on a project, in compact form. Note that, as in all queries to collections which return compact representation, `opt_fields` and `opt_expand` can be used to include more data than is returned in the compact representation. See the getting started guide on [input/output options](/developers/documentation/getting-started/input-output-options) for more information. 17 | #' 18 | #' @param project {Id} The ID of the project for which to list custom field settings#' 19 | #' @param ... {Object} Parameters for the request 20 | #' @export 21 | #' @family custom_field_settings 22 | asn_custom_field_settings_find_by_project = function(project, ..., options = list()){ 23 | path = sprintf("/projects/%s/custom_field_settings", project) 24 | asn_get(endpoint = path, ..., options = options) 25 | } 26 | 27 | 28 | -------------------------------------------------------------------------------- /man/asn_custom_fields_update.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_fields.R 3 | \name{asn_custom_fields_update} 4 | \alias{asn_custom_fields_update} 5 | \title{A specific, existing custom field can be updated by making a PUT request on the URL for that custom field. Only the fields provided in the `data` block will be updated; any unspecified fields will remain unchanged} 6 | \usage{ 7 | asn_custom_fields_update(custom_field, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{custom_field}{{Id} Globally unique identifier for the custom field.#'} 11 | 12 | \item{...}{{Object} Data for the request} 13 | } 14 | \description{ 15 | When using this method, it is best to specify only those fields you wish to change, or else you may overwrite changes made by another user since you last retrieved the custom field. 16 | } 17 | \details{ 18 | A custom field's `type` cannot be updated. 19 | 20 | An enum custom field's `enum_options` cannot be updated with this endpoint. Instead see "Work With Enum Options" for information on how to update `enum_options`. 21 | 22 | Returns the complete updated custom field record. 23 | } 24 | \seealso{ 25 | Other custom_fields: \code{\link{asn_custom_fields_add_enum_option}}, 26 | \code{\link{asn_custom_fields_create}}, 27 | \code{\link{asn_custom_fields_delete}}, 28 | \code{\link{asn_custom_fields_find_by_id}}, 29 | \code{\link{asn_custom_fields_find_by_workspace}}, 30 | \code{\link{asn_custom_fields_reorder_enum_option}}, 31 | \code{\link{asn_custom_fields_update_enum_option}}, 32 | \code{\link{asn_custom_fields}} 33 | } 34 | \concept{custom_fields} 35 | -------------------------------------------------------------------------------- /man/asn_projects.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects} 4 | \alias{asn_projects} 5 | \title{Projects} 6 | \description{ 7 | A _project_ represents a prioritized list of tasks in Asana or a board with 8 | columns of tasks represented as cards. It exists in a single workspace or 9 | organization and is accessible to a subset of users in that workspace or 10 | organization, depending on its permissions. 11 | 12 | Projects in organizations are shared with a single team. You cannot currently 13 | change the team of a project via the API. Non-organization workspaces do not 14 | have teams and so you should not specify the team of project in a regular 15 | workspace. 16 | } 17 | \seealso{ 18 | \link{https://asana.com/developers/api-reference/projects} 19 | 20 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 21 | \code{\link{asn_projects_add_followers}}, 22 | \code{\link{asn_projects_add_members}}, 23 | \code{\link{asn_projects_create_in_team}}, 24 | \code{\link{asn_projects_create_in_workspace}}, 25 | \code{\link{asn_projects_create}}, 26 | \code{\link{asn_projects_delete}}, 27 | \code{\link{asn_projects_find_all}}, 28 | \code{\link{asn_projects_find_by_id}}, 29 | \code{\link{asn_projects_find_by_team}}, 30 | \code{\link{asn_projects_find_by_workspace}}, 31 | \code{\link{asn_projects_remove_custom_field_setting}}, 32 | \code{\link{asn_projects_remove_followers}}, 33 | \code{\link{asn_projects_remove_members}}, 34 | \code{\link{asn_projects_tasks}}, 35 | \code{\link{asn_projects_update}} 36 | } 37 | \concept{projects} 38 | -------------------------------------------------------------------------------- /man/asn_projects_remove_followers.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_remove_followers} 4 | \alias{asn_projects_remove_followers} 5 | \title{Removes the specified list of users from following the project, this will not affect project membership status. 6 | Returns the updated project record.} 7 | \usage{ 8 | asn_projects_remove_followers(project, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{project}{{Id} The project to remove followers from.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | followers : {Array} An array of followers to remove from the project.} 15 | } 16 | \description{ 17 | Removes the specified list of users from following the project, this will not affect project membership status. 18 | Returns the updated project record. 19 | } 20 | \seealso{ 21 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 22 | \code{\link{asn_projects_add_followers}}, 23 | \code{\link{asn_projects_add_members}}, 24 | \code{\link{asn_projects_create_in_team}}, 25 | \code{\link{asn_projects_create_in_workspace}}, 26 | \code{\link{asn_projects_create}}, 27 | \code{\link{asn_projects_delete}}, 28 | \code{\link{asn_projects_find_all}}, 29 | \code{\link{asn_projects_find_by_id}}, 30 | \code{\link{asn_projects_find_by_team}}, 31 | \code{\link{asn_projects_find_by_workspace}}, 32 | \code{\link{asn_projects_remove_custom_field_setting}}, 33 | \code{\link{asn_projects_remove_members}}, 34 | \code{\link{asn_projects_tasks}}, 35 | \code{\link{asn_projects_update}}, 36 | \code{\link{asn_projects}} 37 | } 38 | \concept{projects} 39 | -------------------------------------------------------------------------------- /man/asn_webhooks_create.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/webhooks.R 3 | \name{asn_webhooks_create} 4 | \alias{asn_webhooks_create} 5 | \title{Establishing a webhook is a two-part process. First, a simple HTTP POST 6 | similar to any other resource creation. Since you could have multiple 7 | webhooks we recommend specifying a unique local id for each target.} 8 | \usage{ 9 | asn_webhooks_create(..., options = list()) 10 | } 11 | \arguments{ 12 | \item{...}{{Object} Data for the request} 13 | 14 | \item{resource}{{Id} A resource ID to subscribe to. The resource can be a task or project.#'} 15 | 16 | \item{target}{{String} The URL to receive the HTTP POST.#'} 17 | } 18 | \description{ 19 | Next comes the confirmation handshake. When a webhook is created, we will 20 | send a test POST to the `target` with an `X-Hook-Secret` header as 21 | described in the 22 | [Resthooks Security documentation](http://resthooks.org/docs/security/). 23 | The target must respond with a `200 OK` and a matching `X-Hook-Secret` 24 | header to confirm that this webhook subscription is indeed expected. 25 | } 26 | \details{ 27 | If you do not acknowledge the webhook's confirmation handshake it will 28 | fail to setup, and you will receive an error in response to your attempt 29 | to create it. This means you need to be able to receive and complete the 30 | webhook *while* the POST request is in-flight. 31 | } 32 | \seealso{ 33 | Other webhooks: \code{\link{asn_webhooks_delete_by_id}}, 34 | \code{\link{asn_webhooks_get_all}}, 35 | \code{\link{asn_webhooks_get_by_id}}, 36 | \code{\link{asn_webhooks}} 37 | } 38 | \concept{webhooks} 39 | -------------------------------------------------------------------------------- /R/project_memberships.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' ProjectMemberships 3 | #' 4 | #' 5 | #' With the introduction of "comment-only" projects in Asana, a user's membership 6 | #' in a project comes with associated permissions. These permissions (whether a 7 | #' user has full access to the project or comment-only access) are accessible 8 | #' through the project memberships endpoints described here. 9 | #' @name asn_project_memberships 10 | #' @rdname asn_project_memberships 11 | #' @family project_memberships 12 | #' @seealso \link{https://asana.com/developers/api-reference/project_memberships} 13 | NULL 14 | 15 | #' Returns the compact project membership records for the project. 16 | #' 17 | #' @param project {Id} The project for which to fetch memberships.#' 18 | #' @param ... {Object} Parameters for the request 19 | #' [user] : {String} If present, the user to filter the memberships to. 20 | #' @export 21 | #' @family project_memberships 22 | asn_project_memberships_get_many = function(project, ..., options = list()){ 23 | path = sprintf("/projects/%s/project_memberships", project) 24 | asn_get(endpoint = path, ..., options = options) 25 | } 26 | 27 | 28 | #' Returns the project membership record. 29 | #' 30 | #' @param project {Id} Globally unique identifier for the project membership.#' 31 | #' @param ... {Object} Parameters for the request 32 | #' @export 33 | #' @family project_memberships 34 | asn_project_memberships_get_single = function(project, ..., options = list()){ 35 | path = sprintf("/project_memberships/%s", project) 36 | asn_get(endpoint = path, ..., options = options) 37 | } 38 | 39 | 40 | -------------------------------------------------------------------------------- /man/asn_projects_update.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_update} 4 | \alias{asn_projects_update} 5 | \title{A specific, existing project can be updated by making a PUT request on the 6 | URL for that project. Only the fields provided in the `data` block will be 7 | updated; any unspecified fields will remain unchanged.} 8 | \usage{ 9 | asn_projects_update(project, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{project}{{Id} The project to update.#'} 13 | 14 | \item{...}{{Object} Data for the request} 15 | } 16 | \description{ 17 | When using this method, it is best to specify only those fields you wish 18 | to change, or else you may overwrite changes made by another user since 19 | you last retrieved the task. 20 | } 21 | \details{ 22 | Returns the complete updated project record. 23 | } 24 | \seealso{ 25 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 26 | \code{\link{asn_projects_add_followers}}, 27 | \code{\link{asn_projects_add_members}}, 28 | \code{\link{asn_projects_create_in_team}}, 29 | \code{\link{asn_projects_create_in_workspace}}, 30 | \code{\link{asn_projects_create}}, 31 | \code{\link{asn_projects_delete}}, 32 | \code{\link{asn_projects_find_all}}, 33 | \code{\link{asn_projects_find_by_id}}, 34 | \code{\link{asn_projects_find_by_team}}, 35 | \code{\link{asn_projects_find_by_workspace}}, 36 | \code{\link{asn_projects_remove_custom_field_setting}}, 37 | \code{\link{asn_projects_remove_followers}}, 38 | \code{\link{asn_projects_remove_members}}, 39 | \code{\link{asn_projects_tasks}}, 40 | \code{\link{asn_projects}} 41 | } 42 | \concept{projects} 43 | -------------------------------------------------------------------------------- /man/asn_projects_find_all.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_find_all} 4 | \alias{asn_projects_find_all} 5 | \title{Returns the compact project records for some filtered set of projects. 6 | Use one or more of the parameters provided to filter the projects returned.} 7 | \usage{ 8 | asn_projects_find_all(..., options = list()) 9 | } 10 | \arguments{ 11 | \item{...}{{Object} Parameters for the request 12 | [workspace] : {Id} The workspace or organization to filter projects on. 13 | [team] : {Id} The team to filter projects on. 14 | [archived] : {Boolean} Only return projects whose `archived` field takes on the value of 15 | this parameter.} 16 | } 17 | \description{ 18 | Returns the compact project records for some filtered set of projects. 19 | Use one or more of the parameters provided to filter the projects returned. 20 | } 21 | \seealso{ 22 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 23 | \code{\link{asn_projects_add_followers}}, 24 | \code{\link{asn_projects_add_members}}, 25 | \code{\link{asn_projects_create_in_team}}, 26 | \code{\link{asn_projects_create_in_workspace}}, 27 | \code{\link{asn_projects_create}}, 28 | \code{\link{asn_projects_delete}}, 29 | \code{\link{asn_projects_find_by_id}}, 30 | \code{\link{asn_projects_find_by_team}}, 31 | \code{\link{asn_projects_find_by_workspace}}, 32 | \code{\link{asn_projects_remove_custom_field_setting}}, 33 | \code{\link{asn_projects_remove_followers}}, 34 | \code{\link{asn_projects_remove_members}}, 35 | \code{\link{asn_projects_tasks}}, 36 | \code{\link{asn_projects_update}}, 37 | \code{\link{asn_projects}} 38 | } 39 | \concept{projects} 40 | -------------------------------------------------------------------------------- /man/asn_custom_fields_add_enum_option.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_fields.R 3 | \name{asn_custom_fields_add_enum_option} 4 | \alias{asn_custom_fields_add_enum_option} 5 | \title{Creates an enum option and adds it to this custom field's list of enum options. A custom field can have at most 50 enum options (including disabled options). By default new enum options are inserted at the end of a custom field's list.} 6 | \usage{ 7 | asn_custom_fields_add_enum_option(custom_field, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{custom_field}{{Id} Globally unique identifier for the custom field.#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | name : {String} The name of the enum option. 14 | [color] : {String} The color of the enum option. Defaults to 'none'. 15 | [insert_before] : {Id} An existing enum option within this custom field before which the new enum option should be inserted. Cannot be provided together with after_enum_option. 16 | [insert_after] : {Id} An existing enum option within this custom field after which the new enum option should be inserted. Cannot be provided together with before_enum_option.} 17 | } 18 | \description{ 19 | Returns the full record of the newly created enum option. 20 | } 21 | \seealso{ 22 | Other custom_fields: \code{\link{asn_custom_fields_create}}, 23 | \code{\link{asn_custom_fields_delete}}, 24 | \code{\link{asn_custom_fields_find_by_id}}, 25 | \code{\link{asn_custom_fields_find_by_workspace}}, 26 | \code{\link{asn_custom_fields_reorder_enum_option}}, 27 | \code{\link{asn_custom_fields_update_enum_option}}, 28 | \code{\link{asn_custom_fields_update}}, 29 | \code{\link{asn_custom_fields}} 30 | } 31 | \concept{custom_fields} 32 | -------------------------------------------------------------------------------- /man/asn_tasks_find_by_id.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_find_by_id} 4 | \alias{asn_tasks_find_by_id} 5 | \title{Returns the complete task record for a single task.} 6 | \usage{ 7 | asn_tasks_find_by_id(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to get.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the complete task record for a single task. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_project}}, 32 | \code{\link{asn_tasks_find_by_section}}, 33 | \code{\link{asn_tasks_find_by_tag}}, 34 | \code{\link{asn_tasks_projects}}, 35 | \code{\link{asn_tasks_remove_dependencies}}, 36 | \code{\link{asn_tasks_remove_dependents}}, 37 | \code{\link{asn_tasks_remove_followers}}, 38 | \code{\link{asn_tasks_remove_project}}, 39 | \code{\link{asn_tasks_remove_tag}}, 40 | \code{\link{asn_tasks_search}}, 41 | \code{\link{asn_tasks_stories}}, 42 | \code{\link{asn_tasks_subtasks}}, 43 | \code{\link{asn_tasks_tags}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /man/asn_custom_fields_reorder_enum_option.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_fields.R 3 | \name{asn_custom_fields_reorder_enum_option} 4 | \alias{asn_custom_fields_reorder_enum_option} 5 | \title{Moves a particular enum option to be either before or after another specified enum option in the custom field.} 6 | \usage{ 7 | asn_custom_fields_reorder_enum_option(custom_field, ..., 8 | options = list()) 9 | } 10 | \arguments{ 11 | \item{custom_field}{{Id} Globally unique identifier for the custom field.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | enum_option : {Id} The ID of the enum option to relocate. 15 | name : {String} The name of the enum option. 16 | [color] : {String} The color of the enum option. Defaults to 'none'. 17 | [before_enum_option] : {Id} An existing enum option within this custom field before which the new enum option should be inserted. Cannot be provided together with after_enum_option. 18 | [after_enum_option] : {Id} An existing enum option within this custom field after which the new enum option should be inserted. Cannot be provided together with before_enum_option.} 19 | } 20 | \description{ 21 | Moves a particular enum option to be either before or after another specified enum option in the custom field. 22 | } 23 | \seealso{ 24 | Other custom_fields: \code{\link{asn_custom_fields_add_enum_option}}, 25 | \code{\link{asn_custom_fields_create}}, 26 | \code{\link{asn_custom_fields_delete}}, 27 | \code{\link{asn_custom_fields_find_by_id}}, 28 | \code{\link{asn_custom_fields_find_by_workspace}}, 29 | \code{\link{asn_custom_fields_update_enum_option}}, 30 | \code{\link{asn_custom_fields_update}}, 31 | \code{\link{asn_custom_fields}} 32 | } 33 | \concept{custom_fields} 34 | -------------------------------------------------------------------------------- /man/asn_tasks_tags.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_tags} 4 | \alias{asn_tasks_tags} 5 | \title{Returns a compact representation of all of the tags the task has.} 6 | \usage{ 7 | asn_tasks_tags(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to get tags on.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns a compact representation of all of the tags the task has. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_id}}, 32 | \code{\link{asn_tasks_find_by_project}}, 33 | \code{\link{asn_tasks_find_by_section}}, 34 | \code{\link{asn_tasks_find_by_tag}}, 35 | \code{\link{asn_tasks_projects}}, 36 | \code{\link{asn_tasks_remove_dependencies}}, 37 | \code{\link{asn_tasks_remove_dependents}}, 38 | \code{\link{asn_tasks_remove_followers}}, 39 | \code{\link{asn_tasks_remove_project}}, 40 | \code{\link{asn_tasks_remove_tag}}, 41 | \code{\link{asn_tasks_search}}, 42 | \code{\link{asn_tasks_stories}}, 43 | \code{\link{asn_tasks_subtasks}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /R/query-for-projects.R: -------------------------------------------------------------------------------- 1 | #' List all available projects in Asana 2 | #' 3 | #' @param archived TRUE, FALSE, or NA for archived, live, or all projects, respectively. Defaults to NA. 4 | #' @param access_token An Asana access token. 5 | #' @return A list containing a dataframe of all available projects to the Asana user. 6 | #' @references \url{https://asana.com/developers/api-reference/projects#query} 7 | #' @examples 8 | #' \donttest{ 9 | #' ## Marked as don't test because an access token is needed 10 | #' get_all_projects() 11 | #' } 12 | #' @export 13 | get_all_projects <- function(archived = NA, access_token = Sys.getenv("ASANA_ACCESS_TOKEN")){ 14 | 15 | archived <- fix_archived(archived) 16 | results <- call_asana_api("projects", access_token = access_token, archived = archived) 17 | fix_ids(results$data) 18 | 19 | } 20 | 21 | #' List a specific workspace's projects in Asana 22 | #' 23 | #' @param workspace_id An Asana workspace ID 24 | #' @param archived TRUE, FALSE, or NA for archived, live, or all projects, respectively. Defaults to NA. 25 | #' @param access_token An Asana access token. 26 | #' @return A list containing a dataframe of all projects available in a specific workspace 27 | #' @references \url{https://asana.com/developers/api-reference/projects#query} 28 | #' @examples 29 | #' \donttest{ 30 | #' ## Marked as don't test because an access token is needed 31 | #' get_workspace_projects() 32 | #' } 33 | #' @export 34 | get_workspace_projects <- function(workspace_id, archived = NA, access_token = Sys.getenv("ASANA_ACCESS_TOKEN")){ 35 | 36 | archived <- fix_archived(archived) 37 | endpoint <- paste0("workspaces/", workspace_id, "/projects") 38 | results <- call_asana_api(endpoint, access_token = access_token, archived = archived) 39 | fix_ids(results$data) 40 | 41 | } 42 | -------------------------------------------------------------------------------- /man/asn_custom_fields_create.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/custom_fields.R 3 | \name{asn_custom_fields_create} 4 | \alias{asn_custom_fields_create} 5 | \title{Creates a new custom field in a workspace. Every custom field is required to be created in a specific workspace, and this workspace cannot be changed once set.} 6 | \usage{ 7 | asn_custom_fields_create(..., options = list()) 8 | } 9 | \arguments{ 10 | \item{...}{{Object} Data for the request 11 | workspace : {Id} The workspace to create a custom field in. 12 | type : {String} The type of the custom field. 13 | name : {String} The name of the custom field. 14 | [description] : {String} The description of the custom field. 15 | [precision] : {Integer} The number of decimal places for the numerical values. Required if the custom field is of type 'number'. 16 | [enum_options] : {String} The discrete values the custom field can assume. Required if the custom field is of type 'enum'.} 17 | } 18 | \description{ 19 | A custom field's `name` must be unique within a workspace and not conflict with names of existing task properties such as 'Due Date' or 'Assignee'. A custom field's `type` must be one of 'text', 'enum', or 'number'. 20 | } 21 | \details{ 22 | Returns the full record of the newly created custom field. 23 | } 24 | \seealso{ 25 | Other custom_fields: \code{\link{asn_custom_fields_add_enum_option}}, 26 | \code{\link{asn_custom_fields_delete}}, 27 | \code{\link{asn_custom_fields_find_by_id}}, 28 | \code{\link{asn_custom_fields_find_by_workspace}}, 29 | \code{\link{asn_custom_fields_reorder_enum_option}}, 30 | \code{\link{asn_custom_fields_update_enum_option}}, 31 | \code{\link{asn_custom_fields_update}}, 32 | \code{\link{asn_custom_fields}} 33 | } 34 | \concept{custom_fields} 35 | -------------------------------------------------------------------------------- /man/asn_tasks_add_tag.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_add_tag} 4 | \alias{asn_tasks_add_tag} 5 | \title{Adds a tag to a task. Returns an empty data block.} 6 | \usage{ 7 | asn_tasks_add_tag(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to add a tag to.#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | tag : {Id} The tag to add to the task.} 14 | } 15 | \description{ 16 | Adds a tag to a task. Returns an empty data block. 17 | } 18 | \seealso{ 19 | Other tasks: \code{\link{asn_tasks_add_comment}}, 20 | \code{\link{asn_tasks_add_dependencies}}, 21 | \code{\link{asn_tasks_add_dependents}}, 22 | \code{\link{asn_tasks_add_followers}}, 23 | \code{\link{asn_tasks_add_project}}, 24 | \code{\link{asn_tasks_add_subtask}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_id}}, 32 | \code{\link{asn_tasks_find_by_project}}, 33 | \code{\link{asn_tasks_find_by_section}}, 34 | \code{\link{asn_tasks_find_by_tag}}, 35 | \code{\link{asn_tasks_projects}}, 36 | \code{\link{asn_tasks_remove_dependencies}}, 37 | \code{\link{asn_tasks_remove_dependents}}, 38 | \code{\link{asn_tasks_remove_followers}}, 39 | \code{\link{asn_tasks_remove_project}}, 40 | \code{\link{asn_tasks_remove_tag}}, 41 | \code{\link{asn_tasks_search}}, 42 | \code{\link{asn_tasks_stories}}, 43 | \code{\link{asn_tasks_subtasks}}, 44 | \code{\link{asn_tasks_tags}}, 45 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 46 | } 47 | \concept{tasks} 48 | -------------------------------------------------------------------------------- /man/asn_tasks_subtasks.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_subtasks} 4 | \alias{asn_tasks_subtasks} 5 | \title{Returns a compact representation of all of the subtasks of a task.} 6 | \usage{ 7 | asn_tasks_subtasks(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to get the subtasks of.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns a compact representation of all of the subtasks of a task. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_id}}, 32 | \code{\link{asn_tasks_find_by_project}}, 33 | \code{\link{asn_tasks_find_by_section}}, 34 | \code{\link{asn_tasks_find_by_tag}}, 35 | \code{\link{asn_tasks_projects}}, 36 | \code{\link{asn_tasks_remove_dependencies}}, 37 | \code{\link{asn_tasks_remove_dependents}}, 38 | \code{\link{asn_tasks_remove_followers}}, 39 | \code{\link{asn_tasks_remove_project}}, 40 | \code{\link{asn_tasks_remove_tag}}, 41 | \code{\link{asn_tasks_search}}, 42 | \code{\link{asn_tasks_stories}}, 43 | \code{\link{asn_tasks_tags}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /man/asn_tasks_projects.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_projects} 4 | \alias{asn_tasks_projects} 5 | \title{Returns a compact representation of all of the projects the task is in.} 6 | \usage{ 7 | asn_tasks_projects(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to get projects on.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns a compact representation of all of the projects the task is in. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_id}}, 32 | \code{\link{asn_tasks_find_by_project}}, 33 | \code{\link{asn_tasks_find_by_section}}, 34 | \code{\link{asn_tasks_find_by_tag}}, 35 | \code{\link{asn_tasks_remove_dependencies}}, 36 | \code{\link{asn_tasks_remove_dependents}}, 37 | \code{\link{asn_tasks_remove_followers}}, 38 | \code{\link{asn_tasks_remove_project}}, 39 | \code{\link{asn_tasks_remove_tag}}, 40 | \code{\link{asn_tasks_search}}, 41 | \code{\link{asn_tasks_stories}}, 42 | \code{\link{asn_tasks_subtasks}}, 43 | \code{\link{asn_tasks_tags}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /man/asn_tasks_stories.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_stories} 4 | \alias{asn_tasks_stories} 5 | \title{Returns a compact representation of all of the stories on the task.} 6 | \usage{ 7 | asn_tasks_stories(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task containing the stories to get.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns a compact representation of all of the stories on the task. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_id}}, 32 | \code{\link{asn_tasks_find_by_project}}, 33 | \code{\link{asn_tasks_find_by_section}}, 34 | \code{\link{asn_tasks_find_by_tag}}, 35 | \code{\link{asn_tasks_projects}}, 36 | \code{\link{asn_tasks_remove_dependencies}}, 37 | \code{\link{asn_tasks_remove_dependents}}, 38 | \code{\link{asn_tasks_remove_followers}}, 39 | \code{\link{asn_tasks_remove_project}}, 40 | \code{\link{asn_tasks_remove_tag}}, 41 | \code{\link{asn_tasks_search}}, 42 | \code{\link{asn_tasks_subtasks}}, 43 | \code{\link{asn_tasks_tags}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /man/asn_tasks_dependents.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_dependents} 4 | \alias{asn_tasks_dependents} 5 | \title{Returns the compact representations of all of the dependents of a task.} 6 | \usage{ 7 | asn_tasks_dependents(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to get dependents on.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the compact representations of all of the dependents of a task. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_find_all}}, 30 | \code{\link{asn_tasks_find_by_id}}, 31 | \code{\link{asn_tasks_find_by_project}}, 32 | \code{\link{asn_tasks_find_by_section}}, 33 | \code{\link{asn_tasks_find_by_tag}}, 34 | \code{\link{asn_tasks_projects}}, 35 | \code{\link{asn_tasks_remove_dependencies}}, 36 | \code{\link{asn_tasks_remove_dependents}}, 37 | \code{\link{asn_tasks_remove_followers}}, 38 | \code{\link{asn_tasks_remove_project}}, 39 | \code{\link{asn_tasks_remove_tag}}, 40 | \code{\link{asn_tasks_search}}, 41 | \code{\link{asn_tasks_stories}}, 42 | \code{\link{asn_tasks_subtasks}}, 43 | \code{\link{asn_tasks_tags}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /man/asn_tasks_find_by_tag.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_find_by_tag} 4 | \alias{asn_tasks_find_by_tag} 5 | \title{Returns the compact task records for all tasks with the given tag.} 6 | \usage{ 7 | asn_tasks_find_by_tag(tag, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{tag}{{Id} The tag in which to search for tasks.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the compact task records for all tasks with the given tag. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_id}}, 32 | \code{\link{asn_tasks_find_by_project}}, 33 | \code{\link{asn_tasks_find_by_section}}, 34 | \code{\link{asn_tasks_projects}}, 35 | \code{\link{asn_tasks_remove_dependencies}}, 36 | \code{\link{asn_tasks_remove_dependents}}, 37 | \code{\link{asn_tasks_remove_followers}}, 38 | \code{\link{asn_tasks_remove_project}}, 39 | \code{\link{asn_tasks_remove_tag}}, 40 | \code{\link{asn_tasks_search}}, 41 | \code{\link{asn_tasks_stories}}, 42 | \code{\link{asn_tasks_subtasks}}, 43 | \code{\link{asn_tasks_tags}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /man/asn_tasks.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks} 4 | \alias{asn_tasks} 5 | \title{Tasks} 6 | \description{ 7 | The _task_ is the basic object around which many operations in Asana are 8 | centered. In the Asana application, multiple tasks populate the middle pane 9 | according to some view parameters, and the set of selected tasks determines 10 | the more detailed information presented in the details pane. 11 | } 12 | \seealso{ 13 | \link{https://asana.com/developers/api-reference/tasks} 14 | 15 | Other tasks: \code{\link{asn_tasks_add_comment}}, 16 | \code{\link{asn_tasks_add_dependencies}}, 17 | \code{\link{asn_tasks_add_dependents}}, 18 | \code{\link{asn_tasks_add_followers}}, 19 | \code{\link{asn_tasks_add_project}}, 20 | \code{\link{asn_tasks_add_subtask}}, 21 | \code{\link{asn_tasks_add_tag}}, 22 | \code{\link{asn_tasks_create_in_workspace}}, 23 | \code{\link{asn_tasks_create}}, 24 | \code{\link{asn_tasks_delete}}, 25 | \code{\link{asn_tasks_dependencies}}, 26 | \code{\link{asn_tasks_dependents}}, 27 | \code{\link{asn_tasks_find_all}}, 28 | \code{\link{asn_tasks_find_by_id}}, 29 | \code{\link{asn_tasks_find_by_project}}, 30 | \code{\link{asn_tasks_find_by_section}}, 31 | \code{\link{asn_tasks_find_by_tag}}, 32 | \code{\link{asn_tasks_projects}}, 33 | \code{\link{asn_tasks_remove_dependencies}}, 34 | \code{\link{asn_tasks_remove_dependents}}, 35 | \code{\link{asn_tasks_remove_followers}}, 36 | \code{\link{asn_tasks_remove_project}}, 37 | \code{\link{asn_tasks_remove_tag}}, 38 | \code{\link{asn_tasks_search}}, 39 | \code{\link{asn_tasks_stories}}, 40 | \code{\link{asn_tasks_subtasks}}, 41 | \code{\link{asn_tasks_tags}}, 42 | \code{\link{asn_tasks_update}} 43 | } 44 | \concept{tasks} 45 | -------------------------------------------------------------------------------- /man/asn_projects_create.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_create} 4 | \alias{asn_projects_create} 5 | \title{Creates a new project in a workspace or team.} 6 | \usage{ 7 | asn_projects_create(..., options = list()) 8 | } 9 | \arguments{ 10 | \item{...}{{Object} Data for the request 11 | workspace : {Id} The workspace or organization to create the project in. 12 | [team] : {Id} If creating in an organization, the specific team to create the 13 | project in.} 14 | } 15 | \description{ 16 | Every project is required to be created in a specific workspace or 17 | organization, and this cannot be changed once set. Note that you can use 18 | the `workspace` parameter regardless of whether or not it is an 19 | organization. 20 | } 21 | \details{ 22 | If the workspace for your project _is_ an organization, you must also 23 | supply a `team` to share the project with. 24 | 25 | Returns the full record of the newly created project. 26 | } 27 | \seealso{ 28 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 29 | \code{\link{asn_projects_add_followers}}, 30 | \code{\link{asn_projects_add_members}}, 31 | \code{\link{asn_projects_create_in_team}}, 32 | \code{\link{asn_projects_create_in_workspace}}, 33 | \code{\link{asn_projects_delete}}, 34 | \code{\link{asn_projects_find_all}}, 35 | \code{\link{asn_projects_find_by_id}}, 36 | \code{\link{asn_projects_find_by_team}}, 37 | \code{\link{asn_projects_find_by_workspace}}, 38 | \code{\link{asn_projects_remove_custom_field_setting}}, 39 | \code{\link{asn_projects_remove_followers}}, 40 | \code{\link{asn_projects_remove_members}}, 41 | \code{\link{asn_projects_tasks}}, 42 | \code{\link{asn_projects_update}}, 43 | \code{\link{asn_projects}} 44 | } 45 | \concept{projects} 46 | -------------------------------------------------------------------------------- /man/asn_tasks_dependencies.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_dependencies} 4 | \alias{asn_tasks_dependencies} 5 | \title{Returns the compact representations of all of the dependencies of a task.} 6 | \usage{ 7 | asn_tasks_dependencies(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to get dependencies on.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Returns the compact representations of all of the dependencies of a task. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependents}}, 29 | \code{\link{asn_tasks_find_all}}, 30 | \code{\link{asn_tasks_find_by_id}}, 31 | \code{\link{asn_tasks_find_by_project}}, 32 | \code{\link{asn_tasks_find_by_section}}, 33 | \code{\link{asn_tasks_find_by_tag}}, 34 | \code{\link{asn_tasks_projects}}, 35 | \code{\link{asn_tasks_remove_dependencies}}, 36 | \code{\link{asn_tasks_remove_dependents}}, 37 | \code{\link{asn_tasks_remove_followers}}, 38 | \code{\link{asn_tasks_remove_project}}, 39 | \code{\link{asn_tasks_remove_tag}}, 40 | \code{\link{asn_tasks_search}}, 41 | \code{\link{asn_tasks_stories}}, 42 | \code{\link{asn_tasks_subtasks}}, 43 | \code{\link{asn_tasks_tags}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /man/asn_tasks_remove_tag.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_remove_tag} 4 | \alias{asn_tasks_remove_tag} 5 | \title{Removes a tag from the task. Returns an empty data block.} 6 | \usage{ 7 | asn_tasks_remove_tag(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to remove a tag from.#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | tag : {Id} The tag to remove from the task.} 14 | } 15 | \description{ 16 | Removes a tag from the task. Returns an empty data block. 17 | } 18 | \seealso{ 19 | Other tasks: \code{\link{asn_tasks_add_comment}}, 20 | \code{\link{asn_tasks_add_dependencies}}, 21 | \code{\link{asn_tasks_add_dependents}}, 22 | \code{\link{asn_tasks_add_followers}}, 23 | \code{\link{asn_tasks_add_project}}, 24 | \code{\link{asn_tasks_add_subtask}}, 25 | \code{\link{asn_tasks_add_tag}}, 26 | \code{\link{asn_tasks_create_in_workspace}}, 27 | \code{\link{asn_tasks_create}}, 28 | \code{\link{asn_tasks_delete}}, 29 | \code{\link{asn_tasks_dependencies}}, 30 | \code{\link{asn_tasks_dependents}}, 31 | \code{\link{asn_tasks_find_all}}, 32 | \code{\link{asn_tasks_find_by_id}}, 33 | \code{\link{asn_tasks_find_by_project}}, 34 | \code{\link{asn_tasks_find_by_section}}, 35 | \code{\link{asn_tasks_find_by_tag}}, 36 | \code{\link{asn_tasks_projects}}, 37 | \code{\link{asn_tasks_remove_dependencies}}, 38 | \code{\link{asn_tasks_remove_dependents}}, 39 | \code{\link{asn_tasks_remove_followers}}, 40 | \code{\link{asn_tasks_remove_project}}, 41 | \code{\link{asn_tasks_search}}, 42 | \code{\link{asn_tasks_stories}}, 43 | \code{\link{asn_tasks_subtasks}}, 44 | \code{\link{asn_tasks_tags}}, 45 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 46 | } 47 | \concept{tasks} 48 | -------------------------------------------------------------------------------- /man/asn_tasks_remove_dependents.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_remove_dependents} 4 | \alias{asn_tasks_remove_dependents} 5 | \title{Unlinks a set of dependents from this task.} 6 | \usage{ 7 | asn_tasks_remove_dependents(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to remove dependents from.#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | dependents : {Array} An array of task IDs to remove as dependents.} 14 | } 15 | \description{ 16 | Unlinks a set of dependents from this task. 17 | } 18 | \seealso{ 19 | Other tasks: \code{\link{asn_tasks_add_comment}}, 20 | \code{\link{asn_tasks_add_dependencies}}, 21 | \code{\link{asn_tasks_add_dependents}}, 22 | \code{\link{asn_tasks_add_followers}}, 23 | \code{\link{asn_tasks_add_project}}, 24 | \code{\link{asn_tasks_add_subtask}}, 25 | \code{\link{asn_tasks_add_tag}}, 26 | \code{\link{asn_tasks_create_in_workspace}}, 27 | \code{\link{asn_tasks_create}}, 28 | \code{\link{asn_tasks_delete}}, 29 | \code{\link{asn_tasks_dependencies}}, 30 | \code{\link{asn_tasks_dependents}}, 31 | \code{\link{asn_tasks_find_all}}, 32 | \code{\link{asn_tasks_find_by_id}}, 33 | \code{\link{asn_tasks_find_by_project}}, 34 | \code{\link{asn_tasks_find_by_section}}, 35 | \code{\link{asn_tasks_find_by_tag}}, 36 | \code{\link{asn_tasks_projects}}, 37 | \code{\link{asn_tasks_remove_dependencies}}, 38 | \code{\link{asn_tasks_remove_followers}}, 39 | \code{\link{asn_tasks_remove_project}}, 40 | \code{\link{asn_tasks_remove_tag}}, 41 | \code{\link{asn_tasks_search}}, 42 | \code{\link{asn_tasks_stories}}, 43 | \code{\link{asn_tasks_subtasks}}, 44 | \code{\link{asn_tasks_tags}}, 45 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 46 | } 47 | \concept{tasks} 48 | -------------------------------------------------------------------------------- /man/asn_projects_add_followers.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_add_followers} 4 | \alias{asn_projects_add_followers} 5 | \title{Adds the specified list of users as followers to the project. Followers are a subset of members, therefore if 6 | the users are not already members of the project they will also become members as a result of this operation. 7 | Returns the updated project record.} 8 | \usage{ 9 | asn_projects_add_followers(project, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{project}{{Id} The project to add followers to.#'} 13 | 14 | \item{...}{{Object} Data for the request 15 | followers : {Array} An array of followers to add to the project.} 16 | } 17 | \description{ 18 | Adds the specified list of users as followers to the project. Followers are a subset of members, therefore if 19 | the users are not already members of the project they will also become members as a result of this operation. 20 | Returns the updated project record. 21 | } 22 | \seealso{ 23 | Other projects: \code{\link{asn_projects_add_custom_field_setting}}, 24 | \code{\link{asn_projects_add_members}}, 25 | \code{\link{asn_projects_create_in_team}}, 26 | \code{\link{asn_projects_create_in_workspace}}, 27 | \code{\link{asn_projects_create}}, 28 | \code{\link{asn_projects_delete}}, 29 | \code{\link{asn_projects_find_all}}, 30 | \code{\link{asn_projects_find_by_id}}, 31 | \code{\link{asn_projects_find_by_team}}, 32 | \code{\link{asn_projects_find_by_workspace}}, 33 | \code{\link{asn_projects_remove_custom_field_setting}}, 34 | \code{\link{asn_projects_remove_followers}}, 35 | \code{\link{asn_projects_remove_members}}, 36 | \code{\link{asn_projects_tasks}}, 37 | \code{\link{asn_projects_update}}, 38 | \code{\link{asn_projects}} 39 | } 40 | \concept{projects} 41 | -------------------------------------------------------------------------------- /man/asn_tasks_remove_dependencies.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_remove_dependencies} 4 | \alias{asn_tasks_remove_dependencies} 5 | \title{Unlinks a set of dependencies from this task.} 6 | \usage{ 7 | asn_tasks_remove_dependencies(task, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{task}{{Id} The task to remove dependencies from.#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | dependencies : {Array} An array of task IDs to remove as dependencies.} 14 | } 15 | \description{ 16 | Unlinks a set of dependencies from this task. 17 | } 18 | \seealso{ 19 | Other tasks: \code{\link{asn_tasks_add_comment}}, 20 | \code{\link{asn_tasks_add_dependencies}}, 21 | \code{\link{asn_tasks_add_dependents}}, 22 | \code{\link{asn_tasks_add_followers}}, 23 | \code{\link{asn_tasks_add_project}}, 24 | \code{\link{asn_tasks_add_subtask}}, 25 | \code{\link{asn_tasks_add_tag}}, 26 | \code{\link{asn_tasks_create_in_workspace}}, 27 | \code{\link{asn_tasks_create}}, 28 | \code{\link{asn_tasks_delete}}, 29 | \code{\link{asn_tasks_dependencies}}, 30 | \code{\link{asn_tasks_dependents}}, 31 | \code{\link{asn_tasks_find_all}}, 32 | \code{\link{asn_tasks_find_by_id}}, 33 | \code{\link{asn_tasks_find_by_project}}, 34 | \code{\link{asn_tasks_find_by_section}}, 35 | \code{\link{asn_tasks_find_by_tag}}, 36 | \code{\link{asn_tasks_projects}}, 37 | \code{\link{asn_tasks_remove_dependents}}, 38 | \code{\link{asn_tasks_remove_followers}}, 39 | \code{\link{asn_tasks_remove_project}}, 40 | \code{\link{asn_tasks_remove_tag}}, 41 | \code{\link{asn_tasks_search}}, 42 | \code{\link{asn_tasks_stories}}, 43 | \code{\link{asn_tasks_subtasks}}, 44 | \code{\link{asn_tasks_tags}}, 45 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 46 | } 47 | \concept{tasks} 48 | -------------------------------------------------------------------------------- /man/asn_tasks_add_subtask.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_add_subtask} 4 | \alias{asn_tasks_add_subtask} 5 | \title{Creates a new subtask and adds it to the parent task. Returns the full record 6 | for the newly created subtask.} 7 | \usage{ 8 | asn_tasks_add_subtask(task, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{task}{{Id} The task to add a subtask to.#'} 12 | 13 | \item{...}{{Object} Data for the request} 14 | } 15 | \description{ 16 | Creates a new subtask and adds it to the parent task. Returns the full record 17 | for the newly created subtask. 18 | } 19 | \seealso{ 20 | Other tasks: \code{\link{asn_tasks_add_comment}}, 21 | \code{\link{asn_tasks_add_dependencies}}, 22 | \code{\link{asn_tasks_add_dependents}}, 23 | \code{\link{asn_tasks_add_followers}}, 24 | \code{\link{asn_tasks_add_project}}, 25 | \code{\link{asn_tasks_add_tag}}, 26 | \code{\link{asn_tasks_create_in_workspace}}, 27 | \code{\link{asn_tasks_create}}, 28 | \code{\link{asn_tasks_delete}}, 29 | \code{\link{asn_tasks_dependencies}}, 30 | \code{\link{asn_tasks_dependents}}, 31 | \code{\link{asn_tasks_find_all}}, 32 | \code{\link{asn_tasks_find_by_id}}, 33 | \code{\link{asn_tasks_find_by_project}}, 34 | \code{\link{asn_tasks_find_by_section}}, 35 | \code{\link{asn_tasks_find_by_tag}}, 36 | \code{\link{asn_tasks_projects}}, 37 | \code{\link{asn_tasks_remove_dependencies}}, 38 | \code{\link{asn_tasks_remove_dependents}}, 39 | \code{\link{asn_tasks_remove_followers}}, 40 | \code{\link{asn_tasks_remove_project}}, 41 | \code{\link{asn_tasks_remove_tag}}, 42 | \code{\link{asn_tasks_search}}, 43 | \code{\link{asn_tasks_stories}}, 44 | \code{\link{asn_tasks_subtasks}}, 45 | \code{\link{asn_tasks_tags}}, 46 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 47 | } 48 | \concept{tasks} 49 | -------------------------------------------------------------------------------- /man/asn_tasks_remove_project.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_remove_project} 4 | \alias{asn_tasks_remove_project} 5 | \title{Removes the task from the specified project. The task will still exist 6 | in the system, but it will not be in the project anymore.} 7 | \usage{ 8 | asn_tasks_remove_project(task, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{task}{{Id} The task to remove from a project.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | project : {Id} The project to remove the task from.} 15 | } 16 | \description{ 17 | Returns an empty data block. 18 | } 19 | \seealso{ 20 | Other tasks: \code{\link{asn_tasks_add_comment}}, 21 | \code{\link{asn_tasks_add_dependencies}}, 22 | \code{\link{asn_tasks_add_dependents}}, 23 | \code{\link{asn_tasks_add_followers}}, 24 | \code{\link{asn_tasks_add_project}}, 25 | \code{\link{asn_tasks_add_subtask}}, 26 | \code{\link{asn_tasks_add_tag}}, 27 | \code{\link{asn_tasks_create_in_workspace}}, 28 | \code{\link{asn_tasks_create}}, 29 | \code{\link{asn_tasks_delete}}, 30 | \code{\link{asn_tasks_dependencies}}, 31 | \code{\link{asn_tasks_dependents}}, 32 | \code{\link{asn_tasks_find_all}}, 33 | \code{\link{asn_tasks_find_by_id}}, 34 | \code{\link{asn_tasks_find_by_project}}, 35 | \code{\link{asn_tasks_find_by_section}}, 36 | \code{\link{asn_tasks_find_by_tag}}, 37 | \code{\link{asn_tasks_projects}}, 38 | \code{\link{asn_tasks_remove_dependencies}}, 39 | \code{\link{asn_tasks_remove_dependents}}, 40 | \code{\link{asn_tasks_remove_followers}}, 41 | \code{\link{asn_tasks_remove_tag}}, 42 | \code{\link{asn_tasks_search}}, 43 | \code{\link{asn_tasks_stories}}, 44 | \code{\link{asn_tasks_subtasks}}, 45 | \code{\link{asn_tasks_tags}}, 46 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 47 | } 48 | \concept{tasks} 49 | -------------------------------------------------------------------------------- /man/asn_tasks_find_by_section.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_find_by_section} 4 | \alias{asn_tasks_find_by_section} 5 | \title{Board view only: Returns the compact section records for all tasks within the given section.} 6 | \usage{ 7 | asn_tasks_find_by_section(section, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{section}{{Id} The section in which to search for tasks.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | Board view only: Returns the compact section records for all tasks within the given section. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_id}}, 32 | \code{\link{asn_tasks_find_by_project}}, 33 | \code{\link{asn_tasks_find_by_tag}}, 34 | \code{\link{asn_tasks_projects}}, 35 | \code{\link{asn_tasks_remove_dependencies}}, 36 | \code{\link{asn_tasks_remove_dependents}}, 37 | \code{\link{asn_tasks_remove_followers}}, 38 | \code{\link{asn_tasks_remove_project}}, 39 | \code{\link{asn_tasks_remove_tag}}, 40 | \code{\link{asn_tasks_search}}, 41 | \code{\link{asn_tasks_stories}}, 42 | \code{\link{asn_tasks_subtasks}}, 43 | \code{\link{asn_tasks_tags}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /man/asn_tasks_delete.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_delete} 4 | \alias{asn_tasks_delete} 5 | \title{A specific, existing task can be deleted by making a DELETE request on the 6 | URL for that task. Deleted tasks go into the "trash" of the user making 7 | the delete request. Tasks can be recovered from the trash within a period 8 | of 30 days; afterward they are completely removed from the system.} 9 | \usage{ 10 | asn_tasks_delete(task, ..., options = list()) 11 | } 12 | \arguments{ 13 | \item{task}{{Id} The task to delete.} 14 | } 15 | \description{ 16 | Returns an empty data record. 17 | } 18 | \seealso{ 19 | Other tasks: \code{\link{asn_tasks_add_comment}}, 20 | \code{\link{asn_tasks_add_dependencies}}, 21 | \code{\link{asn_tasks_add_dependents}}, 22 | \code{\link{asn_tasks_add_followers}}, 23 | \code{\link{asn_tasks_add_project}}, 24 | \code{\link{asn_tasks_add_subtask}}, 25 | \code{\link{asn_tasks_add_tag}}, 26 | \code{\link{asn_tasks_create_in_workspace}}, 27 | \code{\link{asn_tasks_create}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_id}}, 32 | \code{\link{asn_tasks_find_by_project}}, 33 | \code{\link{asn_tasks_find_by_section}}, 34 | \code{\link{asn_tasks_find_by_tag}}, 35 | \code{\link{asn_tasks_projects}}, 36 | \code{\link{asn_tasks_remove_dependencies}}, 37 | \code{\link{asn_tasks_remove_dependents}}, 38 | \code{\link{asn_tasks_remove_followers}}, 39 | \code{\link{asn_tasks_remove_project}}, 40 | \code{\link{asn_tasks_remove_tag}}, 41 | \code{\link{asn_tasks_search}}, 42 | \code{\link{asn_tasks_stories}}, 43 | \code{\link{asn_tasks_subtasks}}, 44 | \code{\link{asn_tasks_tags}}, 45 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 46 | } 47 | \concept{tasks} 48 | -------------------------------------------------------------------------------- /man/asn_tasks_add_comment.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_add_comment} 4 | \alias{asn_tasks_add_comment} 5 | \title{Adds a comment to a task. The comment will be authored by the 6 | currently authenticated user, and timestamped when the server receives 7 | the request.} 8 | \usage{ 9 | asn_tasks_add_comment(task, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{task}{{Id} Globally unique identifier for the task.#'} 13 | 14 | \item{...}{{Object} Data for the request 15 | text : {String} The plain text of the comment to add.} 16 | } 17 | \description{ 18 | Returns the full record for the new story added to the task. 19 | } 20 | \seealso{ 21 | Other tasks: \code{\link{asn_tasks_add_dependencies}}, 22 | \code{\link{asn_tasks_add_dependents}}, 23 | \code{\link{asn_tasks_add_followers}}, 24 | \code{\link{asn_tasks_add_project}}, 25 | \code{\link{asn_tasks_add_subtask}}, 26 | \code{\link{asn_tasks_add_tag}}, 27 | \code{\link{asn_tasks_create_in_workspace}}, 28 | \code{\link{asn_tasks_create}}, 29 | \code{\link{asn_tasks_delete}}, 30 | \code{\link{asn_tasks_dependencies}}, 31 | \code{\link{asn_tasks_dependents}}, 32 | \code{\link{asn_tasks_find_all}}, 33 | \code{\link{asn_tasks_find_by_id}}, 34 | \code{\link{asn_tasks_find_by_project}}, 35 | \code{\link{asn_tasks_find_by_section}}, 36 | \code{\link{asn_tasks_find_by_tag}}, 37 | \code{\link{asn_tasks_projects}}, 38 | \code{\link{asn_tasks_remove_dependencies}}, 39 | \code{\link{asn_tasks_remove_dependents}}, 40 | \code{\link{asn_tasks_remove_followers}}, 41 | \code{\link{asn_tasks_remove_project}}, 42 | \code{\link{asn_tasks_remove_tag}}, 43 | \code{\link{asn_tasks_search}}, 44 | \code{\link{asn_tasks_stories}}, 45 | \code{\link{asn_tasks_subtasks}}, 46 | \code{\link{asn_tasks_tags}}, 47 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 48 | } 49 | \concept{tasks} 50 | -------------------------------------------------------------------------------- /man/asn_tasks_find_by_project.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_find_by_project} 4 | \alias{asn_tasks_find_by_project} 5 | \title{Returns the compact task records for all tasks within the given project, 6 | ordered by their priority within the project.} 7 | \usage{ 8 | asn_tasks_find_by_project(project_id, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{...}{{Object} Parameters for the request} 12 | 13 | \item{projectId}{{Id} The project in which to search for tasks.#'} 14 | } 15 | \description{ 16 | Returns the compact task records for all tasks within the given project, 17 | ordered by their priority within the project. 18 | } 19 | \seealso{ 20 | Other tasks: \code{\link{asn_tasks_add_comment}}, 21 | \code{\link{asn_tasks_add_dependencies}}, 22 | \code{\link{asn_tasks_add_dependents}}, 23 | \code{\link{asn_tasks_add_followers}}, 24 | \code{\link{asn_tasks_add_project}}, 25 | \code{\link{asn_tasks_add_subtask}}, 26 | \code{\link{asn_tasks_add_tag}}, 27 | \code{\link{asn_tasks_create_in_workspace}}, 28 | \code{\link{asn_tasks_create}}, 29 | \code{\link{asn_tasks_delete}}, 30 | \code{\link{asn_tasks_dependencies}}, 31 | \code{\link{asn_tasks_dependents}}, 32 | \code{\link{asn_tasks_find_all}}, 33 | \code{\link{asn_tasks_find_by_id}}, 34 | \code{\link{asn_tasks_find_by_section}}, 35 | \code{\link{asn_tasks_find_by_tag}}, 36 | \code{\link{asn_tasks_projects}}, 37 | \code{\link{asn_tasks_remove_dependencies}}, 38 | \code{\link{asn_tasks_remove_dependents}}, 39 | \code{\link{asn_tasks_remove_followers}}, 40 | \code{\link{asn_tasks_remove_project}}, 41 | \code{\link{asn_tasks_remove_tag}}, 42 | \code{\link{asn_tasks_search}}, 43 | \code{\link{asn_tasks_stories}}, 44 | \code{\link{asn_tasks_subtasks}}, 45 | \code{\link{asn_tasks_tags}}, 46 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 47 | } 48 | \concept{tasks} 49 | -------------------------------------------------------------------------------- /man/asn_projects_add_custom_field_setting.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/projects.R 3 | \name{asn_projects_add_custom_field_setting} 4 | \alias{asn_projects_add_custom_field_setting} 5 | \title{Create a new custom field setting on the project.} 6 | \usage{ 7 | asn_projects_add_custom_field_setting(project, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{project}{{Id} The project to associate the custom field with#'} 11 | 12 | \item{...}{{Object} Data for the request 13 | custom_field : {Id} The id of the custom field to associate with this project. 14 | [is_important] : {Boolean} Whether this field should be considered important to this project. 15 | [insert_before] : {Id} An id of a Custom Field Settings on this project, before which the new Custom Field Settings will be added. 16 | `insert_before` and `insert_after` parameters cannot both be specified. 17 | [insert_after] : {Id} An id of a Custom Field Settings on this project, after which the new Custom Field Settings will be added. 18 | `insert_before` and `insert_after` parameters cannot both be specified.} 19 | } 20 | \description{ 21 | Create a new custom field setting on the project. 22 | } 23 | \seealso{ 24 | Other projects: \code{\link{asn_projects_add_followers}}, 25 | \code{\link{asn_projects_add_members}}, 26 | \code{\link{asn_projects_create_in_team}}, 27 | \code{\link{asn_projects_create_in_workspace}}, 28 | \code{\link{asn_projects_create}}, 29 | \code{\link{asn_projects_delete}}, 30 | \code{\link{asn_projects_find_all}}, 31 | \code{\link{asn_projects_find_by_id}}, 32 | \code{\link{asn_projects_find_by_team}}, 33 | \code{\link{asn_projects_find_by_workspace}}, 34 | \code{\link{asn_projects_remove_custom_field_setting}}, 35 | \code{\link{asn_projects_remove_followers}}, 36 | \code{\link{asn_projects_remove_members}}, 37 | \code{\link{asn_projects_tasks}}, 38 | \code{\link{asn_projects_update}}, 39 | \code{\link{asn_projects}} 40 | } 41 | \concept{projects} 42 | -------------------------------------------------------------------------------- /man/asn_tasks_add_dependents.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_add_dependents} 4 | \alias{asn_tasks_add_dependents} 5 | \title{Marks a set of tasks as dependents of this task, if they are not already 6 | dependents. *A task can have at most 30 dependents.*} 7 | \usage{ 8 | asn_tasks_add_dependents(task, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{task}{{Id} The task to add dependents to.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | dependents : {Array} An array of task IDs that should depend on this task.} 15 | } 16 | \description{ 17 | Marks a set of tasks as dependents of this task, if they are not already 18 | dependents. *A task can have at most 30 dependents.* 19 | } 20 | \seealso{ 21 | Other tasks: \code{\link{asn_tasks_add_comment}}, 22 | \code{\link{asn_tasks_add_dependencies}}, 23 | \code{\link{asn_tasks_add_followers}}, 24 | \code{\link{asn_tasks_add_project}}, 25 | \code{\link{asn_tasks_add_subtask}}, 26 | \code{\link{asn_tasks_add_tag}}, 27 | \code{\link{asn_tasks_create_in_workspace}}, 28 | \code{\link{asn_tasks_create}}, 29 | \code{\link{asn_tasks_delete}}, 30 | \code{\link{asn_tasks_dependencies}}, 31 | \code{\link{asn_tasks_dependents}}, 32 | \code{\link{asn_tasks_find_all}}, 33 | \code{\link{asn_tasks_find_by_id}}, 34 | \code{\link{asn_tasks_find_by_project}}, 35 | \code{\link{asn_tasks_find_by_section}}, 36 | \code{\link{asn_tasks_find_by_tag}}, 37 | \code{\link{asn_tasks_projects}}, 38 | \code{\link{asn_tasks_remove_dependencies}}, 39 | \code{\link{asn_tasks_remove_dependents}}, 40 | \code{\link{asn_tasks_remove_followers}}, 41 | \code{\link{asn_tasks_remove_project}}, 42 | \code{\link{asn_tasks_remove_tag}}, 43 | \code{\link{asn_tasks_search}}, 44 | \code{\link{asn_tasks_stories}}, 45 | \code{\link{asn_tasks_subtasks}}, 46 | \code{\link{asn_tasks_tags}}, 47 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 48 | } 49 | \concept{tasks} 50 | -------------------------------------------------------------------------------- /man/asn_tasks_add_dependencies.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_add_dependencies} 4 | \alias{asn_tasks_add_dependencies} 5 | \title{Marks a set of tasks as dependencies of this task, if they are not 6 | already dependencies. *A task can have at most 15 dependencies.*} 7 | \usage{ 8 | asn_tasks_add_dependencies(task, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{task}{{Id} The task to add dependencies to.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | dependencies : {Array} An array of task IDs that this task should depend on.} 15 | } 16 | \description{ 17 | Marks a set of tasks as dependencies of this task, if they are not 18 | already dependencies. *A task can have at most 15 dependencies.* 19 | } 20 | \seealso{ 21 | Other tasks: \code{\link{asn_tasks_add_comment}}, 22 | \code{\link{asn_tasks_add_dependents}}, 23 | \code{\link{asn_tasks_add_followers}}, 24 | \code{\link{asn_tasks_add_project}}, 25 | \code{\link{asn_tasks_add_subtask}}, 26 | \code{\link{asn_tasks_add_tag}}, 27 | \code{\link{asn_tasks_create_in_workspace}}, 28 | \code{\link{asn_tasks_create}}, 29 | \code{\link{asn_tasks_delete}}, 30 | \code{\link{asn_tasks_dependencies}}, 31 | \code{\link{asn_tasks_dependents}}, 32 | \code{\link{asn_tasks_find_all}}, 33 | \code{\link{asn_tasks_find_by_id}}, 34 | \code{\link{asn_tasks_find_by_project}}, 35 | \code{\link{asn_tasks_find_by_section}}, 36 | \code{\link{asn_tasks_find_by_tag}}, 37 | \code{\link{asn_tasks_projects}}, 38 | \code{\link{asn_tasks_remove_dependencies}}, 39 | \code{\link{asn_tasks_remove_dependents}}, 40 | \code{\link{asn_tasks_remove_followers}}, 41 | \code{\link{asn_tasks_remove_project}}, 42 | \code{\link{asn_tasks_remove_tag}}, 43 | \code{\link{asn_tasks_search}}, 44 | \code{\link{asn_tasks_stories}}, 45 | \code{\link{asn_tasks_subtasks}}, 46 | \code{\link{asn_tasks_tags}}, 47 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 48 | } 49 | \concept{tasks} 50 | -------------------------------------------------------------------------------- /man/asn_tasks_add_followers.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_add_followers} 4 | \alias{asn_tasks_add_followers} 5 | \title{Adds each of the specified followers to the task, if they are not already 6 | following. Returns the complete, updated record for the affected task.} 7 | \usage{ 8 | asn_tasks_add_followers(task, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{task}{{Id} The task to add followers to.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | followers : {Array} An array of followers to add to the task.} 15 | } 16 | \description{ 17 | Adds each of the specified followers to the task, if they are not already 18 | following. Returns the complete, updated record for the affected task. 19 | } 20 | \seealso{ 21 | Other tasks: \code{\link{asn_tasks_add_comment}}, 22 | \code{\link{asn_tasks_add_dependencies}}, 23 | \code{\link{asn_tasks_add_dependents}}, 24 | \code{\link{asn_tasks_add_project}}, 25 | \code{\link{asn_tasks_add_subtask}}, 26 | \code{\link{asn_tasks_add_tag}}, 27 | \code{\link{asn_tasks_create_in_workspace}}, 28 | \code{\link{asn_tasks_create}}, 29 | \code{\link{asn_tasks_delete}}, 30 | \code{\link{asn_tasks_dependencies}}, 31 | \code{\link{asn_tasks_dependents}}, 32 | \code{\link{asn_tasks_find_all}}, 33 | \code{\link{asn_tasks_find_by_id}}, 34 | \code{\link{asn_tasks_find_by_project}}, 35 | \code{\link{asn_tasks_find_by_section}}, 36 | \code{\link{asn_tasks_find_by_tag}}, 37 | \code{\link{asn_tasks_projects}}, 38 | \code{\link{asn_tasks_remove_dependencies}}, 39 | \code{\link{asn_tasks_remove_dependents}}, 40 | \code{\link{asn_tasks_remove_followers}}, 41 | \code{\link{asn_tasks_remove_project}}, 42 | \code{\link{asn_tasks_remove_tag}}, 43 | \code{\link{asn_tasks_search}}, 44 | \code{\link{asn_tasks_stories}}, 45 | \code{\link{asn_tasks_subtasks}}, 46 | \code{\link{asn_tasks_tags}}, 47 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 48 | } 49 | \concept{tasks} 50 | -------------------------------------------------------------------------------- /man/asn_tasks_remove_followers.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_remove_followers} 4 | \alias{asn_tasks_remove_followers} 5 | \title{Removes each of the specified followers from the task if they are 6 | following. Returns the complete, updated record for the affected task.} 7 | \usage{ 8 | asn_tasks_remove_followers(task, ..., options = list()) 9 | } 10 | \arguments{ 11 | \item{task}{{Id} The task to remove followers from.#'} 12 | 13 | \item{...}{{Object} Data for the request 14 | followers : {Array} An array of followers to remove from the task.} 15 | } 16 | \description{ 17 | Removes each of the specified followers from the task if they are 18 | following. Returns the complete, updated record for the affected task. 19 | } 20 | \seealso{ 21 | Other tasks: \code{\link{asn_tasks_add_comment}}, 22 | \code{\link{asn_tasks_add_dependencies}}, 23 | \code{\link{asn_tasks_add_dependents}}, 24 | \code{\link{asn_tasks_add_followers}}, 25 | \code{\link{asn_tasks_add_project}}, 26 | \code{\link{asn_tasks_add_subtask}}, 27 | \code{\link{asn_tasks_add_tag}}, 28 | \code{\link{asn_tasks_create_in_workspace}}, 29 | \code{\link{asn_tasks_create}}, 30 | \code{\link{asn_tasks_delete}}, 31 | \code{\link{asn_tasks_dependencies}}, 32 | \code{\link{asn_tasks_dependents}}, 33 | \code{\link{asn_tasks_find_all}}, 34 | \code{\link{asn_tasks_find_by_id}}, 35 | \code{\link{asn_tasks_find_by_project}}, 36 | \code{\link{asn_tasks_find_by_section}}, 37 | \code{\link{asn_tasks_find_by_tag}}, 38 | \code{\link{asn_tasks_projects}}, 39 | \code{\link{asn_tasks_remove_dependencies}}, 40 | \code{\link{asn_tasks_remove_dependents}}, 41 | \code{\link{asn_tasks_remove_project}}, 42 | \code{\link{asn_tasks_remove_tag}}, 43 | \code{\link{asn_tasks_search}}, 44 | \code{\link{asn_tasks_stories}}, 45 | \code{\link{asn_tasks_subtasks}}, 46 | \code{\link{asn_tasks_tags}}, 47 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 48 | } 49 | \concept{tasks} 50 | -------------------------------------------------------------------------------- /man/asn_tasks_update.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_update} 4 | \alias{asn_tasks_update} 5 | \title{A specific, existing task can be updated by making a PUT request on the 6 | URL for that task. Only the fields provided in the `data` block will be 7 | updated; any unspecified fields will remain unchanged.} 8 | \usage{ 9 | asn_tasks_update(task, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{task}{{Id} The task to update.#'} 13 | 14 | \item{...}{{Object} Data for the request} 15 | } 16 | \description{ 17 | When using this method, it is best to specify only those fields you wish 18 | to change, or else you may overwrite changes made by another user since 19 | you last retrieved the task. 20 | } 21 | \details{ 22 | Returns the complete updated task record. 23 | } 24 | \seealso{ 25 | Other tasks: \code{\link{asn_tasks_add_comment}}, 26 | \code{\link{asn_tasks_add_dependencies}}, 27 | \code{\link{asn_tasks_add_dependents}}, 28 | \code{\link{asn_tasks_add_followers}}, 29 | \code{\link{asn_tasks_add_project}}, 30 | \code{\link{asn_tasks_add_subtask}}, 31 | \code{\link{asn_tasks_add_tag}}, 32 | \code{\link{asn_tasks_create_in_workspace}}, 33 | \code{\link{asn_tasks_create}}, 34 | \code{\link{asn_tasks_delete}}, 35 | \code{\link{asn_tasks_dependencies}}, 36 | \code{\link{asn_tasks_dependents}}, 37 | \code{\link{asn_tasks_find_all}}, 38 | \code{\link{asn_tasks_find_by_id}}, 39 | \code{\link{asn_tasks_find_by_project}}, 40 | \code{\link{asn_tasks_find_by_section}}, 41 | \code{\link{asn_tasks_find_by_tag}}, 42 | \code{\link{asn_tasks_projects}}, 43 | \code{\link{asn_tasks_remove_dependencies}}, 44 | \code{\link{asn_tasks_remove_dependents}}, 45 | \code{\link{asn_tasks_remove_followers}}, 46 | \code{\link{asn_tasks_remove_project}}, 47 | \code{\link{asn_tasks_remove_tag}}, 48 | \code{\link{asn_tasks_search}}, 49 | \code{\link{asn_tasks_stories}}, 50 | \code{\link{asn_tasks_subtasks}}, 51 | \code{\link{asn_tasks_tags}}, \code{\link{asn_tasks}} 52 | } 53 | \concept{tasks} 54 | -------------------------------------------------------------------------------- /man/asn_tasks_create_in_workspace.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_create_in_workspace} 4 | \alias{asn_tasks_create_in_workspace} 5 | \title{Creating a new task is as easy as POSTing to the `/tasks` endpoint 6 | with a data block containing the fields you'd like to set on the task. 7 | Any unspecified fields will take on default values.} 8 | \usage{ 9 | asn_tasks_create_in_workspace(workspace, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{workspace}{{Id} The workspace to create a task in.#'} 13 | 14 | \item{...}{{Object} Data for the request} 15 | } 16 | \description{ 17 | Every task is required to be created in a specific workspace, and this 18 | workspace cannot be changed once set. The workspace need not be set 19 | explicitly if you specify a `project` or a `parent` task instead. 20 | } 21 | \seealso{ 22 | Other tasks: \code{\link{asn_tasks_add_comment}}, 23 | \code{\link{asn_tasks_add_dependencies}}, 24 | \code{\link{asn_tasks_add_dependents}}, 25 | \code{\link{asn_tasks_add_followers}}, 26 | \code{\link{asn_tasks_add_project}}, 27 | \code{\link{asn_tasks_add_subtask}}, 28 | \code{\link{asn_tasks_add_tag}}, 29 | \code{\link{asn_tasks_create}}, 30 | \code{\link{asn_tasks_delete}}, 31 | \code{\link{asn_tasks_dependencies}}, 32 | \code{\link{asn_tasks_dependents}}, 33 | \code{\link{asn_tasks_find_all}}, 34 | \code{\link{asn_tasks_find_by_id}}, 35 | \code{\link{asn_tasks_find_by_project}}, 36 | \code{\link{asn_tasks_find_by_section}}, 37 | \code{\link{asn_tasks_find_by_tag}}, 38 | \code{\link{asn_tasks_projects}}, 39 | \code{\link{asn_tasks_remove_dependencies}}, 40 | \code{\link{asn_tasks_remove_dependents}}, 41 | \code{\link{asn_tasks_remove_followers}}, 42 | \code{\link{asn_tasks_remove_project}}, 43 | \code{\link{asn_tasks_remove_tag}}, 44 | \code{\link{asn_tasks_search}}, 45 | \code{\link{asn_tasks_stories}}, 46 | \code{\link{asn_tasks_subtasks}}, 47 | \code{\link{asn_tasks_tags}}, 48 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 49 | } 50 | \concept{tasks} 51 | -------------------------------------------------------------------------------- /R/organization_exports.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' OrganizationExports 3 | #' 4 | #' 5 | #' An _organization_export_ object represents a request to export the complete data of an Organization 6 | #' in JSON format. 7 | #' 8 | #' To export an Organization using this API: 9 | #' 10 | #' * Create an `organization_export` [request](#create) and store the id that is returned.\ 11 | #' * Request the `organization_export` every few minutes, until the `state` field contains 'finished'.\ 12 | #' * Download the file located at the URL in the `download_url` field. 13 | #' 14 | #' Exports can take a long time, from several minutes to a few hours for large Organizations. 15 | #' 16 | #' **Note:** These endpoints are only available to [Service Accounts](/guide/help/premium/service-accounts) 17 | #' of an [Enterprise](/enterprise) Organization. 18 | #' @name asn_organization_exports 19 | #' @rdname asn_organization_exports 20 | #' @family organization_exports 21 | #' @seealso \link{https://asana.com/developers/api-reference/organization_exports} 22 | NULL 23 | 24 | #' Returns details of a previously-requested Organization export. 25 | #' 26 | #' @param organization_export {Id} Globally unique identifier for the Organization export.#' 27 | #' @param ... {Object} Parameters for the request 28 | #' @export 29 | #' @family organization_exports 30 | asn_organization_exports_find_by_id = function(organization_export, ..., options = list()){ 31 | path = sprintf("/organization_exports/%s", organization_export) 32 | asn_get(endpoint = path, ..., options = options) 33 | } 34 | 35 | 36 | #' This method creates a request to export an Organization. Asana will complete the export at some 37 | #' point after you create the request. 38 | #' 39 | #' @param ... {Object} Data for the request 40 | #' organization : {Id} Globally unique identifier for the workspace or organization. 41 | #' @export 42 | #' @family organization_exports 43 | asn_organization_exports_create = function(..., options = list()){ 44 | path = "/organization_exports" 45 | asn_post(endpoint = path, ..., options = options) 46 | } 47 | 48 | 49 | -------------------------------------------------------------------------------- /man/asn_tasks_create.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_create} 4 | \alias{asn_tasks_create} 5 | \title{Creating a new task is as easy as POSTing to the `/tasks` endpoint 6 | with a data block containing the fields you'd like to set on the task. 7 | Any unspecified fields will take on default values.} 8 | \usage{ 9 | asn_tasks_create(..., options = list()) 10 | } 11 | \arguments{ 12 | \item{...}{{Object} Data for the request 13 | [workspace] : {Id} The workspace to create a task in.} 14 | } 15 | \description{ 16 | Every task is required to be created in a specific workspace, and this 17 | workspace cannot be changed once set. The workspace need not be set 18 | explicitly if you specify `projects` or a `parent` task instead. 19 | } 20 | \details{ 21 | `projects` can be a comma separated list of projects, or just a single 22 | project the task should belong to. 23 | } 24 | \seealso{ 25 | Other tasks: \code{\link{asn_tasks_add_comment}}, 26 | \code{\link{asn_tasks_add_dependencies}}, 27 | \code{\link{asn_tasks_add_dependents}}, 28 | \code{\link{asn_tasks_add_followers}}, 29 | \code{\link{asn_tasks_add_project}}, 30 | \code{\link{asn_tasks_add_subtask}}, 31 | \code{\link{asn_tasks_add_tag}}, 32 | \code{\link{asn_tasks_create_in_workspace}}, 33 | \code{\link{asn_tasks_delete}}, 34 | \code{\link{asn_tasks_dependencies}}, 35 | \code{\link{asn_tasks_dependents}}, 36 | \code{\link{asn_tasks_find_all}}, 37 | \code{\link{asn_tasks_find_by_id}}, 38 | \code{\link{asn_tasks_find_by_project}}, 39 | \code{\link{asn_tasks_find_by_section}}, 40 | \code{\link{asn_tasks_find_by_tag}}, 41 | \code{\link{asn_tasks_projects}}, 42 | \code{\link{asn_tasks_remove_dependencies}}, 43 | \code{\link{asn_tasks_remove_dependents}}, 44 | \code{\link{asn_tasks_remove_followers}}, 45 | \code{\link{asn_tasks_remove_project}}, 46 | \code{\link{asn_tasks_remove_tag}}, 47 | \code{\link{asn_tasks_search}}, 48 | \code{\link{asn_tasks_stories}}, 49 | \code{\link{asn_tasks_subtasks}}, 50 | \code{\link{asn_tasks_tags}}, 51 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 52 | } 53 | \concept{tasks} 54 | -------------------------------------------------------------------------------- /man/asn_workspaces_typeahead.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/workspaces.R 3 | \name{asn_workspaces_typeahead} 4 | \alias{asn_workspaces_typeahead} 5 | \title{Retrieves objects in the workspace based on an auto-completion/typeahead 6 | search algorithm. This feature is meant to provide results quickly, so do 7 | not rely on this API to provide extremely accurate search results. The 8 | result set is limited to a single page of results with a maximum size, 9 | so you won't be able to fetch large numbers of results.} 10 | \usage{ 11 | asn_workspaces_typeahead(workspace, ..., options = list()) 12 | } 13 | \arguments{ 14 | \item{workspace}{{Id} The workspace to fetch objects from.#'} 15 | 16 | \item{...}{{Object} Parameters for the request 17 | type : {Enum} The type of values the typeahead should return. You can choose from 18 | one of the following: custom_field, project, tag, task, and user. 19 | Note that unlike in the names of endpoints, the types listed here are 20 | in singular form (e.g. `task`). Using multiple types is not yet supported. 21 | [query] : {String} The string that will be used to search for relevant objects. If an 22 | empty string is passed in, the API will currently return an empty 23 | result set. 24 | [count] : {Number} The number of results to return. The default is `20` if this 25 | parameter is omitted, with a minimum of `1` and a maximum of `100`. 26 | If there are fewer results found than requested, all will be returned.} 27 | } 28 | \description{ 29 | Retrieves objects in the workspace based on an auto-completion/typeahead 30 | search algorithm. This feature is meant to provide results quickly, so do 31 | not rely on this API to provide extremely accurate search results. The 32 | result set is limited to a single page of results with a maximum size, 33 | so you won't be able to fetch large numbers of results. 34 | } 35 | \seealso{ 36 | Other workspaces: \code{\link{asn_workspaces_add_user}}, 37 | \code{\link{asn_workspaces_find_all}}, 38 | \code{\link{asn_workspaces_find_by_id}}, 39 | \code{\link{asn_workspaces_remove_user}}, 40 | \code{\link{asn_workspaces_update}}, 41 | \code{\link{asn_workspaces}} 42 | } 43 | \concept{workspaces} 44 | -------------------------------------------------------------------------------- /man/asn_webhooks.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/webhooks.R 3 | \name{asn_webhooks} 4 | \alias{asn_webhooks} 5 | \title{Webhooks} 6 | \description{ 7 | Webhooks allow an application to be notified of changes. This is in addition 8 | to the ability to fetch those changes directly as 9 | [Events](/developers/api-reference/events) - in fact, Webhooks are just a way 10 | to receive Events via HTTP POST at the time they occur instead of polling for 11 | them. For services accessible via HTTP this is often vastly more convenient, 12 | and if events are not too frequent can be significantly more efficient. 13 | 14 | In both cases, however, changes are represented as Event objects - refer to 15 | the [Events documentation](/developers/api-reference/events) for more 16 | information on what data these events contain. 17 | 18 | **NOTE:** While Webhooks send arrays of Event objects to their target, the 19 | Event objects themselves contain *only IDs*, rather than the actual resource 20 | they are referencing. So while a normal event you receive via GET /events 21 | would look like this: 22 | 23 | {\ 24 | "resource": {\ 25 | "id": 1337,\ 26 | "name": "My Task"\ 27 | },\ 28 | "parent": null,\ 29 | "created_at": "2013-08-21T18:20:37.972Z",\ 30 | "user": {\ 31 | "id": 1123,\ 32 | "name": "Tom Bizarro"\ 33 | },\ 34 | "action": "changed",\ 35 | "type": "task"\ 36 | } 37 | 38 | In a Webhook payload you would instead receive this: 39 | 40 | {\ 41 | "resource": 1337,\ 42 | "parent": null,\ 43 | "created_at": "2013-08-21T18:20:37.972Z",\ 44 | "user": 1123,\ 45 | "action": "changed",\ 46 | "type": "task"\ 47 | } 48 | 49 | Webhooks themselves contain only the information necessary to deliver the 50 | events to the desired target as they are generated. 51 | } 52 | \seealso{ 53 | \link{https://asana.com/developers/api-reference/webhooks} 54 | 55 | Other webhooks: \code{\link{asn_webhooks_create}}, 56 | \code{\link{asn_webhooks_delete_by_id}}, 57 | \code{\link{asn_webhooks_get_all}}, 58 | \code{\link{asn_webhooks_get_by_id}} 59 | } 60 | \concept{webhooks} 61 | -------------------------------------------------------------------------------- /man/asn_tasks_search.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_search} 4 | \alias{asn_tasks_search} 5 | \title{The search endpoint allows you to build complex queries to find and fetch exactly the data you need from Asana. For a more comprehensive description of all the query parameters and limitations of this endpoint, see our [long-form documentation](/developers/documentation/getting-started/search-api) for this feature.} 6 | \usage{ 7 | asn_tasks_search(workspace, ..., options = list()) 8 | } 9 | \arguments{ 10 | \item{workspace}{{Id} The workspace or organization in which to search for tasks.#'} 11 | 12 | \item{...}{{Object} Parameters for the request} 13 | } 14 | \description{ 15 | The search endpoint allows you to build complex queries to find and fetch exactly the data you need from Asana. For a more comprehensive description of all the query parameters and limitations of this endpoint, see our [long-form documentation](/developers/documentation/getting-started/search-api) for this feature. 16 | } 17 | \seealso{ 18 | Other tasks: \code{\link{asn_tasks_add_comment}}, 19 | \code{\link{asn_tasks_add_dependencies}}, 20 | \code{\link{asn_tasks_add_dependents}}, 21 | \code{\link{asn_tasks_add_followers}}, 22 | \code{\link{asn_tasks_add_project}}, 23 | \code{\link{asn_tasks_add_subtask}}, 24 | \code{\link{asn_tasks_add_tag}}, 25 | \code{\link{asn_tasks_create_in_workspace}}, 26 | \code{\link{asn_tasks_create}}, 27 | \code{\link{asn_tasks_delete}}, 28 | \code{\link{asn_tasks_dependencies}}, 29 | \code{\link{asn_tasks_dependents}}, 30 | \code{\link{asn_tasks_find_all}}, 31 | \code{\link{asn_tasks_find_by_id}}, 32 | \code{\link{asn_tasks_find_by_project}}, 33 | \code{\link{asn_tasks_find_by_section}}, 34 | \code{\link{asn_tasks_find_by_tag}}, 35 | \code{\link{asn_tasks_projects}}, 36 | \code{\link{asn_tasks_remove_dependencies}}, 37 | \code{\link{asn_tasks_remove_dependents}}, 38 | \code{\link{asn_tasks_remove_followers}}, 39 | \code{\link{asn_tasks_remove_project}}, 40 | \code{\link{asn_tasks_remove_tag}}, 41 | \code{\link{asn_tasks_stories}}, 42 | \code{\link{asn_tasks_subtasks}}, 43 | \code{\link{asn_tasks_tags}}, 44 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 45 | } 46 | \concept{tasks} 47 | -------------------------------------------------------------------------------- /man/asn_tasks_find_all.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_find_all} 4 | \alias{asn_tasks_find_all} 5 | \title{Returns the compact task records for some filtered set of tasks. Use one 6 | or more of the parameters provided to filter the tasks returned. You must 7 | specify a `project` or `tag` if you do not specify `assignee` and `workspace`.} 8 | \usage{ 9 | asn_tasks_find_all(..., options = list()) 10 | } 11 | \arguments{ 12 | \item{...}{{Object} Parameters for the request 13 | [assignee] : {String} The assignee to filter tasks on. 14 | [project] : {Id} The project to filter tasks on. 15 | [section] : {Id} The section to filter tasks on. 16 | [workspace] : {Id} The workspace or organization to filter tasks on. 17 | [completed_since] : {String} Only return tasks that are either incomplete or that have been 18 | completed since this time. 19 | [modified_since] : {String} Only return tasks that have been modified since the given time.} 20 | } 21 | \description{ 22 | Returns the compact task records for some filtered set of tasks. Use one 23 | or more of the parameters provided to filter the tasks returned. You must 24 | specify a `project` or `tag` if you do not specify `assignee` and `workspace`. 25 | } 26 | \seealso{ 27 | Other tasks: \code{\link{asn_tasks_add_comment}}, 28 | \code{\link{asn_tasks_add_dependencies}}, 29 | \code{\link{asn_tasks_add_dependents}}, 30 | \code{\link{asn_tasks_add_followers}}, 31 | \code{\link{asn_tasks_add_project}}, 32 | \code{\link{asn_tasks_add_subtask}}, 33 | \code{\link{asn_tasks_add_tag}}, 34 | \code{\link{asn_tasks_create_in_workspace}}, 35 | \code{\link{asn_tasks_create}}, 36 | \code{\link{asn_tasks_delete}}, 37 | \code{\link{asn_tasks_dependencies}}, 38 | \code{\link{asn_tasks_dependents}}, 39 | \code{\link{asn_tasks_find_by_id}}, 40 | \code{\link{asn_tasks_find_by_project}}, 41 | \code{\link{asn_tasks_find_by_section}}, 42 | \code{\link{asn_tasks_find_by_tag}}, 43 | \code{\link{asn_tasks_projects}}, 44 | \code{\link{asn_tasks_remove_dependencies}}, 45 | \code{\link{asn_tasks_remove_dependents}}, 46 | \code{\link{asn_tasks_remove_followers}}, 47 | \code{\link{asn_tasks_remove_project}}, 48 | \code{\link{asn_tasks_remove_tag}}, 49 | \code{\link{asn_tasks_search}}, 50 | \code{\link{asn_tasks_stories}}, 51 | \code{\link{asn_tasks_subtasks}}, 52 | \code{\link{asn_tasks_tags}}, 53 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 54 | } 55 | \concept{tasks} 56 | -------------------------------------------------------------------------------- /R/users.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' Users 3 | #' 4 | #' 5 | #' A _user_ object represents an account in Asana that can be given access to 6 | #' various workspaces, projects, and tasks. 7 | #' 8 | #' Like other objects in the system, users are referred to by numerical IDs. 9 | #' However, the special string identifier `me` can be used anywhere 10 | #' a user ID is accepted, to refer to the current authenticated user. 11 | #' @name asn_users 12 | #' @rdname asn_users 13 | #' @family users 14 | #' @seealso \link{https://asana.com/developers/api-reference/users} 15 | NULL 16 | 17 | #' Returns the full user record for the currently authenticated user. 18 | #' 19 | #' @param ... {Object} Parameters for the request 20 | #' @export 21 | #' @family users 22 | asn_users_me = function(..., options = list()){ 23 | path = "/users/me" 24 | asn_get(endpoint = path, ..., options = options) 25 | } 26 | 27 | 28 | #' Returns the full user record for the single user with the provided ID. 29 | #' 30 | #' @param user {String} An identifier for the user. Can be one of an email address, 31 | #' @param the globally unique identifier for the user, or the keyword `me` 32 | #' @param to indicate the current user making the request.#' 33 | #' @param ... {Object} Parameters for the request 34 | #' @export 35 | #' @family users 36 | asn_users_find_by_id = function(user, ..., options = list()){ 37 | path = sprintf("/users/%s", user) 38 | asn_get(endpoint = path, ..., options = options) 39 | } 40 | 41 | 42 | #' Returns the user records for all users in the specified workspace or 43 | #' organization. 44 | #' 45 | #' @param workspace {Id} The workspace in which to get users.#' 46 | #' @param ... {Object} Parameters for the request 47 | #' @export 48 | #' @family users 49 | asn_users_find_by_workspace = function(workspace, ..., options = list()){ 50 | path = sprintf("/workspaces/%s/users", workspace) 51 | asn_get(endpoint = path, ..., options = options) 52 | } 53 | 54 | 55 | #' Returns the user records for all users in all workspaces and organizations 56 | #' accessible to the authenticated user. Accepts an optional workspace ID 57 | #' parameter. 58 | #' 59 | #' @param ... {Object} Parameters for the request 60 | #' [workspace] : {Id} The workspace or organization to filter users on. 61 | #' @export 62 | #' @family users 63 | asn_users_find_all = function(..., options = list()){ 64 | path = "/users" 65 | asn_get(endpoint = path, ..., options = options) 66 | } 67 | 68 | 69 | -------------------------------------------------------------------------------- /man/asn_tasks_add_project.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/tasks.R 3 | \name{asn_tasks_add_project} 4 | \alias{asn_tasks_add_project} 5 | \title{Adds the task to the specified project, in the optional location 6 | specified. If no location arguments are given, the task will be added to 7 | the end of the project.} 8 | \usage{ 9 | asn_tasks_add_project(task, ..., options = list()) 10 | } 11 | \arguments{ 12 | \item{task}{{Id} The task to add to a project.#'} 13 | 14 | \item{...}{{Object} Data for the request 15 | project : {Id} The project to add the task to. 16 | [insert_after] : {Id} A task in the project to insert the task after, or `null` to 17 | insert at the beginning of the list. 18 | [insert_before] : {Id} A task in the project to insert the task before, or `null` to 19 | insert at the end of the list. 20 | [section] : {Id} A section in the project to insert the task into. The task will be 21 | inserted at the bottom of the section.} 22 | } 23 | \description{ 24 | `addProject` can also be used to reorder a task within a project or section that 25 | already contains it. 26 | } 27 | \details{ 28 | At most one of `insert_before`, `insert_after`, or `section` should be 29 | specified. Inserting into a section in an non-order-dependent way can be 30 | done by specifying `section`, otherwise, to insert within a section in a 31 | particular place, specify `insert_before` or `insert_after` and a task 32 | within the section to anchor the position of this task. 33 | 34 | Returns an empty data block. 35 | } 36 | \seealso{ 37 | Other tasks: \code{\link{asn_tasks_add_comment}}, 38 | \code{\link{asn_tasks_add_dependencies}}, 39 | \code{\link{asn_tasks_add_dependents}}, 40 | \code{\link{asn_tasks_add_followers}}, 41 | \code{\link{asn_tasks_add_subtask}}, 42 | \code{\link{asn_tasks_add_tag}}, 43 | \code{\link{asn_tasks_create_in_workspace}}, 44 | \code{\link{asn_tasks_create}}, 45 | \code{\link{asn_tasks_delete}}, 46 | \code{\link{asn_tasks_dependencies}}, 47 | \code{\link{asn_tasks_dependents}}, 48 | \code{\link{asn_tasks_find_all}}, 49 | \code{\link{asn_tasks_find_by_id}}, 50 | \code{\link{asn_tasks_find_by_project}}, 51 | \code{\link{asn_tasks_find_by_section}}, 52 | \code{\link{asn_tasks_find_by_tag}}, 53 | \code{\link{asn_tasks_projects}}, 54 | \code{\link{asn_tasks_remove_dependencies}}, 55 | \code{\link{asn_tasks_remove_dependents}}, 56 | \code{\link{asn_tasks_remove_followers}}, 57 | \code{\link{asn_tasks_remove_project}}, 58 | \code{\link{asn_tasks_remove_tag}}, 59 | \code{\link{asn_tasks_search}}, 60 | \code{\link{asn_tasks_stories}}, 61 | \code{\link{asn_tasks_subtasks}}, 62 | \code{\link{asn_tasks_tags}}, 63 | \code{\link{asn_tasks_update}}, \code{\link{asn_tasks}} 64 | } 65 | \concept{tasks} 66 | -------------------------------------------------------------------------------- /R/project_statuses.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' ProjectStatuses 3 | #' 4 | #' 5 | #' A _project status_ is an update on the progress of a particular project, and is sent out to all project 6 | #' followers when created. These updates include both text describing the update and a color code intended to 7 | #' represent the overall state of the project: "green" for projects that are on track, "yellow" for projects 8 | #' at risk, and "red" for projects that are behind. 9 | #' 10 | #' Project statuses can be created and deleted, but not modified. 11 | #' @name asn_project_statuses 12 | #' @rdname asn_project_statuses 13 | #' @family project_statuses 14 | #' @seealso \link{https://asana.com/developers/api-reference/project_statuses} 15 | NULL 16 | 17 | #' Creates a new status update on the project. 18 | #' 19 | #' Returns the full record of the newly created project status update. 20 | #' 21 | #' @param project {Id} The project on which to create a status update.#' 22 | #' @param ... {Object} Data for the request 23 | #' text : {String} The text of the project status update. 24 | #' color : {String} The color to associate with the status update. Must be one of `"red"`, `"yellow"`, or `"green"`. 25 | #' @export 26 | #' @family project_statuses 27 | asn_project_statuses_create = function(project, ..., options = list()){ 28 | path = sprintf("/projects/%s/project_statuses", project) 29 | asn_post(endpoint = path, ..., options = options) 30 | } 31 | 32 | 33 | #' Returns the compact project status update records for all updates on the project. 34 | #' 35 | #' @param project {Id} The project to find status updates for.#' 36 | #' @param ... {Object} Parameters for the request 37 | #' @export 38 | #' @family project_statuses 39 | asn_project_statuses_find_by_project = function(project, ..., options = list()){ 40 | path = sprintf("/projects/%s/project_statuses", project) 41 | asn_get(endpoint = path, ..., options = options) 42 | } 43 | 44 | 45 | #' Returns the complete record for a single status update. 46 | #' 47 | #' @param project-status {Id} The project status update to get.#' 48 | #' @param ... {Object} Parameters for the request 49 | #' @export 50 | #' @family project_statuses 51 | asn_project_statuses_find_by_id = function(project_status, ..., options = list()){ 52 | path = sprintf("/project_statuses/%s", project_status) 53 | asn_get(endpoint = path, ..., options = options) 54 | } 55 | 56 | 57 | #' Deletes a specific, existing project status update. 58 | #' 59 | #' Returns an empty data record. 60 | #' 61 | #' @param project-status {Id} The project status update to delete. 62 | #' @export 63 | #' @family project_statuses 64 | asn_project_statuses_delete = function(project_status, ..., options = list()){ 65 | path = sprintf("/project_statuses/%s", project_status) 66 | asn_delete(endpoint = path, ..., options = options) 67 | } 68 | 69 | 70 | -------------------------------------------------------------------------------- /R/stories.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' Stories 3 | #' 4 | #' 5 | #' A _story_ represents an activity associated with an object in the Asana 6 | #' system. Stories are generated by the system whenever users take actions such 7 | #' as creating or assigning tasks, or moving tasks between projects. _Comments_ 8 | #' are also a form of user-generated story. 9 | #' 10 | #' Stories are a form of history in the system, and as such they are read-only. 11 | #' Once generated, it is not possible to modify a story. 12 | #' @name asn_stories 13 | #' @rdname asn_stories 14 | #' @family stories 15 | #' @seealso \link{https://asana.com/developers/api-reference/stories} 16 | NULL 17 | 18 | #' Returns the compact records for all stories on the task. 19 | #' 20 | #' @param task {Id} Globally unique identifier for the task.#' 21 | #' @param ... {Object} Parameters for the request 22 | #' @export 23 | #' @family stories 24 | asn_stories_find_by_task = function(task, ..., options = list()){ 25 | path = sprintf("/tasks/%s/stories", task) 26 | asn_get(endpoint = path, ..., options = options) 27 | } 28 | 29 | 30 | #' Returns the full record for a single story. 31 | #' 32 | #' @param story {Id} Globally unique identifier for the story.#' 33 | #' @param ... {Object} Parameters for the request 34 | #' @export 35 | #' @family stories 36 | asn_stories_find_by_id = function(story, ..., options = list()){ 37 | path = sprintf("/stories/%s", story) 38 | asn_get(endpoint = path, ..., options = options) 39 | } 40 | 41 | 42 | #' Adds a comment to a task. The comment will be authored by the 43 | #' currently authenticated user, and timestamped when the server receives 44 | #' the request. 45 | #' 46 | #' Returns the full record for the new story added to the task. 47 | #' 48 | #' @param task {Id} Globally unique identifier for the task.#' 49 | #' @param ... {Object} Data for the request 50 | #' text : {String} The plain text of the comment to add. 51 | #' @export 52 | #' @family stories 53 | asn_stories_create_on_task = function(task, ..., options = list()){ 54 | path = sprintf("/tasks/%s/stories", task) 55 | asn_post(endpoint = path, ..., options = options) 56 | } 57 | 58 | 59 | #' Updates the story and returns the full record for the updated story. 60 | #' Only comment stories can have their text updated, and only comment stories and 61 | #' attachment stories can be pinned. Only one of `text` and `html_text` can be specified. 62 | #' 63 | #' @param story {Id} Globally unique identifier for the story.#' 64 | #' @param ... {Object} Data for the request 65 | #' [text] : {String} The plain text with which to update the comment. 66 | #' [html_text] : {String} The rich text with which to update the comment. 67 | #' [is_pinned] : {Boolean} Whether the story should be pinned on the resource. 68 | #' @export 69 | #' @family stories 70 | asn_stories_update = function(story, ..., options = list()){ 71 | path = sprintf("/stories/%s", story) 72 | asn_put(endpoint = path, ..., options = options) 73 | } 74 | 75 | 76 | #' Deletes a story. A user can only delete stories they have created. Returns an empty data record. 77 | #' 78 | #' @param story {Id} Globally unique identifier for the story. 79 | #' @export 80 | #' @family stories 81 | asn_stories_delete = function(story, ..., options = list()){ 82 | path = sprintf("/stories/%s", story) 83 | asn_delete(endpoint = path, ..., options = options) 84 | } 85 | 86 | 87 | -------------------------------------------------------------------------------- /R/teams.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' Teams 3 | #' 4 | #' 5 | #' A _team_ is used to group related projects and people together within an 6 | #' organization. Each project in an organization is associated with a team. 7 | #' @name asn_teams 8 | #' @rdname asn_teams 9 | #' @family teams 10 | #' @seealso \link{https://asana.com/developers/api-reference/teams} 11 | NULL 12 | 13 | #' Returns the full record for a single team. 14 | #' 15 | #' @param team {Id} Globally unique identifier for the team.#' 16 | #' @param ... {Object} Parameters for the request 17 | #' @export 18 | #' @family teams 19 | asn_teams_find_by_id = function(team, ..., options = list()){ 20 | path = sprintf("/teams/%s", team) 21 | asn_get(endpoint = path, ..., options = options) 22 | } 23 | 24 | 25 | #' Returns the compact records for all teams in the organization visible to 26 | #' the authorized user. 27 | #' 28 | #' @param organization {Id} Globally unique identifier for the workspace or organization.#' 29 | #' @param ... {Object} Parameters for the request 30 | #' @export 31 | #' @family teams 32 | asn_teams_find_by_organization = function(organization, ..., options = list()){ 33 | path = sprintf("/organizations/%s/teams", organization) 34 | asn_get(endpoint = path, ..., options = options) 35 | } 36 | 37 | 38 | #' Returns the compact records for all teams to which user is assigned. 39 | #' 40 | #' @param user {String} An identifier for the user. Can be one of an email address, 41 | #' @param the globally unique identifier for the user, or the keyword `me` 42 | #' @param to indicate the current user making the request.#' 43 | #' @param ... {Object} Parameters for the request 44 | #' [organization] : {Id} The workspace or organization to filter teams on. 45 | #' @export 46 | #' @family teams 47 | asn_teams_find_by_user = function(user, ..., options = list()){ 48 | path = sprintf("/users/%s/teams", user) 49 | asn_get(endpoint = path, ..., options = options) 50 | } 51 | 52 | 53 | #' Returns the compact records for all users that are members of the team. 54 | #' 55 | #' @param team {Id} Globally unique identifier for the team.#' 56 | #' @param ... {Object} Parameters for the request 57 | #' @export 58 | #' @family teams 59 | asn_teams_users = function(team, ..., options = list()){ 60 | path = sprintf("/teams/%s/users", team) 61 | asn_get(endpoint = path, ..., options = options) 62 | } 63 | 64 | 65 | #' The user making this call must be a member of the team in order to add others. 66 | #' The user to add must exist in the same organization as the team in order to be added. 67 | #' The user to add can be referenced by their globally unique user ID or their email address. 68 | #' Returns the full user record for the added user. 69 | #' 70 | #' @param team {Id} Globally unique identifier for the team.#' 71 | #' @param ... {Object} Data for the request 72 | #' user : {String} An identifier for the user. Can be one of an email address, 73 | #' the globally unique identifier for the user, or the keyword `me` 74 | #' to indicate the current user making the request. 75 | #' @export 76 | #' @family teams 77 | asn_teams_add_user = function(team, ..., options = list()){ 78 | path = sprintf("/teams/%s/addUser", team) 79 | asn_post(endpoint = path, ..., options = options) 80 | } 81 | 82 | 83 | #' The user to remove can be referenced by their globally unique user ID or their email address. 84 | #' Removes the user from the specified team. Returns an empty data record. 85 | #' 86 | #' @param team {Id} Globally unique identifier for the team.#' 87 | #' @param ... {Object} Data for the request 88 | #' user : {String} An identifier for the user. Can be one of an email address, 89 | #' the globally unique identifier for the user, or the keyword `me` 90 | #' to indicate the current user making the request. 91 | #' @export 92 | #' @family teams 93 | asn_teams_remove_user = function(team, ..., options = list()){ 94 | path = sprintf("/teams/%s/removeUser", team) 95 | asn_post(endpoint = path, ..., options = options) 96 | } 97 | 98 | 99 | -------------------------------------------------------------------------------- /R/sections.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' Sections 3 | #' 4 | #' 5 | #' A _section_ is a subdivision of a project that groups tasks together. It can 6 | #' either be a header above a list of tasks in a list view or a column in a 7 | #' board view of a project. 8 | #' @name asn_sections 9 | #' @rdname asn_sections 10 | #' @family sections 11 | #' @seealso \link{https://asana.com/developers/api-reference/sections} 12 | NULL 13 | 14 | #' Creates a new section in a project. 15 | #' 16 | #' Returns the full record of the newly created section. 17 | #' 18 | #' @param project {Id} The project to create the section in#' 19 | #' @param ... {Object} Data for the request 20 | #' name : {String} The text to be displayed as the section name. This cannot be an empty string. 21 | #' @export 22 | #' @family sections 23 | asn_sections_create_in_project = function(project, ..., options = list()){ 24 | path = sprintf("/projects/%s/sections", project) 25 | asn_post(endpoint = path, ..., options = options) 26 | } 27 | 28 | 29 | #' Returns the compact records for all sections in the specified project. 30 | #' 31 | #' @param project {Id} The project to get sections from.#' 32 | #' @param ... {Object} Parameters for the request 33 | #' @export 34 | #' @family sections 35 | asn_sections_find_by_project = function(project, ..., options = list()){ 36 | path = sprintf("/projects/%s/sections", project) 37 | asn_get(endpoint = path, ..., options = options) 38 | } 39 | 40 | 41 | #' Returns the complete record for a single section. 42 | #' 43 | #' @param section {Id} The section to get.#' 44 | #' @param ... {Object} Parameters for the request 45 | #' @export 46 | #' @family sections 47 | asn_sections_find_by_id = function(section, ..., options = list()){ 48 | path = sprintf("/sections/%s", section) 49 | asn_get(endpoint = path, ..., options = options) 50 | } 51 | 52 | 53 | #' A specific, existing section can be updated by making a PUT request on 54 | #' the URL for that project. Only the fields provided in the `data` block 55 | #' will be updated; any unspecified fields will remain unchanged. (note that 56 | #' at this time, the only field that can be updated is the `name` field.) 57 | #' 58 | #' When using this method, it is best to specify only those fields you wish 59 | #' to change, or else you may overwrite changes made by another user since 60 | #' you last retrieved the task. 61 | #' 62 | #' Returns the complete updated section record. 63 | #' 64 | #' @param section {Id} The section to update.#' 65 | #' @param ... {Object} Data for the request 66 | #' @export 67 | #' @family sections 68 | asn_sections_update = function(section, ..., options = list()){ 69 | path = sprintf("/sections/%s", section) 70 | asn_put(endpoint = path, ..., options = options) 71 | } 72 | 73 | 74 | #' A specific, existing section can be deleted by making a DELETE request 75 | #' on the URL for that section. 76 | #' 77 | #' Note that sections must be empty to be deleted. 78 | #' 79 | #' The last remaining section in a board view cannot be deleted. 80 | #' 81 | #' Returns an empty data block. 82 | #' 83 | #' @param section {Id} The section to delete. 84 | #' @export 85 | #' @family sections 86 | asn_sections_delete = function(section, ..., options = list()){ 87 | path = sprintf("/sections/%s", section) 88 | asn_delete(endpoint = path, ..., options = options) 89 | } 90 | 91 | 92 | #' Move sections relative to each other in a board view. One of 93 | #' `before_section` or `after_section` is required. 94 | #' 95 | #' Sections cannot be moved between projects. 96 | #' 97 | #' At this point in time, moving sections is not supported in list views, only board views. 98 | #' 99 | #' Returns an empty data block. 100 | #' 101 | #' @param project {Id} The project in which to reorder the given section#' 102 | #' @param ... {Object} Data for the request 103 | #' section : {Id} The section to reorder 104 | #' [before_section] : {Id} Insert the given section immediately before the section specified by this parameter. 105 | #' [after_section] : {Id} Insert the given section immediately after the section specified by this parameter. 106 | #' @export 107 | #' @family sections 108 | asn_sections_insert_in_project = function(project, ..., options = list()){ 109 | path = sprintf("/projects/%s/sections/insert", project) 110 | asn_post(endpoint = path, ..., options = options) 111 | } 112 | 113 | 114 | -------------------------------------------------------------------------------- /NAMESPACE: -------------------------------------------------------------------------------- 1 | # Generated by roxygen2: do not edit by hand 2 | 3 | S3method(as_tibble,asana_api) 4 | S3method(print,asana_api) 5 | export("%>%") 6 | export(asn_attachments_find_by_id) 7 | export(asn_attachments_find_by_task) 8 | export(asn_custom_field_settings_find_by_project) 9 | export(asn_custom_fields_add_enum_option) 10 | export(asn_custom_fields_create) 11 | export(asn_custom_fields_delete) 12 | export(asn_custom_fields_find_by_id) 13 | export(asn_custom_fields_find_by_workspace) 14 | export(asn_custom_fields_reorder_enum_option) 15 | export(asn_custom_fields_update) 16 | export(asn_custom_fields_update_enum_option) 17 | export(asn_get) 18 | export(asn_organization_exports_create) 19 | export(asn_organization_exports_find_by_id) 20 | export(asn_post) 21 | export(asn_project_memberships_get_many) 22 | export(asn_project_memberships_get_single) 23 | export(asn_project_statuses_create) 24 | export(asn_project_statuses_delete) 25 | export(asn_project_statuses_find_by_id) 26 | export(asn_project_statuses_find_by_project) 27 | export(asn_projects_add_custom_field_setting) 28 | export(asn_projects_add_followers) 29 | export(asn_projects_add_members) 30 | export(asn_projects_create) 31 | export(asn_projects_create_in_team) 32 | export(asn_projects_create_in_workspace) 33 | export(asn_projects_delete) 34 | export(asn_projects_find_all) 35 | export(asn_projects_find_by_id) 36 | export(asn_projects_find_by_team) 37 | export(asn_projects_find_by_workspace) 38 | export(asn_projects_remove_custom_field_setting) 39 | export(asn_projects_remove_followers) 40 | export(asn_projects_remove_members) 41 | export(asn_projects_tasks) 42 | export(asn_projects_update) 43 | export(asn_put) 44 | export(asn_sections_create_in_project) 45 | export(asn_sections_delete) 46 | export(asn_sections_find_by_id) 47 | export(asn_sections_find_by_project) 48 | export(asn_sections_insert_in_project) 49 | export(asn_sections_update) 50 | export(asn_stories_create_on_task) 51 | export(asn_stories_delete) 52 | export(asn_stories_find_by_id) 53 | export(asn_stories_find_by_task) 54 | export(asn_stories_update) 55 | export(asn_tags_create) 56 | export(asn_tags_create_in_workspace) 57 | export(asn_tags_delete) 58 | export(asn_tags_find_all) 59 | export(asn_tags_find_by_id) 60 | export(asn_tags_find_by_workspace) 61 | export(asn_tags_get_tasks_with_tag) 62 | export(asn_tags_update) 63 | export(asn_tasks_add_comment) 64 | export(asn_tasks_add_dependencies) 65 | export(asn_tasks_add_dependents) 66 | export(asn_tasks_add_followers) 67 | export(asn_tasks_add_project) 68 | export(asn_tasks_add_subtask) 69 | export(asn_tasks_add_tag) 70 | export(asn_tasks_create) 71 | export(asn_tasks_create_in_workspace) 72 | export(asn_tasks_delete) 73 | export(asn_tasks_dependencies) 74 | export(asn_tasks_dependents) 75 | export(asn_tasks_find_all) 76 | export(asn_tasks_find_by_id) 77 | export(asn_tasks_find_by_project) 78 | export(asn_tasks_find_by_section) 79 | export(asn_tasks_find_by_tag) 80 | export(asn_tasks_projects) 81 | export(asn_tasks_remove_dependencies) 82 | export(asn_tasks_remove_dependents) 83 | export(asn_tasks_remove_followers) 84 | export(asn_tasks_remove_project) 85 | export(asn_tasks_remove_tag) 86 | export(asn_tasks_search) 87 | export(asn_tasks_stories) 88 | export(asn_tasks_subtasks) 89 | export(asn_tasks_tags) 90 | export(asn_tasks_update) 91 | export(asn_teams_add_user) 92 | export(asn_teams_find_by_id) 93 | export(asn_teams_find_by_organization) 94 | export(asn_teams_find_by_user) 95 | export(asn_teams_remove_user) 96 | export(asn_teams_users) 97 | export(asn_users_find_all) 98 | export(asn_users_find_by_id) 99 | export(asn_users_find_by_workspace) 100 | export(asn_users_me) 101 | export(asn_webhooks_create) 102 | export(asn_webhooks_delete_by_id) 103 | export(asn_webhooks_get_all) 104 | export(asn_webhooks_get_by_id) 105 | export(asn_workspaces_add_user) 106 | export(asn_workspaces_find_all) 107 | export(asn_workspaces_find_by_id) 108 | export(asn_workspaces_remove_user) 109 | export(asn_workspaces_typeahead) 110 | export(asn_workspaces_update) 111 | export(get_all_projects) 112 | export(get_all_workspaces) 113 | export(get_workspace_projects) 114 | export(store_access_token) 115 | import(httr) 116 | importFrom(assertive.types,assert_is_a_bool) 117 | importFrom(assertive.types,is_a_string) 118 | importFrom(dplyr,as_tibble) 119 | importFrom(httr,GET) 120 | importFrom(httr,add_headers) 121 | importFrom(httr,content) 122 | importFrom(httr,stop_for_status) 123 | importFrom(jsonlite,flatten) 124 | importFrom(jsonlite,fromJSON) 125 | importFrom(magrittr,"%>%") 126 | importFrom(purrr,map) 127 | importFrom(purrr,possibly) 128 | -------------------------------------------------------------------------------- /R/webhooks.R: -------------------------------------------------------------------------------- 1 | # DO NOT EDIT MANUALLY - This file is autogenerated from Asana API Specs 2 | #' Webhooks 3 | #' 4 | #' 5 | #' Webhooks allow an application to be notified of changes. This is in addition 6 | #' to the ability to fetch those changes directly as 7 | #' [Events](/developers/api-reference/events) - in fact, Webhooks are just a way 8 | #' to receive Events via HTTP POST at the time they occur instead of polling for 9 | #' them. For services accessible via HTTP this is often vastly more convenient, 10 | #' and if events are not too frequent can be significantly more efficient. 11 | #' 12 | #' In both cases, however, changes are represented as Event objects - refer to 13 | #' the [Events documentation](/developers/api-reference/events) for more 14 | #' information on what data these events contain. 15 | #' 16 | #' **NOTE:** While Webhooks send arrays of Event objects to their target, the 17 | #' Event objects themselves contain *only IDs*, rather than the actual resource 18 | #' they are referencing. So while a normal event you receive via GET /events 19 | #' would look like this: 20 | #' 21 | #' {\ 22 | #' "resource": {\ 23 | #' "id": 1337,\ 24 | #' "name": "My Task"\ 25 | #' },\ 26 | #' "parent": null,\ 27 | #' "created_at": "2013-08-21T18:20:37.972Z",\ 28 | #' "user": {\ 29 | #' "id": 1123,\ 30 | #' "name": "Tom Bizarro"\ 31 | #' },\ 32 | #' "action": "changed",\ 33 | #' "type": "task"\ 34 | #' } 35 | #' 36 | #' In a Webhook payload you would instead receive this: 37 | #' 38 | #' {\ 39 | #' "resource": 1337,\ 40 | #' "parent": null,\ 41 | #' "created_at": "2013-08-21T18:20:37.972Z",\ 42 | #' "user": 1123,\ 43 | #' "action": "changed",\ 44 | #' "type": "task"\ 45 | #' } 46 | #' 47 | #' Webhooks themselves contain only the information necessary to deliver the 48 | #' events to the desired target as they are generated. 49 | #' @name asn_webhooks 50 | #' @rdname asn_webhooks 51 | #' @family webhooks 52 | #' @seealso \link{https://asana.com/developers/api-reference/webhooks} 53 | NULL 54 | 55 | #' Establishing a webhook is a two-part process. First, a simple HTTP POST 56 | #' similar to any other resource creation. Since you could have multiple 57 | #' webhooks we recommend specifying a unique local id for each target. 58 | #' 59 | #' Next comes the confirmation handshake. When a webhook is created, we will 60 | #' send a test POST to the `target` with an `X-Hook-Secret` header as 61 | #' described in the 62 | #' [Resthooks Security documentation](http://resthooks.org/docs/security/). 63 | #' The target must respond with a `200 OK` and a matching `X-Hook-Secret` 64 | #' header to confirm that this webhook subscription is indeed expected. 65 | #' 66 | #' If you do not acknowledge the webhook's confirmation handshake it will 67 | #' fail to setup, and you will receive an error in response to your attempt 68 | #' to create it. This means you need to be able to receive and complete the 69 | #' webhook *while* the POST request is in-flight. 70 | #' 71 | #' @param resource {Id} A resource ID to subscribe to. The resource can be a task or project.#' 72 | #' @param target {String} The URL to receive the HTTP POST.#' 73 | #' @param ... {Object} Data for the request 74 | #' @export 75 | #' @family webhooks 76 | asn_webhooks_create = function(..., options = list()){ 77 | path = "/webhooks" 78 | asn_post(endpoint = path, ..., options = options) 79 | } 80 | 81 | 82 | #' Returns the compact representation of all webhooks your app has 83 | #' registered for the authenticated user in the given workspace. 84 | #' 85 | #' @param workspace {Id} The workspace to query for webhooks in.#' 86 | #' @param ... {Object} Parameters for the request 87 | #' [resource] : {Id} Only return webhooks for the given resource. 88 | #' @export 89 | #' @family webhooks 90 | asn_webhooks_get_all = function(..., options = list()){ 91 | path = "/webhooks" 92 | asn_get(endpoint = path, ..., options = options) 93 | } 94 | 95 | 96 | #' Returns the full record for the given webhook. 97 | #' 98 | #' @param webhook {Id} The webhook to get.#' 99 | #' @param ... {Object} Parameters for the request 100 | #' @export 101 | #' @family webhooks 102 | asn_webhooks_get_by_id = function(webhook, ..., options = list()){ 103 | path = sprintf("/webhooks/%s", webhook) 104 | asn_get(endpoint = path, ..., options = options) 105 | } 106 | 107 | 108 | #' This method permanently removes a webhook. Note that it may be possible 109 | #' to receive a request that was already in flight after deleting the 110 | #' webhook, but no further requests will be issued. 111 | #' 112 | #' @param webhook {Id} The webhook to delete. 113 | #' @export 114 | #' @family webhooks 115 | asn_webhooks_delete_by_id = function(webhook, ..., options = list()){ 116 | path = sprintf("/webhooks/%s", webhook) 117 | asn_delete(endpoint = path, ..., options = options) 118 | } 119 | 120 | 121 | --------------------------------------------------------------------------------