Asterisk (*) not allowed in Status Update

status
api

#1

I’m trying to use the API endpoint:

POST : https://api.twitter.com/1.1/statuses/update.json?status=*

After seeing some suggestions about URL Encoding (percent encoding) I’m trying to encode the asterisk (*) character using %2A

Other character encoding works, as expected. But the asterisk character results in the following error:

{ “errors”: [{ “code”: 32, “message”: “Could not authenticate you.” }]}


#2

I don’t think this error code has anything to do with the tweet content.

I just tried my own app and I could tweet the asterisk as plain text.

You should check your authentication process. Make sure the tokens are correct.


#3

I’m having exactly the same issue.

Oddly the issue started randomly at the end of last week, no authentication tokens or keys have changed. I’ve even re-authenticated my app with the accounts and still encounter the same issue.

What’s confusing is I can post tweets that don’t have reserved characters in (e.g. ‘This is a test’), however as soon as I use a reserved character (e.g. #, *, etc.) in the tweet I get the error 32. I’ve made sure the whole tweet is URL / Percentage encoded.


#4

You can reproduce the error using the API Console Tool:

https://dev.twitter.com/rest/tools/console

For Authentication I chose the Oauth 1 option.


#5

Well, for the starters apigee (the API Console Tool) won’t authenticate me. Throws an error when I select Oauth 1.

I did try the console with another option selected and I could replicate the error but the question is, does your app give you the same error or is this actually a question specific to apigee?


#6

Yes, my app has the same issue.


#7

I have found the best way to do this is to use the URL escaped code for a small asterisk. See http://graphemica.com/﹡

So this:

This is an asterisk: *

would become:

This is an asterisk: %EF%B9%A1

Alternative could be %EF%BC%8A (*)


#8