Arguments
- input_data
named vector
,matrix
,data.frame
, ortbl_df
; data can be coerced into adata.frame
. If performing anupdate
,upsert
, ordelete
operation, then one column or field must be theId
of the record to modify or delete.- object_name
character
; the name of the Salesforce object that the function is operating against (e.g. "Account", "Contact", "CustomObject__c").- api_type
character
; one of"REST"
,"SOAP"
,"Bulk 1.0"
, or"Bulk 2.0"
indicating which API to use when making the request.- guess_types
logical
; indicating whether or not to usecol_guess()
to try and cast the data returned in the recordset. IfTRUE
thencol_guess()
is used along withanytime()
andanydate()
. IfFALSE
then all fields will be returned as character. SpecifyingFALSE
helpful when guessing the column data type will result in NA values and you would like to return the results as strings and then cast in your script according to your unique specifications.- control
list
; a list of parameters for controlling the behavior of the API call being used. For more information of what parameters are available look at the documentation forsf_control
.- ...
arguments passed to
sf_control
or further downstream tosf_bulk_operation
- all_or_none
logical
; allows a call to roll back all changes unless all records are processed successfully.- verbose
logical
; an indicator of whether to print additional detail for each API call, which is useful for debugging. More specifically, when set toTRUE
the URL, header, and body will be printed for each request, along with additional diagnostic information where available.
Note
Because the SOAP and REST calls chunk data into batches of 200 records the AllOrNoneHeader will only apply to the success or failure of every batch of records and not all records submitted to the function.
Examples
if (FALSE) { # \dontrun{
n <- 2
new_contacts <- tibble(FirstName = rep("Test", n),
LastName = paste0("Contact", 1:n))
new_recs1 <- sf_create(new_contacts, object_name = "Contact")
# add control to allow the creation of records that violate a duplicate rules
new_recs2 <- sf_create(new_contacts, object_name = "Contact",
DuplicateRuleHeader=list(allowSave=TRUE,
includeRecordDetails=FALSE,
runAsCurrentUser=TRUE))
# example using the Bulk 1.0 API to insert records
new_recs3 <- sf_create(new_contacts, object_name = "Contact",
api_type = "Bulk 1.0")
} # }