Update profile banner API returns 503 error


I am trying to create a small application that updates a users profile banner using the new update_profile_banner endpoint in version 1.1 of the API. Every time I send the request I eventually get a 503 error saying that Twitter is “Over capacity”. I also get a code of 130.

I’m pretty sure the API is not over capacity at the moment. Could someone explain what is going on with this endpoint or what, if anything, I can do about it?



Can you share some details about the nature of the request you’re sending that responds this way?

How large is the image that you’re trying to upload?
What are the parameters you’re sending as part of the request?
What are you using to handle the OAuth? Is that code aware of the special circumstances of OAuth POSTs with non-standard body types such as this?
How are you encoding the image data?


I’m using the nTwitter npm library (https://github.com/AvianFlu/ntwitter) which is handling the OAuth and the post request for me.

Other than the oauth parameters, the only parameter I am sending is banner, with base64 encoded image data. The image itself is just over 2MB in size with dimensions 1252x626. I’m not sending the width/height at the moment, but I could.

The image is produced from a canvas in the browser, exported as a base64 encoded image and proxied through a node server using nTwitter on to the Twitter API.

On the other hand, I have also tried uploading one of the generated images to my account through the web interface and that returns an Internal server error too (http://cl.ly/LUxK).

Does this help?


Are you not able to upload any profile banner with your profile at all? Whether using the site or otherwise? That would more likely suggest an issue with your account that perhaps Twitter Support could help you resolve.

What’s the disposition of the image data that you’re sending? Is it a GIF, PNG, or JPEG?


The image I’m sending is a PNG.

I can try with other accounts, but as I’m developing an app here I would prefer not to use my main account. The account I’m trying to do this with at the moment is https://twitter.com/phil_test_2. Can you see any reason why the API would return 503 errors when trying to update the banner for this account? Or why the website would return “Internal Server Error”?

I just tried to upload a header image from the web interface to another of my test accounts, @phil_test_1, and that too resulted in an Internal Server Error.

Is therre anything that can be done?


I´m experiencing the same problem, but i also tried tweetpony, python-twitter, twython, tweetpy, and they all return Internal Server Error.
Is this a known issue?


hi, i am trying to update profile banner using api v 1.1 but it returns {“errors”:[{“message”:“Internal error”,“code”:131}]}

i have submit base64 encodec banner image , width, height, offset_top, offset_left and access tokens

let me know what was the error here i dont understand what is “Internal error”


Hi there,

I am also getting a 503 error. I’m using the twit npm module to upload a 25kb png file encoded in base64. The only parameter I’m sending is the image data. I am able to successfully upload images using media/upload and include those in new tweets so I’m not sure why this isn’t working.