Module terminals are designed to emit or consume a specific data type. These types must be compatible in order for the modules to be wired together. For example, the Fetch module requires its input to be a URL, so you can't wire a Text Input module to it (since that gives a string). The editor will not allow you to wire together incompatible modules.
Not every module is compatible with the ForEach iterator. Some modules (like the Babelfish module) already act on every item in a feed. Others (such as User Input modules) have ill-defined semantics when applied inside an iterator. The editor will prevent you from putting an incompatible module inside of a ForEach container.
Like any great plumber we suggest you roll up your sleeves and get under the sink, or in this case back in the Pipes Editor to see what's going wrong.
As a first step, we suggest you make sure the data you are requesting is active, in other words if the first Input in your Pipe is a feed make sure that feed is returning content. Try copy and pasting the feed URL into your browser or aggregator and seeing what you get.
Once you have confirmed that the feeds in your Pipe are active, you can use the Debugger to figure out where things are going wrong. Try starting at the top of the Pipe and examining the output along every step until you've found the problem.
Whenever possible, simplify your Pipe by connecting as few modules as possible. Start with a basic Pipe and build it up gradually, checking at each step to make sure things still work.
When all else fails, use our Feedback mechanism. We listen and respond and want your Pipe to flow. And if anything has gone wrong on our end, we'll make sure you hear about it promptly.
Either the Pipe changed, or the data flowing into it changed. If you're using someone else's Pipe keep in mind the publisher can change, break or delete a Pipe without notice. If you rely on someone else's published Pipe to do something, it's often a good idea to clone that Pipe so that you have your own version of it in case they make unexpected changes.
Since Pipes are dynamic objects, their behavior will also change when the content flowing into them changes. Check that the upstream feeds are still providing the kind of data they used to.
Pipes caches all the feeds that it visits and tries hard not to download feeds from the same site too often. To help Pipes out, be sure your feed is properly setting the Last-Modified, ETag or Expires fields. Pipes will honor any of these standard HTTP headers.
There are two ways you can prevent your feed content from being used within a Yahoo! Pipe:
Configure your web server to block the user agent "Yahoo Pipes". For example, to block Pipes in Apache, add this to your virtual host block in httpd.conf:
SetEnvIfNoCase User-Agent "Yahoo Pipes" noPipes
<Limit GET POST>
Order Allow,Deny
Allow from all
Deny from env=noPipes
</Limit>
Add the following meta tag to your syndicated feed:
<meta xmlns="http://pipes.yahoo.com" name="pipes" content="noprocess" />
Pipes will ignore the content of any feed containing this tag, even thought it will still need to fetch it from your server (since we have to read the feed in order to see the tag).
Because Pipes is not a web crawler (the service only retrieves URLs when requested to by a Pipe author or user) Pipes does not follow the robots exclusion protocol (when fetching feeds), and won't check your robots.txt file.
There are three ways you can prevent your page content from being used within a Yahoo! Pipe:
Configure your web server to block the user agent "Yahoo Pipes". For example, to block Pipes in Apache, add this to your virtual host block in httpd.conf:
SetEnvIfNoCase User-Agent "Yahoo Pipes" noPipes
<Limit GET POST>
Order Allow,Deny
Allow from all
Deny from env=noPipes
</Limit>
Add the following meta tag to your html <head> element:
<META NAME="ROBOTS" CONTENT="NOINDEX">
Using robots.txt
User-agent: Yahoo Pipes 1.0
Disallow: /
In order of preference we recommend: Firefox, IE8, IE7, Webkit, and Safari.
Pipes is known not to work in Opera. Safari has minor issues. IE6 currently has troubles.
Pipes is a free Yahoo! service. If you want to build your own Pipe you need a Yahoo! ID. If you don't already have one get one here.
To sign in to your Pipes account, go to: http://pipes.yahoo.com
Then click the "Sign In" link in the top right hand corner.
You can sign out of your Pipes account on any page but the Editor. Just click the "Logout" link in the top right hand corner next to where you see your username.
If you wish to report an incident please contact: pipes-abuse [at] yahoo-inc.com.
If you would like to partner with Pipes please contact our Business Development team at:
pipes-bd [at] yahoo-inc.com.
A 999 error implies you are over utilizing our service.
Please try throttling back the number of requests made to the Pipes site and within a few hours you should no longer be blocked.
The Pipes team puts these measures in place to protect the overall experience for its users. If you think the amount of traffic you are sending to the Pipes site should be allowed and would like to make more requests than normal, please contact our Business Development team at:
pipes-bd [at] yahoo-inc.com.
Yes. Add the _callback=<your callback name> parameter when using a Pipes JSON feed.
For example: http://pipes.yahoo.com/pipes/pipe.run?_id=EFyKNviS3BG3cH3lyjUFzw&_render=json&_callback=myCallback
We sanitize feeds due to potential malicious objects (re: activeX and others) and push those tags into an iframe.
This is done for safety of our users who view the output. Feeds that have enclosure nodes will have the video embedded in various readers.