Unable to determine if a tweet created from Twitter Ads Composer includes a video


I noticed that when looking up a specific tweet in the API, it is not returning any identifiable information regarding a video being included. The source of the tweet seems to be from the “Twitter Ads Composer”, and the response comes back with no entity objects or any URLs even when including the included_entities=true or tweet_mode=extended params.

URL: https://api.twitter.com/1.1/statuses/show/1006737006552993792.json?tweet_mode=extended

Truncated response:

  "created_at": "Wed Jun 13 03:16:21 +0000 2018",
  "id": 1006737006552993792,
  "id_str": "1006737006552993792",
  "full_text": "Microsoft and our LGBTQ+ employees are proud to lift up those who push for equity and inclusion.",
  "truncated": false,
  "display_text_range": [
  "entities": {
    "hashtags": [],
    "symbols": [],
    "user_mentions": [],
    "urls": []
  "source": "\u003ca href=\"https:\/\/ads-api.twitter.com\" rel=\"nofollow\"\u003eTwitter Ads Composer\u003c\/a\u003e",
  "in_reply_to_status_id": null,
  "in_reply_to_status_id_str": null,
  "in_reply_to_user_id": null,
  "in_reply_to_user_id_str": null,
  "in_reply_to_screen_name": null,
  "user": {

It looks like it’s expected behavior to not include any entity objects, but I found these two posts that both suggest there should still be a URL returned:

I also found a post mentioning the use of include_card_uri which also does not work:

As far as I can tell, the docs do not mention anything regarding the expected behavior of requesting tweets created from Twitter Ads Composer.


Hi @asch - Is there an extended_entities object appearing in these Tweets?



Hi @KvdohertyQU as far as I can tell, tweets from the same account include extended_entities as expected, but not that specific tweet described above.

Regular tweet (includes extended_entities): https://api.twitter.com/1.1/statuses/show/1027275779514753025.json?tweet_mode=extended

Ad Composer tweet (does not include extended_entities):


It appears Tweet 1006737006552993792 is a promoted Tweet as denoted by the scopes field being set to false (You can find further discussion on this in the thread you linked to: Twitter Videos returned api do not contain extended_entities?). The content for that Tweet is contained in the url entity, rather than being contained in the extended_entities as you might expect.


@KvdohertyQU You mention that the content is contained in the url entity, however there are no entities for tweet 1006737006552993792 which can be seen in the JSON response provided in my first post. The absence of the url entity is mainly the issue I’m trying to get clarity on – it sounds like promoted tweets should still have at least a url entity as described in that other thread, but that thread is several months old so I wasn’t sure if the behavior has changed since then or if this is a bug in the API?


Hi @KvdohertyQU any thoughts regarding my question above?


Hi @asch.

I appreciate your patience as we looked into this. You will need to add “&include_card_uri=true” to the request. Then the response includes "card_uri": "card://1006736909383548928".

There are a lot more details in this previous post:

Please let me know if this helps.


@hmz That is very helpful, thank you. :slight_smile: