Can not get any promoted-only tweet from scoped_timeline API

mobile-app-promotion
ads

#1

I have a problem when getting scoped_timeline API.

First, I create a promotable tweet and it is success.

Request

twurl -t -H ads-api.twitter.com -X POST "/0/accounts/18ce54692c5/tweet?status=Welcome to instagram app - https://cards.twitter.com/cards/18ce54692c5/1wdav"

Response
-> "HTTP/1.1 201 Created\r\n"

{ "data_type": "status", "data": { "created_at": "Tue Jun 28 08:40:04 +0000 2016", "id": 747711151362932738, "id_str": "747711151362932738", "text": "Welcome to instagram app - https:\/\/t.co\/mariQ4M3Je", ... "user": { "id": 3265646917, "id_str": "3265646917", .... }, "geo": null, "coordinates": null, "place": null, "contributors": null, "retweet_count": 0, "favorite_count": 0, "favorited": false, "retweeted": false, "possibly_sensitive": false, "scopes": { "followers": false }, "lang": "en" }, "request": { "params": { "status": "Welcome to instagram app - https:\/\/cards.twitter.com\/cards\/18ce54692c5\/1wdav", "account_id": "18ce54692c5" } } }

And then I try to get scoped_timeline API.

Request
twurl -H ads-api.twitter.com "/0/accounts/18ce54692c5/scoped_timeline?scope_to=none"

Response
{"data_type":"status","data":[],"next_cursor":null,"request":{"params":{"account_id":"18ce54692c5"}}}

Not sure why there is no result from this API.
I have also check promotable_users api.

Request
twurl -H "ads-api.twitter.com" "/0/accounts/18ce54692c5/promotable_users"

Response
{"request":{"params":{"account_id":"18ce54692c5"}},"data":[{"user_id":"3265646917","id":"e6uqa","account_id":"18ce54692c5","created_at":"2015-10-05T03:04:09Z","updated_at":"2015-10-05T03:04:09Z","deleted":false,"promotable_user_type":"FULL"}],"data_type":"promotable_user","total_count":1,"next_cursor":null}

Anyone know the possible issue?

I’m sure my tweet is not protected.


#2

You’re building the request in a wrong way.

If you take a look to your response:

{ "data_type":"status", "data":[ ], "next_cursor":null, "request":{ "params":{ "account_id":"18ce54692c5" } } }

You could see that in your request is not the param to “scope_to=none”. That’s because twitter is not recognizing it, because is ‘scoped_to’, not scope_to. You’re misspelling it.

Regards


#3

Thanks for your response.

However it still respond empty result.
twurl -t -H ads-api.twitter.com "/0/accounts/18ce54692c5/scoped_timeline?scoped_to=none"

Response
<- "" -> "HTTP/1.1 200 OK\r\n" -> "connection: close\r\n" -> "content-disposition: attachment; filename=json.json\r\n" -> "content-encoding: gzip\r\n" -> "content-length: 128\r\n" -> "content-type: application/json;charset=utf-8\r\n" -> "date: Thu, 30 Jun 2016 01:58:00 GMT\r\n" -> "server: tsa_a\r\n" -> "set-cookie: guest_id=v1%3A146725188001438553; Domain=.twitter.com; Path=/; Expires=Sat, 30-Jun-2018 01:58:00 UTC\r\n" -> "strict-transport-security: max-age=631138519\r\n" -> "x-access-level: read-write\r\n" -> "x-connection-hash: d6eb17b7514784d90271b2d9d25d9f17\r\n" -> "x-content-type-options: nosniff\r\n" -> "x-frame-options: SAMEORIGIN\r\n" -> "x-rate-limit-limit: 2000\r\n" -> "x-rate-limit-remaining: 1994\r\n" -> "x-rate-limit-reset: 1467252578\r\n" -> "x-response-time: 49\r\n" -> "x-runtime: 0.038933\r\n" -> "x-transaction: 00d29389008cf13a\r\n" -> "x-xss-protection: 1; mode=block\r\n" -> "\r\n"
{"data_type":"status","data":[],"next_cursor":null,"request":{"params":{"scoped_to":"none","account_id":"18ce54692c5"}}}


#4

The scoped_timeline will only return “promoted tweet” tweets, these are the promoted only tweets you can see in the tweet selector at ads.twitter.com when trying to create a new campaign there. This account seems to not be in a state set up for advertising and that is probably why no tweets are appearing. The owner of the account should investigate the state of the account within the scope of ads.twitter.com help (top right corner of the screen there should be a Help? link). If you query the /promoted_tweets endpoint you can check the status of tweets on the account.