Excel Spreadsheet Automation on Gumroad Data with the QUERY Formula
The CData Excel Add-In for Gumroad provides formulas that can query Gumroad data. The following three steps show how you can automate the following task: Search Gumroad data for a user-specified value and then organize the results into an Excel spreadsheet.
The syntax of the CDATAQUERY formula is the following:
=CDATAQUERY(Query, [Connection], [Parameters], [ResultLocation]);
This formula requires three inputs:
- Query: The declaration of the Gumroad data records you want to retrieve, written in standard SQL.
Connection: Either the connection name, such as APIConnection1, or a connection string. The connection string consists of the required properties for connecting to Gumroad data, separated by semicolons.
Using OAuth Authentication
To authenticate to Gumroad and connect to your own data or to allow other users to connect to their data, you can use the OAuth 2.0 standard. This is the recommended authentication method.
First you need to register an OAuth application with Gumroad. You can create an OAuth application by visiting your Gumroad account settings at https://app.gumroad.com/settings/advanced and navigating to the Applications section.
After setting the following connection properties, you are ready to connect:
- AuthScheme: Set this to OAuth.
- InitiateOAuth: Set this to GETANDREFRESH. The CData API Profile for Gumroad will automatically walk through the OAuth process in order to obtain the access token.
- OAuthClientID: Set this to the client_id that is specified in your app settings.
- OAuthClientSecret: Set this to the client_secret that is specified in your app settings.
- CallbackURL: Set this to the Redirect URI you specified in your app settings.
Example connection string
Profile=C:\profiles\Gumroad.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;
- ResultLocation: The cell that the output of results should start from.
Pass Spreadsheet Cells as Inputs to the Query
The procedure below results in a spreadsheet that organizes all the formula inputs in the first column.
- Define cells for the formula inputs. In addition to the connection inputs, add another input to define a criterion for a filter to be used to search Gumroad data, such as ProductId.
- In another cell, write the formula, referencing the cell values from the user input cells defined above. Single quotes are used to enclose values such as addresses that may contain spaces.
- Change the filter to change the data.
=CDATAQUERY("SELECT * FROM CustomFields WHERE ProductId = '"&B7&"'","Profile="&B1&";AuthScheme="&B2&";InitiateOAuth="&B3&";OAuthClientId="&B4&";OAuthClientSecret="&B5&";CallbackUrl="&B6&";Provider=API",B8)