Partial TweetLater Outage Take Two

August 17th, 2009

For a second weekend in a row, Twitter has put up defenses against a denial-of-service attack that also block all legitimate high-volume API calls from third-party applications such as TweetLater.

This issue started on Saturday afternoon (August 15th), and has been ongoing since then with very little support from Twitter and no communication about it on any of their status sites.

Please monitor the service notice that is posted above the blue menu tabs on TweetLater.com, which you will see after you have logged in to your account.

We will also publish updates here until the issue is resolved.

Update, Monday, August 17th, 1:39 PM EST: At 1:39 PM EST (10:39 AM PST) we started seeing activity from the Twitter engineers, saying that they were beginning to look into the issue.

Update, Monday, August 17th, 5:42 PM EST: Unfortunately, there is still no indication from Twitter regarding a timeframe for them solving the issue. Several other applications are affected by the same issue and other API issues at present. Some are rendered completely inoperative, while others can only limp along at best.

Update, Monday, August 17th, 8:15 PM EST: We have now enabled all Twitter automation. The Twitter API appears to be functional again.


Partial TweetLater Outage Due To Twitter Denial Of Service Attack

August 6th, 2009

Early on Thursday morning Twitter suffered a denial-of-service attack.

As part of their defense against the attack, they blocked a large number IP addresses, including, we presume IP addresses that were making high-volume calls to their API.

TweetLater’s IP addresses were also blocked in the process, since we normally make more than 40 API calls per second in the normal course of our business.

TweetLater was not part of the denial-of-service attack. We were simply caught up as innocent bystanders in Twitter’s defense against the actual attackers.

As part of the recovery from the attack, Twitter is unblocking the white-listed IP addresses of third-party applications such as TweetLater.

This unblocking process is a meticulous one and there are many IP addresses to unblock (not only TweetLater’s). According to Twitter engineers, the process can last well into Saturday.

We do not know exactly when the actual unblocking of TweetLater’s IP addresses will occur, but we do know they will be unblocked.

We appreciate your patience and understanding.

Normal service will resume as soon as the IP addresses have been unblocked.

Free trials of TweetLater Professional will be extended by a few days once normal service resumes.

Update: This thread on the Twitter Developer Talk Group shows that many other third-party applications were also blocked.

Update Thursday, 8:25 PM EST: We have now restored normal operations. We have also extended all active free trials of TweetLater Professional by one day.

Update Thursday, 8:38 PM EST: We spoke too soon. Sorry. Services have been paused again. Twitter is not out of the woods yet.

Update Friday, 12:24 PM EST: Some features of the online website have been restored. All automation processes are still in paused mode, because the Twitter API is still refusing to process any high-volume API requests.

Update Friday, 10:38 PM EST: There has been no change yet. The Twitter API is still refusing to process any type of volume API requests. Twitter has communicated that the denial-of-service attacks have been ongoing and have intensified on Friday, and that they believe those attacks are geopolitical in motivation. Twitter is still defending against the attacks, and has asked everyone to hang in there with them.

Update Saturday, 00:19 AM EST: The latest update from Twitter is that there is no, we repeat, no ETA on when these issues will be resolved.

Update Saturday, 8:12 AM EST: The status has not yet changed. The TweetLater web site is operational, but all Twitter automation is still paused. Blog feeds and Ping.fm automation are processing as usual. Please login to TweetLater and read the service announcement above the blue menu tabs for more details on what is paused and what is running normally.

Update Saturday, 5:44 PM EST: There has been complete and deathly silence from Twitter today. No communication about the status to application developers. We have cautiously turned on the process that publishes scheduled tweets to Twitter. There may be periods where it may be blocked, during which it will revert back to putting tweets that are older than two hours into an error condition. But, so far so good…

Update Saturday, 6:00 PM EST: Nope… As soon as you send even a small volume to the API their edge defenses simply block your IP address. It is high time that Twitter identifies who are their friends, and allow them to operate normally while defending against the bad guys. They already white-list our IP addresses, so they know exactly which IP addresses are approved ones that should be allowed to work normally.

Update Sunday, 10:55 AM EST: The status has not yet changed. All developers of third-party applications are still waiting for an update by Twitter regarding correction of the severe limitations currently imposed by the Twitter API. The last time Twitter has provided any meaningful update was on Friday.

Update Sunday, 1:54 PM EST: The status is still the same. Twitter has published an update saying that the attacks are still ongoing, and that they are still working on restoring normal access to the Twitter API. There still is no timeframe for the resolution of this issue.

Update Sunday, 4:29 PM EST: The Twitter API has now been opened for volume transactions. It appears that the issue has been resolved, and we have resumed normal operations. Existing free trials of TweetLater Professional have been extended by three additional days. Thank you for the patience and support that you have shown.


Learn How To Gain New Followers on Twitter In Two Easy Steps! Free and Guaranteed!

August 5th, 2009

Credit goes to Joshua’s comment on the previous post for sparking the idea of writing this brief article. Joshua said:

The only way to follow more people is to increase your account followers. But, what can you do in order to increase your followers if you are stuck at one of the Twitter thresholds without dumping a lot of people who aren’t following you? Why don’t you write up a follow on article with that as the focus? I would love to know your thoughts…

The question, “How do I increase my followers if I am stuck at one of Twitter’s following limits,” assumes that the only, or the best way to gain more followers is through following more people yourself.

That is an incorrect assumption. It is a pity that some folks are teaching others that this is the way to gain more followers, because it completely distorts what Twitter is about.

Twitter is a social platform, and by definition, social means interaction.

So, here is the free and guaranteed process to gain more followers on Twitter.

1. Participate in the conversation.

That means, actually read what others (those whom you are following) are saying, and compliment, add to, or comment on what they are saying.

Your purpose for getting more followers is so that they will read what you tweet, correct?

So why on earth would you expect them to read what you tweet, if you are not willing to read what others tweet?

If everyone just wanted others to read what they tweeted, Twitter will morph into one massive megaphone where everyone is shouting and nobody is listening.

2. Induce others to compliment, add to, or comment on what YOU are saying.

You will never accomplish this if all you do is tweet your teeth whitening affiliate links.

You can only do this by thoughtful and helpful tweets, in other words, tweets that make other people feel good, tweets that they find interesting, and tweets that they find helpful.

This step is absolutely required because…

People voluntarily follow others whom they find interesting.

But, not only do they voluntarily follow you, they also voluntarily reply to you and voluntarily retweet your tweets.

And that is where the viral power of Twitter kicks in!

Every time that they reply to you, THEIR followers get to see your Twitter username, and every time they retweet you, their followers get to see your Twitter username and your tweet.

Most people are curious and will check out your profile, if they notice that someone they are following is finding you interesting. And if they like your profile, they will follow you.

Now, does this mean you need to be glued to your Twitter web interface 24 x 7? Absolutely not. You must be physically present for Step #1, participating in the conversation. But, for Step #2 you can easily use the tweet scheduling feature of TweetLater to compose your tweets, and post them even when you cannot be physically in front of your computer. Most people do not appreciate it when one person dominates their Twitter stream with a barrage of tweets. You can use our free scheduling engine to spread out your gems throughout the day.

It is not how you publish your tweet that matters, it is what you say in your tweet that matters. Great content will get reaction, and useless content will silently disappear into electronic oblivion, regardless of how you got it into your Twitter timeline.

Lastly, if your idea of interesting is the posting of quotes, please pry that idea loose and cast it into the outer regions of the universe. Quotes are completely overused on Twitter. Besides, people do not want to hear from Einstein, Twain, or Confucius.

People want to hear from YOU. That is why they followed you in the first place.

Best regards,

Dewald Pretorius
Owner of TweetLater.com


Bulk Unfollow – Why You Shouldn’t and Why We Don’t Offer It

July 29th, 2009

A feature that many of our users request is the ability to bulk unfollow friends. We want to clarify here why you should not do it on your Twitter account, and why we do not offer that feature.

The rationale for the feature usually goes like this:

I want to follow a number of people and wait a few days to see who follow me back. Then I want to get rid of those who didn’t. This way I can remain within the Twitter following limits while still being able to follow new people. Then, each time I can wait for them to follow me back, bulk unfollow those who didn’t, and rinse and repeat. This is a great way to build a follower list.

Service X and service Y are doing it, so why can’t you guys also add it? It will be really nice, and if you add it I will definitely upgrade to Professional. Thanks.

It sounds like a reasonable request, doesn’t it? Except, there’s one problem with it.

Twitter hates it and calls it “following churn”.

In the Twitter rules they do reference following churn as an undesirable activity, but it is only on their Business for Twitter site that they more clearly reveal how they define following churn.

We quote:

To make sure you’re not spamming folks, we also suggest you avoid the following:

Following churn: Following and unfollowing the same people repeatedly, as well as following and unfollowing those who don’t follow back, are both violations of our terms of service.

In other words, Twitter will suspend your account if you do bulk unfollow.

There’s no “safe” way to do bulk unfollow. It’s like an on-off switch. Either you do bulk unfollow or you don’t. And if you do, you will get into trouble.

That’s the reason why we have not added bulk unfollow as a feature to TweetLater, and why we believe you should not do it on your Twitter account.


TweetLater Launches Keyword Following With Automated Twitter Profile Filters

July 28th, 2009

Something a lot of folks asked for in TweetLater is the ability to search for people to follow based on keywords.

We’ve listened to your requests and have now built in that feature.

For each of your Twitter accounts, you can specify a range of keywords. We search for Twitter users who have recently published tweets that contain those keywords.

But, we don’t stop there. We know that many spammy accounts, which you wouldn’t want to follow, might also tweet about those keywords.

So, we’ve given you the ability to automatically filter the Twitter profiles and ignore the spammy ones.

You can filter based on the following:

  • Keywords and text snippets contained in the profile bio, latest tweet, and Twitter username.
  • The age of the Twitter account.
  • Number of tweets.
  • Following-to-follower ratio.
  • Number of followers.
  • Number of friends.
  • The language of the tweets.
  • Whether or not other TweetLater users have marked as spam or blocked the Twitter user.

We take those Twitter users who pass through your filters and place them on a queue where you can cast a human eye over them and make the final decision whether you want to follow them or not. (You can also tell the system to skip this review step and auto-follow those profiles).

Furthermore, you can pause and unpause the TweetLater Friend Finder at your discretion, and you can even tell it to automatically pause when it has found a certain number of potential friends, or when your own following-to-follower ratio exceeds a certain percentage.

It’s power at your disposal to follow quality Twitter users while you remain 100% in control. And in the process we save you the hundreds of hours you would have spent to achieve the same results.

Keyword following is available to TweetLater Professional users and, as always, this new feature is included in the low monthly subscription fee.

If you are a Professional user, you already have access to and will find the TweetLater Friend Finder keyword following under the Followers item in the menu.

If you have not yet taken up the 7-day free trial of Professional, then now is a great time to do so.

Now you can say buh-bye to spammers!


TweetLater Surges Past 100,000 Users Mark

July 26th, 2009

Sunday, July 26th, 2009 marks an important milestone in the development and growth of TweetLater.com.

At around 2:00 PM EST our number of users went past the 100,000 mark.

Many thanks to all our wonderful users who have made this possible.

It is our honor and privilege that you have chosen us to improve your productivity on Twitter.


Twitter Account Suspensions

July 5th, 2009

Sunday, July 5th, 2009: A lot of people with legitimate Twitter accounts are currently suffering from having their accounts suspended (late Sunday afternoon).

It is not TweetLater’s doing or fault. So, please do not submit a TweetLater support request about it.

We just heard back from Twitter via email, and they said : “Spamcloud hit. We’re working on restoring accounts.

We just need to be patient. The suspended accounts will be restored.

Update: We have no idea exactly what a “spam cloud” means. It is probably Twitter staff lingo for a massive spam attack.

Update: We have seen during previous spam attacks that Twitter tends to shoot first and ask questions later and indiscriminately lay down carpet bombing when their system comes under a spam attack. A lot of innocent-bystander accounts get massacred in the process, which they then have to restore afterwards. This is most likely what has happened again.

Update: We have no idea how long it will take Twitter to restore the wrongly suspended accounts. We do not have insight into that information.

Update: Twitter has now posted an update about the suspensions on their status blog.

Earlier today, we accidentally suspended a number of accounts.

We regret the human error that led to these mistaken suspensions and we are working to restore the affected accounts—we expect this to be completed in the next several hours.

One additional note: some the accounts suspended were using the third-party site Tweetlater. However, Tweetlater is not to blame for these suspensions nor is it in violation of our Terms.

Update: It appears that the issue has now been resolved and most suspended accounts have been restored. If your account is still suspended, please submit a support request at http://help.twitter.com and ask them to look at your account.

Post-Mortem by Dewald Pretorius, Owner of TweetLater.com

It is a real pity, but probably unavoidable, that some people have a tendency to jump to premature conclusions. A lot of folks almost immediately blamed TweetLater for the suspensions, and some even canceled their TweetLater accounts.

The reason why many TweetLater users were affected was very simple. We service a very large number of Twitter accounts. At time of writing that number exceeded 100,000 Twitter accounts. If Twitter makes a mistake that affects a large number of accounts, then naturally a large number of TweetLater users will be affected by the mistake.

I work very hard to maintain an excellent working relationship with Alex Payne, Matt Sanford, and Doug Williams of the Twitter API team, and with Del Harvey of the Twitter Spam team. They are always very responsive, professional, and helpful whenever I approach them.

And, I work equally hard to ensure, with the help and advice of the Twitter folks mentioned above, that TweetLater features always remain within the Twitter Terms and never does anything that Twitter frowns upon. TweetLater is my bread and butter, the thing that pays my mortgage. Hence, being a good neighbor of Twitter is absolutely essential, no, it is absolutely non-negotiable to me. I regularly turn down feature requests and offers of large additional payments for some new features, which I know will not sit well with Twitter and potentially jeopardize my service’s standing with Twitter.

The lesson from this is as follows: Things are often much simpler and far more benign than what some people want to believe. Perhaps it’s because conspiracy theories are more interesting, or more sensational, that people want to believe them rather than just the simple mundane truth. I don’t know.

It’s just very frustrating to watch your service, your passion, come under attack when you have done nothing wrong.

Nevertheless, there is also an upside to this matter, and I will conclude with it and close this post on a positive note.

This issue has created an enormous amount of free publicity for TweetLater, which makes me very happy.


Twitter Changes “From” Display

July 2nd, 2009

Twitter implemented an API change on July 1st, 2009 so that all tweets originating via the API now have “from API” in the source display area of the Twitter timelines.

Previously the source area said “from web” when the originating application did not supply a source parameter when it publishes the tweet.

For the time being, TweetLater will continue to not provide a source parameter, which means your scheduled tweets will all have “from API” in the source display area.

We may evaluate this matter at a later date and decide if we should send a source parameter so that the tweets have “from TweetLater” in the source area.

Your feedback in the comments will be appreciated.

Update: Just want to clarify the following:

  1. This was a change that Twitter unilaterally implemented on their side.
  2. We cannot manipulate or change the source display. There are only two choices namely “from API” or “from TweetLater”. If we continue to not supply a source parameter, the tweets will continue to say “from API”.
  3. We cannot go back to “from web” because Twitter does not allow that. From July 1 the only tweets that say “from web” are those that were manually entered in the web interface of Twitter.com.
  4. It is not only TweetLater that is affected by this. The tweets from all third-party applications that don’t supply a source parameter now say “from API”.
  5. Chances are that we will leave it as is, i.e., as saying “from API” for TweetLater. Our service is fortunately large enough, popular enough, and receive sufficient word-of-mouth exposure that we have no need to use the source display as an advertisement for TweetLater.

Update: This comment from Ryan deserves highlighting here in the post body: “If you are providing your followers with something valuable they won’t care where the tweets are coming from.” So true, Ryan! When we change over to the OAuth authentication method of Twitter, we may not have a choice anymore in terms of the source label. Our understanding is that when an application uses OAuth, all tweets from that application are automatically labeled with the name of that application. We will be changing over to OAuth as soon as Twitter takes their OAuth authentication out of beta testing. To be clear, changing to OAuth is not optional for a Twitter application. Twitter is going to deprecate the username/password authentication method.


TweetLater Rolls Out Integrated DM Manager With Automated SPAM Control!

June 3rd, 2009

Nobody needs to tell you that direct message SPAM is ever increasing on Twitter. Just try and wade through your DM inbox on some days.

We have just launched our brand-new integrated Direct Message Manager, where you can manage the DMs of all your Twitter accounts on one single page, in one integrated view.

From that page you can DM the senders, unfollow or block them, forward the DM to someone else, and more.

But even more powerful are the SPAM rules that you can define. The system will apply your rules every time you open or refresh your Direct Message Manager, and get rid of any unwanted DMs.

You can tell the system to just delete a DM when you mark it as SPAM, or delete it and unfollow the person, or delete it and block the person, etc.

Furthermore, you can also enter keyphrases that we must monitor. If someone sends you a DM that contains one of those keyphrases, we will automatically apply your SPAM rules to that DM.

In addition, you can also tell the system to look at what other TweetLater users think of person who sent you a DM. If someone else has already marked it as SPAM, you can tell us to automatically mark it as SPAM on all your Twitter accounts as well.

The Direct Message Manager is available to TweetLater Professional users (and those on the free trial of TweetLater Professional).

In keeping with our commitment, this powerful new feature comes at no additional charge.

You can access the Direct Message Manager by logging in to your TweetLater account, clicking the DMs menu tab, and then the DM Manager sub-menu tab.


TweetLater Scheduled Maintenance: Saturday May 30, 2009

May 29th, 2009

TweetLater.com will be unavailable on Saturday May 30, 2009 between 8:00 AM EST and 11:00 AM EST.

During that time no automation will take place, and scheduled tweets and DMs will not be published.

When the site is available again, scheduled tweets and DMs that should have been published during the maintenance window will be published as soon as possible. Follower processing will then also resume where it stopped at the start of the window.

If you have any time-critical tweets or DMs, please modify their scheduled times now so that the times fall outside the maintenance window.

This blog and the support ticket system will remain online during the maintenance window.

Update:

The maintenance has been completed.

If you are still seeing the “down for maintenance page” with the message about propagation of the new IP address, you may want to consider switching over to use the DNS servers at OpenDNS.com on your computer.


Recurring Tweets Issue

May 25th, 2009

In the fight against spam over the weekend, something horrible went wrong with new code in the tweet posting script. In some cases it duplicated scheduled recurring tweets. Go figure. Fix one thing and break another.

All recurring tweets that appear to be duplicates have been placed in the red error condition for you to review.

You can either bulk delete them with the Tweets, Delete function in the top menus, or, if it is a valid recurring tweet, you can simply edit and reschedule it.

There should be one non-red recurring (and still active) tweet, of which all the red ones are duplicates.

You may also find that some of your Ping.fm recurring tweets have been advanced several recurs into the future. Unfortunately we cannot fix that by means of a script. We ask that you edit those recurring tweets and reset the scheduled date and time to what it is supposed to be.

Apologies for the inconvenience.


TweetLater Follower Vetting Improved – See How Others Decided

May 18th, 2009

As you probably know, the new follower vetting feature of TweetLater is very popular and very powerful in helping you follow only those folks you want to follow and yet enjoy the time-saving benefits of automation at the same time.

If you haven’t tried it yet, please do so. Follower vetting interrupts the auto-follow process for 72 hours and gives you the opportunity to decide whether you want to follow, ignore, or block a new follower.

Up to now you’ve been able to define your rules, which pre-selected the decisions for you so that you could quickly scan the list and record the decisions. But, you had no insight into how other people decided over the same followers. Did they approve the person, ignore the person, or block the person? You didn’t know.

We have now added aggregate (and anonymous) information to each new follower that will tell you what percentage of people approved the person, what percentage ignored the person, and what percentage blocked the person.

We hope this helps you keeping your Friends list in high quality, and getting rid of Twitter spammers.

To activate follower vetting on your Twitter account, login to TweetLater, click the Accounts menu tab and then the List Accounts sub-menu tab. Then click the Edit link of your Twitter account.

Select the vet new followers option. Important: You must also select either the auto-follow option or the welcome note option (or both), for follower vetting to work. If you don’t select either of those options, then there will never be anything to vet.

We’ve just switched on this feature on May 18, 2009. Over the coming weeks and months you will see more and more followers with percentages greater than zero, as we accumulate everyone’s decisions.

As part of this enhancement, and since we now keep a history of your decisions, you will now also never see the same follower more than once in your vetting list. That will deal very sweetly with the people who play the follow, unfollow, follow, unfollow game.


TweetLater Announces Its API For Developers

May 9th, 2009

We are very pleased to announce that TweetLater now has an Application Programming Interface (API), which can be used by other developers to integrate their applications with TweetLater.

Twitter’s API is what enables you to use applications such as TweetDeck, Seesmic Desktop, Digsby, etc.

With TweetLater’s API those developers can now expand the functions of their applications and enable you to use TweetLater in those applications.

The API enables you to add, edit, and delete scheduled tweets. TweetLater Professional users can manipulate recurring tweets as well as scheduled @replies and DMs. More features will be added in the future. We just wanted to “get the API out the door” with this initial set of functions and not get bogged down in “enhancement paralysis”.

There is no additional charge for using the API.

The detail specs of the API are available at:

http://www.tweetlaterapi.com


Delegate Your Twitter Account Management to Free and Professional Users

May 1st, 2009

Change is good, it is often said, and we hope this change will be good from your perspective.

Up to now you could delegate the management of your Twitter account to another TweetLater Professional user.

That has now changed.

You can now delegate your Twitter account management to both TweetLater Free and TweetLater Professional users.

What they can do on your account is determined by the TweetLater features they have access to in their accounts.

If you need someone to simply enter and edit scheduled tweets for you, then all they need is a TweetLater Free account.

If you want them to schedule recurring tweets, use TweetCockpit, etc., then they would need a TweetLater Professional account.

You can delegate your account to as many TweetLater users as you want.

Note: You still need a TweetLater Professional account to be able to do the delegation.


Server Issue April 27, 2009

April 27th, 2009

There is an issue with the TweetLater server. We’re investigating.

Further updates will follow.

Update April 27, 8:02 am — The server ran out of memory during the night. Everything is back online again.


Purge Your Direct Message Inbox with TweetLater

April 26th, 2009

Tired of manually deleting hundreds of direct messages from your DM Inbox?

No need to do that anymore.

With TweetLater you can now run a purge on your DM Inbox, and delete all DMs, DMs older than 7 days, or DMs older than 30 days.

The feature is available to TweetLater Free and TweetLater Professional users.

To access it, login to TweetLater, click the blue DM menu tab in the top menu bar, and then the Purge DMs sub-menu tab.


The Twitter API Team Seriously Rocks

April 23rd, 2009

I want to give credit to Alex Payne, Matt Sanford, and Doug Williams of the Twitter API team.

They are a true pleasure to work with, they are extremely responsive, and they are very helpful.

Without their help, TweetLater would not be where it is today.

^DP


TweetLater Adds Authenticated Bit.ly URL Shortening

April 23rd, 2009

Up to now we have used several URL shortening services that provided you with no means to track the clicks on the links in your scheduled tweets and DMs.

We have now added bit.ly as a URL shortening option. All you need to do is add your bit.ly login and API key to your TweetLater profile. From that point forward we will shorten all your links using your bit.ly account. We won’t use any of the other URL shortening services.

This means you can track the clicks on all your links in your bit.ly account.

To activate bit.ly on your TweetLater profile, do the following:

  1. Login to your TweetLater account.
  2. Click the “Edit details” button in the sidebar on the right.
  3. Enter your bit.ly login and API key in the appropriate fields.
  4. Click the Save button.

It’s as easy as that. From that point forward all your links will be shortened using bit.ly.

This will also soon include also includes links on tweets created by your Blog Feeds, if you are a TweetLater Professional user. We have not yet now added it to the blog feeds processor.

The same two bit.ly fields are also available on the registration page, for folks who are registering new TweetLater accounts.

If you don’t have a bit.ly account, it’s super easy to register a free account at bit.ly.

If you don’t know where to get your bit.ly API key, login to your bit.ly account and click the “account” link in the top right corner of the page. Your API key is displayed on that page. Your “login” is the username that you use to login to bit.ly.


Why TweetLater Doesn’t Offer Catch-Up Or Friends/Follower Sync Features

April 22nd, 2009

We often get requests from users who want to know if we can run a script on their Twitter accounts that will go back in time and follow everyone that follows them, and unfollow everyone that does not follow them. In essence, sync-up their Friends with their Followers.

Here’s why we don’t offer that feature. It’s important to read this so that you don’t get your Twitter account into trouble.

I recently discovered that our @tweetlater account was in “restricted” status in the Twitter system. Everything appeared to be working normally on the account, except that its tweets were not being indexed by Twitter Search. I thought it was a bug in Twitter Search, and when I submitted an API support ticket, I was informed that it was because @tweetlater was in “restricted” status.

Until recently @tweetlater was not following anyone, except @spam. Folks were raising questions about why @tweetlater was not following anyone. So, I decided to run a sync script that simply took the list of existing followers, and followed everyone of them back. In other words, @tweetlater’s Friends count went from 1 to 6,000+ in a matter of 30 minutes or so. This was before Twitter implemented the “you can only follow 1,000 new people per day” rule.

At no time during that sync process did @tweetlater follow anyone that was not already a follower, and at no time did the Friends count exceed the Followers count.

And yet, this appeared to have flagged the @tweetlater account for “aggressive follow behavior”.

I might be wrong, but in my opinion this was a completely legitimate exercise and action on my @tweetlater account. Apparently the Twitter system did not think so.

The moral of this story is the following.

Think two or three times before you do any kind of sync or catch-up on your Twitter account. It’s more than likely to put your Twitter account in jeopardy.

I have been holding back on adding a sync feature to TweetLater because a few weeks ago I sent an email to Twitter asking whether it would cause trouble. The last thing I want to do is offer a feature that will get people’s Twitter accounts suspended.

I still have not received a reply to that email, but this issue with @tweetlater has basically confirmed my suspicions and vindicated my caution.

^DP

Update April 22 9:00 PM EST — This matter has now been resolved. I want to express my gratitude and thanks to the Twitter team. I am truly amazed at their responsiveness and helpfulness, despite the fact that their workload must warrant 48 hours in a day.


Problems Getting Data From Twitter

April 17th, 2009

Friday, April 17, 7:44 PM EST.

If you’re seeing a lot of entries in TweetCockpit that say the Twitter API returned zero tweets, or if you have trouble with the Vetting page, or your tweets are not being published on time or not at all, or if you’re getting a message on the Twitter account add or edit page about invalid Twitter credentials, please note the following.

Both the Twitter API and the Twitter Search API seem to be very unresponsive at the moment.

We assume it is a fallout of the new Mikeyy worm attack that struck today.

It is not a problem in the TweetLater system. It’s just that we’re not getting data back from the two APIs.

We’re even seeing it on the batch jobs that run on two different servers. They have all slowed down to an absolute crawl, and are getting tons of fail whale errors back from Twitter.

Update April 17 9:14 PM EST — Just heard back from Alex Payne at Twitter. The Twitter system is completely overloaded at the moment. It was featured on Oprah earlier today, and is right now on Larry King. That’s why the APIs are not responding.

Update April 18 6:42 AM EST — The APIs are still extremely unresponsive. Some of the API calls are going through, but the majority are still getting fail whales.

Update April 18 12:22 PM EST — As noted in the Comments, I am waiting to hear back from Twitter. Earlier this morning I have asked them to check whether their spam team has perhaps put a block on my IP address. There is a remote possibility that someone could have scheduled tweets that the spam team considers as spam. They are not supposed to block my server IP address in that case, because it does not make sense to inconvenience 40,000+ people because of some stupid thing one person did. However, I have asked them to check whether that is the case. Personally I do not think this is the case, because some of the API calls are going through. There is not a complete blackout of calls from my server IP address. With a spam block the blackout is usually 100%, i.e., no API calls get through. Twitter is on PST, so I expect to hear back from them later this afternoon.

Update April 18 7:20 PM EST — Have not heard anything back from Twitter. It is extremely frustrating. However, let us remember that it is weekend.

Update April 18 8:27 PM EST — It appears as if the Twitter folks are still combating the new Mikeyy worm. Alex Payne and Matt Sanford of the API team are usually very responsive to my requests for assistance. I’m sure I will hear back from them the moment they are able to stop working though code and can check their emails. I’m convinced that in the Twitter offices combating the worm takes priority over everything else.

Update April 19 6:56 AM EST — The problem still persists, and Twitter has not responded yet.

Update April 19 10:36 AM EST — My head is now really very sore from repeatedly banging it against the wall. We should probably all resign ourselves that this issue will only be resolved on Monday during PST business hours. My sincere apologies to more than 44,000+ of my users who have been inconvenienced by this issue. If there were anything more I could do to have it fixed I would have done it days ago. ^DP

Update April 19 7:00 PM EST — Nothing new to report yet, except that the bruise on my head is now turning purple and black around the edges. For a third-party application like TweetLater to have an API issue, which essentially cripples the service for several days, with no support, is really not an acceptable situation. Even though it’s not done maliciously, it is an issue that Twitter will have to address. ^DP

Update April 19 9:05 PM EST — I saw Alex Payne, head of the Twitter API team, online and tweeted him. He has just replied with, “Got ‘em [my emails]. We should have it sorted for you tomorrow [Monday].”

Update April 19 10:11 PM EST — You may notice a slight improvement in TweetCockpit, adding and editing Twitter accounts, and Vetting. The API issue still exists, but I thought of a crude work-around, which I’ve now implemented. It may still be spotty, meaning it may work only intermittently. At least it’s better than nothing.

Update April 20 3:36 PM EST — The issue has now been resolved. TweetLater was unfortunately caught in the cross-fire between Twitter and spammers. With the latest round of spammers and worms that have hit Twitter, they have severely tightened their API behavior analysis algorithms. Due to the very high volume of Twitter API calls that TweetLater makes around the clock (we make several calls per second), one of the spam traps in the tightened algorithms was unfortunately triggered. As they say, **it happens. I have added additional code on my side to try and prevent this from again happening in the future. I will extend trial periods before end of day today. Follower processing will, over the next 8 hours, resume where it left off on Friday. ^DP

Update April 20 5:16 PM EST — A further update regarding follower processing. The normal 8-hour cycle of follower processing has resumed. Your account will be processed within the next 8 hours, and all the followers that followed you since Friday will be picked up. However, I’m seeing that the API is slow, which could be just because it is very busy or because the unblock is still filtering through all of Twitter’s networking equipment. The API usually speeds up late at night when the load is not so heavy. I’m expecting that things will return to normal within the next 24 hours. By then the TweetLater system should have caught up with the backlog that has built up. ^DP

The problems you’re having with TweetLater will automatically go away the moment that the Twitter API and Twitter Search API again start responding.

The trial periods of folks using the TweetLater Professional trial will be extended as soon as the issue is resolved. These extensions will be have been done between 5:20 PM EST and 5:50 PM EST.

Update April 20 9:57 PM EST — This issue is now officially resolved and closed. Follower processing has a HUGE backlog and will take 24 to 48 hours to catch up. At the time of writing there were 1.7 million unprocessed API calls on the processing queue, and the queue is still growing every second.

I want to express my sincere thanks to the Twitter API team, and to Matt Sanford in particular, for the efficient and professional help in getting this issue resolved.

Update April 21 10:38 AM EST — I have now employed a second server, which will process new API calls from the top of the processing queue. Hence, you may find that new followers of today are processed before folks who followed you during the outage. The outage has created a backlog of nearly 4 million API calls and it will take the system a few days to work through that backlog. ^DP

Update April 21 5:33 PM EST — Working through the backlog is going smoothly. There are now only 2.3 million API calls left. Piece of cake. ^DP

Update April 22 10:30 AM EST — It is official. The system has now finished working through the backlog of nearly 4 million API calls. We are now fully caught up, and just normal processing will take place from now on. At various points during the catch-up process, we were making in excess of 30 calls per second to the Twitter API, and the API handled it without blinking an eye.