Title: | R Wrapper for the 'Wufoo.com' - The Form Building Service |
---|---|
Description: | Allows form managers to download entries from their respondents using Wufoo JSON API (<https://www.wufoo.com>). Additionally, the Wufoo reports - when public - can be also acquired programmatically. Note that building new forms within this package is not supported. |
Authors: | John Malc [aut, cre] (@dmpe), Maksim Pecherskiy [ctb] (@MrMaksimize) |
Maintainer: | John Malc <[email protected]> |
License: | Apache License 2.0 |
Version: | 1.0 |
Built: | 2024-10-30 03:30:10 UTC |
Source: | https://github.com/dmpe/wufoor |
A method for setting your Wufoo Name and API Key. Your Wufoo name is the subdomain
of your Wufoo URL displayed in "Account" tab. For example, for http://johnmalc.wufoo.com
,
the Wufoo_Name = "johnmalc"
. This can be the company's name too, e.g. http://google.wufoo.com
Your API key may be found by selecting "Share" of your form, then
"API Information" (or go to https://yourName.wufoo.com/api/code/1/
.
auth_name(x) auth_key(x)
auth_name(x) auth_key(x)
x |
- an empty parameter, e.g. NULL |
Wufoo currently restricts free API usage to 100 requests per day.
The code for these methods has been developed by Scott Chamberlain https://github.com/sckott for his https://github.com/ropensci/rnoaa package.
options(Wufoo_Name = "johnmalc", Wufoo_API = "F1QH-Q64B-BSBI-JASJ")
options(Wufoo_Name = "johnmalc", Wufoo_API = "F1QH-Q64B-BSBI-JASJ")
The Fields API describes a hierarchy of your data. At the heart of this API is the listing of FieldId values. Each FieldId corresponds to a value in the Entries API.
fields_info( wufoo_name = auth_name(NULL), formIdentifier = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
fields_info( wufoo_name = auth_name(NULL), formIdentifier = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
wufoo_name |
- User's Name. Default: |
formIdentifier |
- this will give you information about just one form. A request without
the |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
Title - The title is the friendly name you gave the field when creating your form. For example, if you were building a table with the API, the Title would be a column header.
Type - The Type represents a Wufoo field type. A listing of the these types can be found in the Field Type section of this documentation.
ID - This is the unique reference ID for your field. There will be one corresponding ID for each Entry in return value of the the Entries API.
IsRequired - This value can be one or zero, representing whether or not the field has been marked required in the Form Builder.
OtherField - This value is true or false and is only set if the field has choices. Only Multiple-Choice fields have the option of an Other field. When a Multiple-Choice field is marked as HasOtherField, the last choice is the Other field.
For developers: This function returns 2 data frames. One containing only default fields, another one containing subfields as described http://help.wufoo.com/articles/en_US/SurveyMonkeyArticleType/The-Fields-API#Fancypants. "These include name, shortname, checkbox, address, and likert."
## Not run: fields_info(formIdentifier = "z5kqx7h1gtvg4g", showRequestURL = TRUE) fields_info(formIdentifier = "z5kqx7h1gtvg4g", debugConnection = 1L) ## End(Not run)
## Not run: fields_info(formIdentifier = "z5kqx7h1gtvg4g", showRequestURL = TRUE) fields_info(formIdentifier = "z5kqx7h1gtvg4g", debugConnection = 1L) ## End(Not run)
Returns any comments made on this form's entries in the Entry Manager
form_comments( wufoo_name = auth_name(NULL), formIdentifier = NULL, entryId = NULL, showRequestURL = FALSE, pageStart = 0, pageSize = 100, debugConnection = 0L, domain = "wufoo.com" )
form_comments( wufoo_name = auth_name(NULL), formIdentifier = NULL, entryId = NULL, showRequestURL = FALSE, pageStart = 0, pageSize = 100, debugConnection = 0L, domain = "wufoo.com" )
wufoo_name |
- User's Name. Default: |
formIdentifier |
- this will give you information about just one form. A request without
the |
entryId |
- If set to a number, will only return comments for the specific entry |
showRequestURL |
- use only for DEBUG purposes |
pageStart |
- The comment that the request will start from |
pageSize |
- The number of comments returned in the request (Maximum of 100) |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
https://wufoo.github.io/docs/#form-comments
https://help.wufoo.com/articles/en_US/SurveyMonkeyArticleType/Entry-Manager
Returns a count of all comments made on this form's entries
form_commentsCount( wufoo_name = auth_name(NULL), formIdentifier = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
form_commentsCount( wufoo_name = auth_name(NULL), formIdentifier = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
wufoo_name |
- User's Name. Default: |
formIdentifier |
- this will give you information about just one form. A request without
the |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
https://wufoo.github.io/docs/#comments-count
https://help.wufoo.com/articles/en_US/SurveyMonkeyArticleType/Entry-Manager
If you have 5 submissions to your form, you'll have 5 elements (rows) in the return. This request returns the entries that have been submitted to a specific form. This is the equivalent of viewing your stored entries in the Entry Manager in Wufoo.
form_entries( wufoo_name = auth_name(NULL), formIdentifier = NULL, systemFields = "true", sortID = NULL, sortDirection = NULL, columnNames = FALSE, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com", pageStart = 0, pageSize = 25 )
form_entries( wufoo_name = auth_name(NULL), formIdentifier = NULL, systemFields = "true", sortID = NULL, sortDirection = NULL, columnNames = FALSE, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com", pageStart = 0, pageSize = 25 )
wufoo_name |
- User's Name. Default: |
formIdentifier |
- must be replaced with your form's URL or hash. |
systemFields |
- return system fields. Default: true |
sortID |
- sort on a single ID, as retrieved from the |
sortDirection |
- choose to sort your entries ASC (lowest to highest) or DESC (highest to lowest). |
columnNames |
- How should be column names be called. Either "Field1", "Field2" etc. or "First Name", "Last Name" (tries to make best guess). Default to the second option. |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
pageStart |
- the page number you'd like to start from. Defaults to 0. |
pageSize |
- the number of entries returned in your page. Defaults to 25; Max = 100. |
https://wufoo.github.io/docs/#form-entries
http://help.wufoo.com/articles/en_US/SurveyMonkeyArticleType/The-Entries-GET-API
## Not run: form_entries(formIdentifier = "z5kqx7h1gtvg4g") form_entries(formIdentifier = "z5kqx7h1gtvg4g", systemFields = "false", showRequestURL = TRUE) ## End(Not run)
## Not run: form_entries(formIdentifier = "z5kqx7h1gtvg4g") form_entries(formIdentifier = "z5kqx7h1gtvg4g", systemFields = "false", showRequestURL = TRUE) ## End(Not run)
Return number of responses to your form
form_entriesCount( wufoo_name = auth_name(NULL), formIdentifier = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
form_entriesCount( wufoo_name = auth_name(NULL), formIdentifier = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
wufoo_name |
- User's Name. Default: |
formIdentifier |
- this will give you information about just one form. A request without
the |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
https://wufoo.github.io/docs/#form-entries-count
http://help.wufoo.com/articles/en_US/SurveyMonkeyArticleType/The-Entries-GET-API#entrycount
## Not run: form_entriesCount(formIdentifier = "z5kqx7h1gtvg4g", showRequestURL = TRUE) ## End(Not run)
## Not run: form_entriesCount(formIdentifier = "z5kqx7h1gtvg4g", showRequestURL = TRUE) ## End(Not run)
This function imports your report csv file as a data frame from the report csv export url (example url below).
The report must be public and not protected. To verify your CSV url,
open the browser, select your report, then "Export" in "Commas (.csv)".
Please note that the name of your report will be in lowercase with spaces replaced with hyphens.
For example, the report titled "My Example Report" will be "my-example-report" in the URL as shown below.
E.g. https://YourName.wufoo.com/export/reports/manager/NameOfYourReport.csv
form_entriesFromCSV( wufoo_name = auth_name(NULL), reportName = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
form_entriesFromCSV( wufoo_name = auth_name(NULL), reportName = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
wufoo_name |
- User's Name. Default: |
reportName |
- the name of your report as displayed in the csv export URL (which is in lowercase with hyphens replacing spaces of your report name). The report should be also public. |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
## Not run: options(Wufoo_Name = "johnmalc", Wufoo_API = "S6VI-I8UA-BY11-TDHO") df_csv <- form_entriesFromCSV(reportName = "untitled-report", showRequestURL = F) View(df_csv) ## End(Not run)
## Not run: options(Wufoo_Name = "johnmalc", Wufoo_API = "S6VI-I8UA-BY11-TDHO") df_csv <- form_entriesFromCSV(reportName = "untitled-report", showRequestURL = F) View(df_csv) ## End(Not run)
Creates a list of all forms belonging to a user and dynamically generate a form embed snippet to use in your application.
form_info( wufoo_name = auth_name(NULL), formIdentifier = NULL, includeTodayCount = "false", showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
form_info( wufoo_name = auth_name(NULL), formIdentifier = NULL, includeTodayCount = "false", showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
wufoo_name |
- User's Name. Default: |
formIdentifier |
- this will give you information about just one form. A request without
the |
includeTodayCount |
- if set to true, includes the number of entries received today.
If you add the |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
https://wufoo.github.io/docs/#all-forms
http://help.wufoo.com/articles/en_US/SurveyMonkeyArticleType/The-Forms-API
## Not run: form_info() ## End(Not run)
## Not run: form_info() ## End(Not run)
This is essentially an equivalent of the data that would show up in a datagrid widget on the report, or in an exported copy of the report entry data
report_entries( wufoo_name = auth_name(NULL), domain = "wufoo.com", systemFields = "true", reportName = NULL, showRequestURL = FALSE, debugConnection = 0L )
report_entries( wufoo_name = auth_name(NULL), domain = "wufoo.com", systemFields = "true", reportName = NULL, showRequestURL = FALSE, debugConnection = 0L )
wufoo_name |
- User's Name. Default: |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
systemFields |
- return system fields. Default: true |
reportName |
- the name of your report as displayed in the csv export URL (which is in lowercase with hyphens replacing spaces of your report name). The report should be also public. |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
[form_entries()]
## Not run: report_entries(reportName = "untitled-report") ## End(Not run)
## Not run: report_entries(reportName = "untitled-report") ## End(Not run)
This can help with determining the number of elements you have to display.
report_entriesCount( wufoo_name = auth_name(NULL), domain = "wufoo.com", reportName = NULL, showRequestURL = FALSE, debugConnection = 0L )
report_entriesCount( wufoo_name = auth_name(NULL), domain = "wufoo.com", reportName = NULL, showRequestURL = FALSE, debugConnection = 0L )
wufoo_name |
- User's Name. Default: |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
reportName |
- the name of your report as displayed in the csv export URL (which is in lowercase with hyphens replacing spaces of your report name). The report should be also public. |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
[report_entries()]
## Not run: report_entriesCount(reportName = "untitled-report") ## End(Not run)
## Not run: report_entriesCount(reportName = "untitled-report") ## End(Not run)
Returns the field structure for the report's corresponding form.
report_fields( wufoo_name = auth_name(NULL), domain = "wufoo.com", systemFields = "true", reportName = NULL, showRequestURL = FALSE, debugConnection = 0L )
report_fields( wufoo_name = auth_name(NULL), domain = "wufoo.com", systemFields = "true", reportName = NULL, showRequestURL = FALSE, debugConnection = 0L )
wufoo_name |
- User's Name. Default: |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
systemFields |
- return system fields. Default: true |
reportName |
- the name of your report as displayed in the csv export URL (which is in lowercase with hyphens replacing spaces of your report name). The report should be also public. |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
[fields_info()]
## Not run: report_fields(reportName = "untitled-report") ## End(Not run)
## Not run: report_fields(reportName = "untitled-report") ## End(Not run)
To identify the desired report, you can either use the report hash or the report title. The Report properties are the same as in the All Reporst request. The only difference is that this request will only return the identified report.
report_info( wufoo_name = auth_name(NULL), domain = "wufoo.com", reportName = NULL, showRequestURL = FALSE, debugConnection = 0L )
report_info( wufoo_name = auth_name(NULL), domain = "wufoo.com", reportName = NULL, showRequestURL = FALSE, debugConnection = 0L )
wufoo_name |
- User's Name. Default: |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
reportName |
- the name of your report as displayed in the csv export URL (which is in lowercase with hyphens replacing spaces of your report name). The report should be also public. |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
## Not run: report_info(reportName = "untitled-report") ## End(Not run)
## Not run: report_info(reportName = "untitled-report") ## End(Not run)
The hash code for a widget can be used to embed the widget using Javascript. Only Chart, Graph, and Number widgets will be included in the request. Any Text or Datagrid widgets will not be shown.
report_widgets( wufoo_name = auth_name(NULL), domain = "wufoo.com", formIdentifier = NULL, showRequestURL = FALSE, debugConnection = 0L )
report_widgets( wufoo_name = auth_name(NULL), domain = "wufoo.com", formIdentifier = NULL, showRequestURL = FALSE, debugConnection = 0L )
wufoo_name |
- User's Name. Default: |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
formIdentifier |
- this will give you information about just one form. A request without
the |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
https://wufoo.github.io/docs/#widgets
## Not run: report_widgets(formIdentifier = "z5kqx7h1gtvg4g") ## End(Not run)
## Not run: report_widgets(formIdentifier = "z5kqx7h1gtvg4g") ## End(Not run)
Return details about the reports you have permission to view.
reports_info( wufoo_name = auth_name(NULL), domain = "wufoo.com", showRequestURL = FALSE, debugConnection = 0L )
reports_info( wufoo_name = auth_name(NULL), domain = "wufoo.com", showRequestURL = FALSE, debugConnection = 0L )
wufoo_name |
- User's Name. Default: |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
Name - This is the friendly name you chose when creating this form.
IsPublic - Indicates whether or not the report is accessible through the Url by the general public. This value is binary (1 = true, 0 = false).
Url - This is the URL for your form. Beware using the URL for API or linking purposes because it changes with the report title.
Description - Your description of the report.
DateCreated - A timestamp of when the report was created.
DateUpdated - A timestamp of when the report was lasted edited in the Wufoo Report Builder.
Hash - An unchanging hashed value unique to this report on this user's account.
https://wufoo.github.io/docs/#all-reports
## Not run: reports_info(showRequestURL = TRUE) ## End(Not run)
## Not run: reports_info(showRequestURL = TRUE) ## End(Not run)
This request allows approved partners to access users API Keys. This is useful for custom integrations that need to make API requests on behalf of Wufoo users. For example, Zapier uses this method to set up new integrations, without requiring users to use or even know their own API Key.
retrieve_api_key( integrationKey = NULL, email = NULL, password = NULL, apiKey = auth_key(NULL), subdomain = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
retrieve_api_key( integrationKey = NULL, email = NULL, password = NULL, apiKey = auth_key(NULL), subdomain = NULL, showRequestURL = FALSE, debugConnection = 0L, domain = "wufoo.com" )
integrationKey |
- Required. This is your Login integration key. Apply at https://master.wufoo.com/forms/integration-key-application/ |
email |
- Required. The user's email, which acts as the identifier for their account. |
password |
- Required. The user's password |
apiKey |
- uses the passed api key of the user |
subdomain |
- Optional. The user's subdomain. Is required if the email belongs to a sub-user or the email address is used on multiple accounts. |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
https://wufoo.github.io/docs/#retrieve-api-key
This method has not been tested. Please report bugs in GitHub Issues
This method will not work unless you are one of Wufoo's exclusive partners.
Shows information about the user.
user_info( wufoo_name = auth_name(NULL), domain = "wufoo.com", showRequestURL = FALSE, debugConnection = 0L )
user_info( wufoo_name = auth_name(NULL), domain = "wufoo.com", showRequestURL = FALSE, debugConnection = 0L )
wufoo_name |
- User's Name. Default: |
domain |
- for whatever reason domain's ccTLD may change. With this parameter you can change
default |
showRequestURL |
- use only for DEBUG purposes |
debugConnection |
- samilar as above. Either "0L" (false; default) or "1L" |
https://wufoo.github.io/docs/#users
wufoo_api - User's API Key. Default: auth_key
.
## Not run: user_info(debugConnection = 1L, domain = "wufoo.eu") ## End(Not run)
## Not run: user_info(debugConnection = 1L, domain = "wufoo.eu") ## End(Not run)