This site uses different types of cookies, including analytics and functional cookies (its own and from other sites). To change your cookie settings or find out more, click here. If you continue browsing our website, you accept these cookies.
So we’re now downloading all the network-shared documents we want thanks to instructions posted on our Knowledge Base, and we’re on our way to mastering FTP in Alteryx. But what if we want to take it a step further? A lot of our users rely on FTP as a drop zone for datasets that are generated periodically (e.g. weekly, monthly, or quarterly datasets). We should then be able to schedule a workflow to coincide with those updates, automatically select the most recent dataset, crank out all the sweet data blending and analytics we have in our scheduled workflow, and proceed with the rest of our lives, right? Right. We can do just that, and with a little work up front, you can automate your FTP download and analysis to run while you’re enjoying the finer things in life. Here’s how in v10.1:
In a previous article , we've shown you how you can upload to FTP using the Download tool. With the release of Alteryx 10.5, the Download tool now supports uploading to SFTP . With this addition, we'll take the opportunity to show you some more examples of uploading data to SFTP/FTP and show you how seamless it can be.
Ever wish you had an easy way to read in data to Alteryx Designer from your Quickbooks Online account? Well, now there's a tool for that.
This article will describe how to make an API call to QuickBooks Online through the QuickBooks Input Tool attached to this article.
Platform Product: Connectors Issues – Working with Alteryx Customer Support Engineers (CSEs)
(for use by CSEs and Alteryx Customers)
To EXPEDITE the resolution of your case, please include the below information.
Connectors - Requested Information
*** Suggestion: copy/paste the questions below and email the supporting documentation to firstname.lastname@example.org
1. Detailed Description of the Issue
2. Screenshot of Alteryx Version
3. Screenshot of Error
4. What is your Connector Type and Version?
5. Screenshot of your Configuration in Connector Tools
6. Additional information for API connectors (user-created custom connectors)
7. Have there been any changes made recently? Update to Alteryx, Server, etc.?
Connectors Requested Information (Detailed):
1. Detailed Description of the Issue – What issues are you having? Has it worked in the past? When did the issue start? Are all users affected or just some? What are the steps to reproduce your issue? What have you tried to resolve the issue? Have you searched the Alteryx Community using the Connectors label?
2. Screenshot of Alteryx Version – Our CSEs need to know the precise version of Alteryx so we can replicate any issues. In Alteryx, click Help >> About and provide a screenshot.
The screenshot will include whether it is Server or Designer. In addition, whether it is “Running Elevated” Admin vs. Non-Admin.
3. Screenshot of Error or Exact Text of Error- Click CTRL-Print-screen to capture the error and paste into your e-mail. Also include where was the error encountered – Gallery, Designer, Scheduler?
Note: You may wish to Google the error text research the issue. The Knowledgebase is also a great place to search the error text as well!
4. What is your Connector Type and Version? Do you have Tableau? Salesforce? Other? What is the version? The version of tool if applicable (right click on the tool)?
5. Screenshot of your Configuration in Connector Tools- Click CTRL-Print-screen to capture the error and paste into your e-mail.
6. Please send a copy of your workflow (*.yxmd or *.yxzp) and sample data if possible. Either create a .yxzp and include macros and data by clicking Options>Export Workflow. Or, include the workflow *.yxmd and sample data if possible.
7. Additional information for API connectors (user-created custom connectors)
What is the URL for the API endpoint that fails?
What is the Payload being sent to the API?
What are the Postman results for the same API endpoint and payload?
What is the link to API documentation?
The 'How to Guide' to Publishing to Tableau Cannot find macro: Publish To Tableau Server
The 'How to Guide' to Google Analytics
Guide to Creating Your Own Connector Series
The 'How to Guide' to the Salesforce Connector
Google Big Query Tools
Tool Mastery | One Drive
If the API that you are working with requires you to sign or authenticate your requests, it may utilize an implementation of OAuth 2.0 or another authentication method to show that you have the access needed to consume the web service. There are some key words that you can look for in the API documentation that you are using that will help you quickly choose the appropriate grant flow to use in Alteryx.
Now you are ready to take your workflow one step further and add some error checking. If something is wrong with your request or something goes wrong on the server, an API will usually return an error message. It is useful to capture this information and clearly display it to the user of the connector. The Message tool will come in handy here. It will help you to troubleshoot the error and actually stop the workflow from processing if you would like.
Connecting to Salesforce
In order to use the Salesforce Input or Output tools in Alteryx, you must first connect to Salesforce using your Salesforce credentials:
1. Make sure you have the correct Salesforce URL; it will look something like https://[instance].salesforce.com .
2. Your Salesforce username
3. Your Salesforce password
4. A Security token that you can recover from your Salesforce administrator or using the steps below (if you have the sufficient privileges from your Salesforce admin):
In Salesforce.com, click on the picture icon in the top right-hand corner and click on my Settings:
Click on Personal > Reset My Security Token:
This will send out an automated email with your security token. Voila! You should be ready to connect!
Configuring the tool
Environment - Choose the environment that you wish to utilize for the data pull. We will automatically find the host name based on your email address.
User Name - Salesforce username (often an Email address).
Password - Password associated with Salesforce account.
Security Token - If necessary, you can send a new token to your email by logging in to Salesforce, going to “My Settings”, and selecting “Reset My Token” under the “Personal” tab.
Once you click the ‘connect’ button, Salesforce will authorize your credentials, and you will be able to begin using the tool to query Salesforce data.
Salesforce Input Tool (Querying Salesforce)
The Query Builder has four fields that allow you to select the data you would like to pull from Salesforce simply, without having to write full SOQL (Salesforce Object Query Language) statements:
Table: Select the table you would like to pull fields from. *The list only includes ‘Queryable’ tables as defined by the flag ‘Queryable’ set to true or false returned by the API call.
Fields (optional): Select the fields in the table you need data from. If no fields are selected, all fields will be pulled.
Record Limit (optional): Place a MAX on the number of records you will pull.
WHERE Clause (optional): Using a SOQL statement, specify the conditions that you require for the data you pull. *You do not need to include ‘WHERE’ in the statement. Ex. AccountID = ‘2543456’
It is best practice to limit the records you bring in with the Fields, Record Limit, and WHERE clause arguments in the Salesforce Tool instead of bringing in all of the salesforce data, and then filtering down the data with tools in Alteryx.
If you prefer Querying Salesforce using SOQL, you can use the Customer Query to write out SOQL statements. For full SOQL Syntax, see this link. If you began using the Query Builder, and decided to change to the custom query, the pre-existing query will already exist in the Query Builder in full SOQL syntax:
Below the SOQL Query text box is a check box for “Attempt to Parse JSON Response.” With this box checked (the box is checked by default), Alteryx will attempt to parse the response returned from the API call for quick viewing in the results window. If the box is left unchecked, the API response will be returned in one field titled “JSON.” You can parse this response using the JSON Parse tool in Alteryx.
Next to the “Attempt to Parse JSON Response” check box is a “Validate” button. Clicking this button prior to running the workflow will submit the query to Salesforce to determine if it valid. It will also check to see if the response from the API will be able to be parsed automatically, which should prompt you to leave the “Attempt to Parse JSON Response” check box selected.
This option will allow you to pull any pre-built reports and their data that already exist in Salesforce. Simply select the report you which to read in and run the workflow.
Salesforce Output Tool (Writing to Salesforce)
Connecting to the Salesforce Output is identical to the Salesforce input tool. URL, User Name, Password, and Security Token are all required credentials to connect to the API.
There are only two options that need to be selected in the Salesforce Output tool. Both are required.
Table: Select a table to write to from the list of tables available
Output Operation: Select the operation for how you will write the data to the table. The three available options are Update, Insert, and Delete.
** If you want to overwrite values in Salesforce with null values, use “#N/A” instead of “null.” You can accomplish this with a replace function in the Formula tool.
Basic Troubleshooting steps:
Error: “Unable to reach SOAP API (Check URL)”
-Check to see if your username needs to have the domain attached (eg. JonDoe@alteryx.com).
-If you’ve ensured that the URL is correct, this may be a proxy issue. Alteryx should pick up the proxy settings, but you may need to enable them manually by going to Options->User Settings->Edit User Settings->Advanced. There is an article on the community that walks through this.
-The tool requires that your Salesforce account is API enabled. You may have to work with your Salesforce administrator for granting your account API User Permissions.
Error: “The following fields are not updateable members of the target table: (table)”
This error is telling you that your Salesforce administrator has locked the fields from being updated, and you will have to work with them determine what can be updated.
Error: “INVALID_LOGIN: Invalid username, password, security token; or user locked out.”
After you have confirmed that your credentials are correct, and you are not locked out of Salesforce, check to see if your company uses SSO (single-sign-on) for Salesforce. You can check this by seeing if Salesforce requires a password directly when you log in a browser. This authentication is not supported by the connector, and will not work. You must use credentials that log you in directly into Salesforce for the tool to work.
*See the “Common Issues” section of this Community article by @JordanB for more common issues and troubleshooting steps.
Salesforce has a maximum length for SOQL statements, which is set at 20,000 characters by default. There is also a maximum length of 4,000 characters for the WHERE clause. Other SOAP API call limits can be found here.
As the API accepts data in batches which have limits, the output tool contains logic to take care of the batching. Please see this link for more details.
When using the Salesforce Input tool, you can limit the data to a certain timeframe. Alteryx has the ability to use SOQL date queries so that you pull data for a certain time frame instead of pulling ALL of your data and then having to filter out what you are interested in. Pulling all of your data can take some time depending on the size of your table and this is a quick way to get around a potentially slow data pull.
Once you have entered your Salesforce credentials, go ahead and pick your table (1). From the table you have selected choose your fields (2). At least one has to be some kind of field with dates and/or date times recorded. And finally, you can enter in a SOQL query that will execute on your date field (3).
The date query that you enter could be something as simple as a specific date, for example, ‘DateField = 2016-03-31’ or ‘DateField > 2016-03-31’. Or you could use some of the SOQL date literal query options. For example ‘DateField = YESTERDAY’ or ‘DateField = LAST_QUARTER’
Here is a full listing of your date query options when using SOQL to query on dates in the salesforce input tool - Date Formats and Date Literals. If you need help in getting your salesforce login credentials please see our Obtaining Credentials for the Salesforce Connectors article.
If you run into any issues with the Salesforce input tool, please feel free to reach out to our Client Support team through the Case Portal.
The following error appears when configuring your credentials in the Dynamics CRM Tools, Azure Data Lake Tools, OneDrive Tools, or the PowerBI Output tool:
The reply url specified in the request does not match the reply urls configured for the application
Dynamics CRM Tools
Azure Data Lake Tools
PowerBI Output tool
Windows Operating System
The redirect URI specified in the Azure application for the respective connector has not been set or has been configured with the wrong URL.
Set the Redirect URI in your Azure application to https://login.live.com/oauth20_desktop.srf
If you do not have permissions to do this, please contact your Azure administrator
If you do have permissions, follow the instructions from Microsoft's documentation: Add redirect URI(s) to your application
Azure App Service error: AADSTS50011: The reply address does not match the reply addresses configured for the application
By combining Alteryx and Microsoft Power BI, organizations can streamline and accelerate the process of preparing and analyzing data. This provides a faster way to deliver an end-to-end experience for data access, preparation, analysis, visualization and consumption — delivering deeper business insight faster with a more complete set of data.
To go along with our example on how to download a file from FTP, we’ve assembled steps in the attached workflow (credentials, server removed) as an example of uploading a file to FTP. In this example (attached) I’ve encoded a string field as a Blob to be posted as a text file. Theoretically, all your fields could be concatenated to a CSV format, or another delimited format, to be converted and posted using the same steps:
My field string to be converted:
1. First identify the field to be converted to Blob in your Blob Convert Tool:
2. Specify in a Formula Tool your FTP URL and filename in the format URL/filename.extension:
3. Have your Download Tool use this field as the URL field in the Basic Tab:
4. In the Payload tab specify the HTTP action PUT and select the option “Take Query String/Body from Field” and specify your Blob field:
5. Specify your credentials in the Connection tab of the Download Tool, leave all other configuration options default:
6. Run the workflow!
After running, you should be able to confirm the successful transfer of your file in the DownloadHeader field returned from the Download Tool (it'll also be hosted on your FTP path):
Take a look at the results below:
Web scraping, the process of extracting information (usually tabulated) from websites, is an extremely useful approach to still gather web-hosted data that isn’t supplied via APIs. In many cases, if the data you are looking for is stand-alone or captured completely on one page (no need for dynamic API queries), it is even faster than developing direct API connections to collect.
API connections give access to many web-based applications, database systems, or programs by exposing objects or actions to a developer in an abstracted format that can easily be integrated into another program.