redcap_read_oneshot {REDCapR} | R Documentation |
Read/Export records from a REDCap project
Description
This function uses REDCap's API to select and return data.
Usage
redcap_read_oneshot(
redcap_uri,
token,
records = NULL,
records_collapsed = "",
fields = NULL,
fields_collapsed = "",
forms = NULL,
forms_collapsed = "",
events = NULL,
events_collapsed = "",
raw_or_label = "raw",
raw_or_label_headers = "raw",
export_checkbox_label = FALSE,
export_survey_fields = FALSE,
export_data_access_groups = FALSE,
filter_logic = "",
datetime_range_begin = as.POSIXct(NA),
datetime_range_end = as.POSIXct(NA),
col_types = NULL,
guess_type = TRUE,
guess_max = 1000L,
http_response_encoding = "UTF-8",
locale = readr::default_locale(),
verbose = TRUE,
config_options = NULL
)
Arguments
redcap_uri |
The URI (uniform resource identifier) of the REDCap project. Required. |
token |
The user-specific string that serves as the password for a project. Required. |
records |
An array, where each element corresponds to the ID of a desired record. Optional. |
records_collapsed |
A single string, where the desired ID values are separated by commas. Optional. |
fields |
An array, where each element corresponds to a desired project field. Optional. |
fields_collapsed |
A single string, where the desired field names are separated by commas. Optional. |
forms |
An array, where each element corresponds to a desired project form. Optional. |
forms_collapsed |
A single string, where the desired form names are separated by commas. Optional. |
events |
An array, where each element corresponds to a desired project event. Optional. |
events_collapsed |
A single string, where the desired event names are separated by commas. Optional. |
raw_or_label |
A string (either |
raw_or_label_headers |
A string (either |
export_checkbox_label |
specifies the format of checkbox field values
specifically when exporting the data as labels. If |
export_survey_fields |
A boolean that specifies whether to export the survey identifier field (e.g., 'redcap_survey_identifier') or survey timestamp fields (e.g., instrument+'_timestamp'). The timestamp outputs reflect the survey's completion time (according to the time and timezone of the REDCap server.) |
export_data_access_groups |
A boolean value that specifies whether or
not to export the |
filter_logic |
String of logic text (e.g., |
datetime_range_begin |
To return only records that have been created or modified after a given datetime, provide a POSIXct value. If not specified, REDCap will assume no begin time. |
datetime_range_end |
To return only records that have been created or modified before a given datetime, provide a POSIXct value. If not specified, REDCap will assume no end time. |
col_types |
A |
guess_type |
A boolean value indicating if all columns should be
returned as character. If false, |
guess_max |
A positive integer passed to |
http_response_encoding |
The encoding value passed to
|
locale |
a |
verbose |
A boolean value indicating if |
config_options |
A list of options to pass to |
Details
The full list of configuration options accepted by the httr
package is
viewable by executing httr::httr_options()
. The httr
package and
documentation is available at https://cran.r-project.org/package=httr.
If you do not pass in this export_data_access_groups
value, it will default
to FALSE
. The following is from the API help page for version 10.5.1:
This flag is only viable if the user whose token is being used to make the
API request is not in a data access group. If the user is in a group,
then this flag will revert to its default value.
Value
Currently, a list is returned with the following elements:
-
data
: An Rbase::data.frame()
of the desired records and columns. -
success
: A boolean value indicating if the operation was apparently successful. -
status_code
: The http status code of the operation. -
outcome_message
: A human readable string indicating the operation's outcome. -
records_collapsed
: The desired records IDs, collapsed into a single string, separated by commas. -
fields_collapsed
: The desired field names, collapsed into a single string, separated by commas. -
filter_logic
: The filter statement passed as an argument. -
elapsed_seconds
: The duration of the function. -
raw_text
: If an operation is NOT successful, the text returned by REDCap. If an operation is successful, theraw_text
is returned as an empty string to save RAM.
Author(s)
Will Beasley
References
The official documentation can be found on the 'API Help Page' and 'API Examples' pages on the REDCap wiki (i.e., https://community.projectredcap.org/articles/456/api-documentation.html and https://community.projectredcap.org/articles/462/api-examples.html). If you do not have an account for the wiki, please ask your campus REDCap administrator to send you the static material.
Examples
## Not run:
uri <- "https://bbmc.ouhsc.edu/redcap/api/"
token <- "9A81268476645C4E5F03428B8AC3AA7B"
#Return all records and all variables.
ds <- REDCapR::redcap_read_oneshot(redcap_uri=uri, token=token)$data
#Return only records with IDs of 1 and 3
desired_records_v1 <- c(1, 3)
ds_some_rows_v1 <- REDCapR::redcap_read_oneshot(
redcap_uri = uri,
token = token,
records = desired_records_v1
)$data
#Return only the fields record_id, name_first, and age
desired_fields_v1 <- c("record_id", "name_first", "age")
ds_some_fields_v1 <- REDCapR::redcap_read_oneshot(
redcap_uri = uri,
token = token,
fields = desired_fields_v1
)$data
# Specify the column types.
col_types <- readr::cols(
record_id = readr::col_integer(),
race___1 = readr::col_logical(),
race___2 = readr::col_logical(),
race___3 = readr::col_logical(),
race___4 = readr::col_logical(),
race___5 = readr::col_logical(),
race___6 = readr::col_logical()
)
ds_col_types <- REDCapR::redcap_read_oneshot(
redcap_uri = uri,
token = token,
col_types = col_types
)$data
## End(Not run)