Archive

Archive for the ‘News’ Category

Minimum Length Feeds & Duplication Issues

May 12th, 2011 Brad No comments

We are rejecting feeds that are not a minimum of 50 words in content to increase the quality of our submissions.  We are planning to increase this over time.

We have also tightened the control over duplicate items that are submitted.  There are some people that submit the same footer items over and over again.  This does not provide a good user experience so we are preventing them from being added.

Categories: New Features, News Tags:

Feed Acceptance Changes

May 4th, 2011 Brad No comments

I’ve tightened the feed acceptance polices lately having to do with duplicate and broken html items in your feeds.  If you are getting feeds rejected it’s time to make changes.

Categories: News, Tips Tags:

Duplicate Items

March 24th, 2011 Brad No comments

Just a quick note about feeds that include duplicate items. If you submit a feed with many duplicate items they will be flagged for verification and deleted. You should not being submitting the same footer items for every feed you submit. If you have a valid reason for this and believe your feeds shouldn’t be flagged please email us, support at feedagg dot com so we can take a look. We get far too many submissions like this and nearly all of them are spam.

Categories: News, Tips Tags:

User Profile Pages – New Feature

November 15th, 2010 Brad 5 comments

I’ve added a new feature so that people can see the most recent feeds you have submitted. If you go to http://www.feedagg.com/user/<your username> you should see your recent feeds.  I would like to add more information to these pages so if you have any suggestions let me know.

Categories: New Features, News Tags:

Twitter Posting Fix Needed

September 20th, 2010 Brad No comments

Twitter recently made changes to their third party authentication system that may require you to reauthorize FeedAgg to post to your twitter stream if you have enabled this feature.  If you haven’t seen any of your feed posts come through Twitter lately, you will want to delete your current Twitter posting link and re-enable it in your feeds account page.

Categories: Maintenance, News Tags:

Common Feed Mistakes

August 12th, 2010 Brad 2 comments

I’ve been working on some internal plumbing stuff on the site and wanted to highlight a few common mistakes I’m seeing when people submit and promote their feeds.

Broken Referral Links

I’ve been looking through our 404 logs and have noticed many people are linking to their feeds with incorrect addresses.  Some people have 100′s of broken links to their feeds! That’s a lot of wasted link juice. As the system works, you need to use the exact url that is shown when you visit your feed or what the system returns when you submit your feed. If you are going to take the time to submit your feed and promote it, why wouldn’t you verify the addresses you are promoting?

No Tags

There are still some people that are adding feeds without tags. While this doesn’t affect us(and is a positive for server resources), it surely affects those of you that are adding your feed for exposure. Tags are used for a few purposes:

  1. Each tag gets you exposure on that tag page and forms the basis of our site’s categories.
  2. Tags are a part of the equation that is used to form the related feeds links on our pages.
  3. Tags are going to be used extensively for a more advanced related feeds function that is currently being bucket tested on parts of the site.

I hope these tips helped. If you have any questions just let us know!

Categories: News, Tips Tags: , ,

A Round Up Of Recent Feed Submission Changes

June 22nd, 2010 Brad 1 comment

We’ve made some changes recently to feed submission rules and I wanted to brief everyone on them.

1. Feeds can have a maximum of 26 50 tags.

2. A max of 50 feeds without an account.

3. A minimum of 50 words in a feed.

4. 100 Max feed submissions in a minute.

We feel these policies will help improve the quality and performance of the feeds we receive.

Categories: News Tags: ,

Tag Limit Changes

June 15th, 2010 Brad 2 comments

Feeds can now only have a max of 26 50 tags.  While we don’t encourage you to use unrelated feeds, the more related tags you use the more categories your feed will appear in and the more exposure your feeds will get to our visitors.

Categories: News Tags:

Accounts Required For New Feed Additions

June 13th, 2010 Brad No comments

Due to the level of poor feeds we have been receiving and the inability for us to contact those posters we have now required anyone posting feeds to have verified accounts.  When you sign up you will now receive an email that contains an activation link to activate your account.

With this change we have also begun suspending accounts and blocking posts from people who don’t follow our feed guidelines. Please make sure your feeds follow these guidelines, especially the parts about posting feeds with html and other code and feeds that contain the same links and items as your other submitted feeds.

Update 6/22/10: If you are posting over 50 feeds you are required to have an account.

Categories: News Tags: ,

Feed Posting API Beta Release

May 8th, 2010 Brad 7 comments

We want to make it is as easy as possible for our publishers to get their content on FeedAgg.com to get exposure and audiences.  To help with that we announced the start of a feed posting API almost a year ago. We have since then rewritten it in a more formal restful API interface.  Below you will find the basics for using it. Feed content policies still apply. Please give us any feedback, good or bad, on how it works for you.

Background

Feed addition requests can be posted to http://www.feedagg.com/add_feed_api.php. You will receive the response as xml containing either a success code(200) or error code(400′s and 500′s).  Successful posts will include the FeedAgg.com url for your feed.

* The API is in a very beta stage and error status codes (ie >200) may change. *

Error codes are 400′s and 500′s. Success codes are 200′s.

A minimum of one tag per feed is required, max 100 50.

Feed submissions via API require a username.

URL Encode your feed urls.

Tags are separated by commas when submitting via API.

Rate limiting still applies. Currently set at 60 submissions per minute.

Updated: 2/10/11

Variables

FeedURL (Required, URL Encoded)

Tags (A minimum of one tag per feed is required, max 100 50.)

UserName (Required)

Example Successful Submission XML Response

<?xml version="1.0" encoding="UTF-8"?>
<response>
     <status_code>200</status_code>
     <status_txt>Your feed, FeedAgg Blog, has been saved.</status_txt>
     <data>
          <title>FeedAgg Blog</title>
          <submitted_url>http://www.feedagg.com/blog/feed/</submitted_url>
          <feedagg_url>http://www.feedagg.com/feed/258970/FeedAgg</feedagg_url>
          <feedagg_id>258970</feedagg_id>
     </data>
</response>

Example PHP(v5.0) Code To Submit VIA API

//---------------------------------------------------------------------------------
// The feedagg.com API address
 $url = 'http://www.feedagg.com/add_feed_api.php';
// Set up and execute the curl process
 $curl_handle = curl_init();
 curl_setopt($curl_handle, CURLOPT_URL, "$url");
 curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
 curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
 curl_setopt($curl_handle, CURLOPT_POST, 1);
 curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "FeedURL=".urlencode('http://www.feedagg.com/blog/feed/')."&Tags=tag1,tag2&UserName=<yourusername>");
 $buffer = curl_exec($curl_handle);
 curl_close($curl_handle);

// check for success or failure
 if (empty($buffer))
 {
      echo 'message' . "<br>";
 }
 else
 {
      echo 'success' . "<br>";
 }

//load to xml obj
 $xml = simplexml_load_string($buffer);

//sample results
 echo "code " . $xml->status_code . "<br>";
 echo "message " . $xml->status_txt . "<br>";
 echo "title " . $xml->data->title . "<br>";
 echo "submitted_url " . $xml->data->submitted_url .  "<br>";
 echo "feedagg_url " . $xml->data->feedagg_url . "<br>";
 echo "feedagg_id " . $xml->data->feedagg_id . "<br>";

Example C# Code To Submit VIA API
Courtesy of one of our users.  Thank you!


using System;
using System.Text;
using System.IO;
using System.Web;
using System.Net;
using System.Collections.Specialized;

namespace FeedAggExample
{
 public class FeedAgg
 {
 private const string FeedAggApiUrl = "http://www.feedagg.com/add_feed_api.php";

 public static string SubmitFeed(string FeedUrl, string Tags, string Username)
 {
 //set up the return value
 string returnValue = "";

 //Create a name value collection to hold the paramaters to be passed in the post
 NameValueCollection m_values = new NameValueCollection();

 //add all of the specified values
 m_values.Add("FeedURL", FeedUrl);
 m_values.Add("Tags", Tags);
 m_values.Add("UserName", Username);

 //encode the paramaters
 StringBuilder parameters = new StringBuilder();
 for (int i = 0; i < m_values.Count; i++)
 {
 EncodeAndAddItem(ref parameters, m_values.GetKey(i), m_values[i]);
 }

 try
 {
 //set up the request
 HttpWebRequest request = null;
 Uri uri = new Uri(FeedAggApiUrl);
 request = (HttpWebRequest)WebRequest.Create(uri);
 request.Method = "POST";
 request.ContentType = "application/x-www-form-urlencoded";
 request.ContentLength = parameters.ToString().Length;
 using (Stream writeStream = request.GetRequestStream())
 {
 UTF8Encoding encoding = new UTF8Encoding();
 byte[] bytes = encoding.GetBytes(parameters.ToString());
 writeStream.Write(bytes, 0, bytes.Length);
 }

 //Set up the response
 HttpWebResponse response = (HttpWebResponse)request.GetResponse();

 if (response.StatusCode == HttpStatusCode.OK)
 {
 using (Stream responseStream = response.GetResponseStream())
 {
 using (StreamReader readStream = new StreamReader(responseStream, Encoding.UTF8))
 {
 returnValue = readStream.ReadToEnd();
 }
 }
 }
 else
 {
 returnValue = String.Format("Error: There was an error processing the request. The exact error was: {0} {1}", response.StatusCode, response.StatusDescription);
 }

 }
 catch (Exception ex)
 {

 returnValue = "Exception occured while processing your request. The exception was:" + ex.Message;
 }

 return returnValue;
 }

 /// <summary>
 /// Encodes an item and ads it to the string.
 /// </summary>
 /// <param name="baseRequest">The previously encoded data.</param>
 /// <param name="dataItem">The data to encode.</param>
 /// <returns>A string containing the old data and the previously encoded data.</returns>
 private static void EncodeAndAddItem(ref StringBuilder baseRequest, string key, string dataItem)
 {
 if (baseRequest == null)
 {
 baseRequest = new StringBuilder();
 }
 if (baseRequest.Length != 0)
 {
 baseRequest.Append("&");
 }
 baseRequest.Append(key);
 baseRequest.Append("=");
 baseRequest.Append(System.Web.HttpUtility.UrlEncode(dataItem));
 }

 }
}
Categories: New Features, News Tags: , , ,