Zum Hauptinhalt springen

Einführung

Mit der Einführung der v2 der X API haben wir ein neues Datenrückgabeformat sowie eine neue Methode zur Anforderung verschiedener Objekte und fields übernommen, die wir schlicht das X API v2-Format nennen. Im Abschnitt zu allgemeinen Unterschieden erfahren Sie mehr über einige Änderungen, die für Standard- und Enterprise-Nutzer relevant sind. Zusätzlich haben wir einen spezifischen Leitfaden für das Standard v1.1 Native-Format, das Enterprise-Native Enriched-Format und das Enterprise-Activity Streams-Format zusammengestellt, der hilft, fields zuzuordnen und erklärt, welche fields und expansions Sie verwenden müssen, um die neuen v2 fields anzufordern. Möglicherweise interessiert Sie auch unser visuelles Datenformat-Migrationstool, mit dem Sie die Unterschiede zwischen dem X API v1.1-Datenformat und dem X API v2-Format schnell erkennen können.

Allgemeine Unterschiede

Anfordern von Objekten und fields

Eine der größten Änderungen zwischen den Endpoints vor v2 und v2 ist, dass die neuere Version standardmäßig nur wenige fields zurückgibt, während Standard-, Premium- und Enterprise-Endpoints die meisten fields standardmäßig liefern. Die neue Version verwendet Parameter namens fields und expansions, um gezielt zusätzliche data über die Standardwerte hinaus anzufordern. Das bedeutet, dass Sie genau die data anfordern können, die Sie benötigen, ohne fields zu verarbeiten, die für Sie keine Rolle spielen. Alle fields, die Sie anfordern und die sich auf das primäre data-Objekt beziehen, werden zusammen mit den Standardwerten in diesem primären data-Objekt zurückgegeben. Wenn Sie jedoch erweiterte Objekte mithilfe des expansions-Parameters anfordern, werden die sekundären Objekte in einem neuen includes-Objekt zurückgegeben. Sie können die erweiterten Objekte im includes-Objekt wieder dem primären Objekt zuordnen, indem Sie das ID-Feld verwenden, das in beiden zurückgegeben wird. Wenn Sie beispielsweise das v2-Post lookup-Endpoint verwenden und den Parameter expansions=author_id in Ihre Anfrage aufnehmen, erhalten Sie das Feld author_id innerhalb des primären Post-Objekts sowie ein User-Objekt pro Post im includes-Objekt. Jedes davon enthält das standardmäßige id-Feld, mit dem das User-Objekt wieder dem Post-Objekt zugeordnet werden kann. So sieht das beispielsweise aus:
{
  "data": [
    {
      "author_id": "2244994945",
      "id": "1397568983931392004",
      "text": "Die X Developer Platform. Ooh la la! https://t.co/iGTdPXBfOv https://t.co/Ze8z8EODdg"
    }
  ],
  "includes": {
    "users": [
      {
        "id": "2244994945",
        "name": "Twitter Dev",
        "username": "TwitterDev"
      }
    ]
  }
}

Aktualisiertes JSON-Design

Zusätzlich zu den Änderungen daran, wie bestimmte fields angefordert werden, führt die X API v2 auch neue JSON-Designs für die von den APIs zurückgegebenen Objekte ein, einschließlich Post- und user-Objekten.
  • Auf der JSON-Root-Ebene geben die Standard-endpoints Post-Objekte in einem statuses-Array zurück, während die X API v2 ein data-Array zurückgibt.
  • Anstatt auf Retweeted- und Quoted-„statuses“ zu verweisen, verweist das JSON der X API v2 auf Retweeted und Quoted Tweets. Viele Legacy- und veraltete fields wie contributors und user.translator_type werden entfernt.
  • Anstatt sowohl favorites (im Post-Objekt) als auch favourites (im User-Objekt) zu verwenden, verwendet die X API v2 den Begriff like.
  • X übernimmt die Konvention, dass JSON-Werte ohne Wert (zum Beispiel null) nicht in die Payload geschrieben werden. Post- und user-Attribute werden nur aufgenommen, wenn sie einen Nicht-null-Wert haben.   

Neue v2 fields

Wir haben außerdem dem Post-Objekt einen neuen Satz von fields hinzugefügt, darunter:
  • Ein conversation_id field
  • Zwei neue Annotations fields, darunter Kontext und entities
  • Mehrere neue metrics fields
  • Ein neues reply_setting field, das anzeigt, wer auf einen bestimmten Post antworten kann

Migration vom Datenformat Standard v1.1 zu v2

Falls noch nicht geschehen, empfehlen wir, zunächst die Einführung zur Migration der Datenformate zu lesen. Sie könnten auch an unserem visuellen Tool zur Datenformat-Migration interessiert sein, mit dem Sie die Unterschiede zwischen dem X API v1.1 data format und dem X API v2 format schnell nachvollziehen können. Das Datenformat Standard v1.1, auch als natives Format bekannt, ist das primäre Format, das mit den Standard v1.1-endpoints bereitgestellt wird. Wenn Sie das Premium-Produkt verwenden, beachten Sie bitte den Leitfaden zu Native Enriched. Enterprise-Kunden verwenden je nach Einrichtung in der Gnip-Konsole möglicherweise Native Enriched oder Activity Streams. 

Standard v1.1 vs. v2-Payload-Struktur

Die folgende Tabelle zeigt die übergeordneten Objekte und das Format, die Sie in v2 im Vergleich zum v1.1-Format erwarten können.
v1.1-Strukturv2-Struktur
Standard{
all tweet object fields,
“entities”: {
“hashtags”: [],
“symbols”: [],
“user_mentions”: [],
“urls”: [],
“media”: []
},
“extended_entities”: ,
“user”: ,
“place”: ,
“retweeted_status/quoted_status”
}
{
“data”: [{
“id”,
“text”,

“edit_history_tweet_ids”
}]
}
Mit definierten fields- und expansions-Parametern{
“data”: [{
tweet object fields,
“entities”: {
“hashtags”: [],
“cashtags”: [],
“mentions”: [],
“urls”: [],
},
“attachments”: {

“media_keys”: [],

“poll_ids”: []

}
}],
“includes”: [
“tweets”: [tweet objects],
“users”: [user objects],
“media”: [media objects],
“places”: [place object],

“polls”: [poll object]
],

“matching_rules”: []
}
Feldzuordnung Der folgende Abschnitt beschreibt, welche v1.1-Felder welchen v2-Feldern zugeordnet sind und welche v2-Parameter erforderlich sind, um das neue Feld zu erhalten.  

Tweet-Objekt

Twitter-Format 1.1Twitter v2-FormatErforderliche v2-Parameter
created_atdata.created_attweet.fields=created_at
idN/A id ist ein String
id_strdata.idStandard
textdata.textStandard
full_textN/A text enthält den vollständigen Text
truncatedN/A text enthält den vollständigen Text
display_text_rangeN/A text enthält den vollständigen Text
edit_historydata.edit_history_tweet_idsStandard
edit_controlsdata.edit_controlstweet.fields=edit_controls
editabledata.edit_controls.is_edit_eligibletweet.fields=edit_controls
entitiesdata.entitiestweet.fields=entities
entities.user_mentionsdata.entities.mentionstweet.fields=entities
entities.symbolsdata.entities.cashtagstweet.fields=entities
entities.hashtagsdata.entities.hashtagstweet.fields=entities
entities.urlsdata.entities.urlstweet.fields=entities
entities.mediaincludes.mediaexpansions=attachments.media_keys
extended_entitiesdata.attachmentstweet_fields=attachments
in_reply_to_status_idN/A referenced_tweets.id ist ein String
in_reply_to_status_id_strdata.referenced_tweets.id (if type=replied_to)expansions=referenced_tweets.id
in_reply_to_user_idN/A in_reply_to_user_id ist ein String
in_reply_to_user_id_strdata.in_reply_to_user_idtweet.fields=in_reply_to_user_id
in_reply_to_screen_nameincludes.users..usernametweet.fields=in_reply_to_user_id&expansions=entities.mentions.username
userincludes.usersexpansions=author_id
geodata.geo.place_idtweet.fields=geo
coordinatesdata.geo.place_idexpansions=geo.place_id
placedata.geo.place_idexpansions=geo.place_id
retweeted_statusdata.referenced_tweets.id (if type=retweeted)expansions=referenced_tweets.id
is_quoted_statusNicht verfügbar
quoted_status_idN/A referenced_tweets.id ist ein String
quoted_status_id_strdata.referenced_tweets.id (if type=quoted)expansions=referenced_tweets.id
quoted_status_permalinkNicht verfügbar
quoted_statusdata.referenced_tweets (if type=quoted)expansions=referenced_tweets.id
retweet_countdata.public_metrics.retweet_counttweet.fields=public_metrics
favorite_countdata.public_metrics.like_counttweet.fields=public_metrics
favoritedNicht verfügbar
retweetedNicht verfügbar
possibly_sensitivedata.possibly_sensitivetweet.fields=possibly_sensitive
langdata.langtweet.fields=lang
scopesNicht verfügbar
withhelddata.withheldtweet.fields=withheld
Beispiel
Tweet-Objekt in 1.1

Beispiel-URI mit Parametern:

https://api.x.com/1.1/statuses/lookup.json?id=1359554366051504129&tweet_mode=extended
Tweet-Objekt und Anfrage mit v2

Beispiel-URI mit Parametern:

https://api.x.com/2/tweets?ids=1359554366051504129&tweet.fields=attachments,author_id,context_annotations,conversation_id,created_at,entities,geo,id,in_reply_to_user_id,lang,possibly_sensitive,public_metrics,referenced_tweets,reply_settings,text,withheld
{
“created_at”: “Wed Feb 10 17:26:34 +0000 2021”,
“id”: 1359554366051504129,
“id_str”: “1359554366051504129”,
“text”: “Nur zu, folgen Sie einem weiteren Welpen-Account. Wir urteilen nicht. \n\nWir stellen die manage follows endpoints für die neue… https://t.co/3cBZKZUevF vor”,
“truncated”: true,
“entities”: {
“hashtags”: [],
“symbols”: [],
“user_mentions”: [],
“urls”: [{
“url”: “https://t.co/3cBZKZUevF”,
“expanded_url”: “https://twitter.com/i/web/status/1359554366051504129”,
“display_url”: “twitter.com/i/web/status/1…”,
“indices”: [
111,
134
]
}]
},

“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”: {

},
“geo”: null,
“coordinates”: null,
“place”: null,
“contributors”: null,
“is_quote_status”: false,
“retweet_count”: 18,
“favorite_count”: 98,
“favorited”: false,
“retweeted”: false,
“possibly_sensitive”: false,
“possibly_sensitive_appealable”: false,
“lang”: “en”
}
{
“data”: [{
“id”: “1359554366051504129”,
“text”: “Nur zu, folgen Sie einem weiteren Welpen-Account. Wir urteilen nicht. \n\nWir stellen die manage follows endpoints für die neue #TwitterAPI vor. Sie können jetzt die v2 API verwenden, um Accounts zu folgen und zu entfolgen. Mehr erfahren https://t.co/mtpd9VIMDa”,
“lang”: “en”,
“conversation_id”: “1359554366051504129”,
“possibly_sensitive”: false,
“reply_settings”: “everyone”,
“created_at”: “2021-02-10T17:26:34.000Z”,
“author_id”: “2244994945”,
“public_metrics”: {
“retweet_count”: 18,
“reply_count”: 11,
“like_count”: 98,
“quote_count”: 7
},
“entities”: {
“hashtags”: [{
“start”: 110,
“end”: 121,
“tag”: “TwitterAPI”
}],
“urls”: [{
“start”: 194,
“end”: 217,
“url”: “https://t.co/mtpd9VIMDa”,
“expanded_url”: “https://devcommunity.x.com/t/introducing-the-new-manage-follows-endpoints-to-the-twitter-api-v2/149465”,
“display_url”: “devcommunity.com/t/introducing-…”,
“images”: [{
“url”: “https://pbs.twimg.com/news_img/1359554367905427457/DczC72__?format=jpg&name=orig”,
“width”: 1200,
“height”: 630
},
{
“url”: “https://pbs.twimg.com/news_img/1359554367905427457/DczC72__?format=jpg&name=150x150”,
“width”: 150,
“height”: 150
}
],
“status”: 200,
“title”: “Einführung der neuen manage follows endpoints für die X API v2”,
“description”: “Folgen oder nicht folgen? Sie können diese Frage jetzt ganz nach Belieben mit der X API v2 beantworten. Heute freuen wir uns, die Veröffentlichung der neuen manage follows endpoints in der neuen Twitter API bekannt zu geben. Wie bereits angedeutet, als wir vor etwas mehr als einem Monat die follows lookup endpoints eingeführt haben, ist die Möglichkeit, Follow-Beziehungen zu verwalten, endlich da. Dies sind einige unserer beliebtesten endpoints in unseren v1.1 APIs, daher freuen wir uns, eine breite Palette von Anwendungsfällen in der X API v2 zu ermöglichen. W…”,
“unwound_url”: “https://devcommunity.x.com/t/introducing-the-new-manage-follows-endpoints-to-the-twitter-api-v2/149465
}]
},
“context_annotations”: [{
“domain”: {
“id”: “46”,
“name”: “Markenkategorie”,
“description”: “Kategorien innerhalb von Markenvertikalen, die den Umfang von Marken eingrenzen”
},
“entity”: {
“id”: “781974596752842752”,
“name”: “Dienstleistungen”
}
},
{
“domain”: {
“id”: “47”,
“name”: “Marke”,
“description”: “Marken und Unternehmen”
},
“entity”: {
“id”: “10045225402”,
“name”: “Twitter”
}
}
]
}]
}

User-Objekt

Twitter 1.1-FormatTwitter v2-FormatErforderliche v2-Parameter
user_iddata.author_idtweet.fields=author_id
user.idN/A verwenden includes.users.id
user.id_strincludes.users.idexpansions=author_id
user.nameincludes.users.nameexpansions=author_id
user.screen_nameincludes.user.usernameexpansions=author_id
user.locationincludes.users.locationexpansions=author_id&user.fields=location
user.descriptionincludes.users.descriptionexpansions=author_id&user.fields=description
user.urlincludes.users.urlexpansions=author_id&user.fields=entities
user.entitiesincludes.users.entities
user.entities.url.urls.urlincludes.users.entities.url.urls.url
user.entities.url.urls.expanded_urlincludes.users.entities.url.urls.expanded_urlexpansions=author_id&user.fields=entities
user.entities.url.urls.display_urlincludes.users.entities.url.urls.display_urlexpansions=author_id&user.fields=entities
user.entities.url.urls.display_url.indicies[0]includes.users.entities.url.urls.startexpansions=author_id&user.fields=entities
user.entities.url.urls.display_url.indicies[1]includes.users.entities.url.urls.endexpansions=author_id&user.fields=entities
user.protectedincludes.users.protectedexpansions=author_id&user.fields=protected
user.followers_countincludes.users.public_metrics.followers_countexpansions=author_id&user.fields=public_metrics
user.friends_countincludes.users.public_metrics.following_countexpansions=author_id&user.fields=public_metrics
user.listed_countincludes.users.public_metrics.listed_countexpansions=author_id&user.fields=public_metrics
user.created_atincludes.users.created_atexpansions=author_id&user.fields=created_at
user.favourites_count
user.verifiedincludes.users.verifiedexpansions=author_id&user.fields=verified
user.statuses_countincludes.users.public_metrics.tweet_countexpansions=author_id&user.fields=public_metrics
user.profile_image_url_httpsincludes.users.profile_image_urlexpansions=author_id&user.fields=profile_image_url
Beispiel
User-Objekt in 1.1User-Objekt und Anfrage mit v2
”user”: {
“id”: 2244994945,
“id_str”: “2244994945”,
“name”: “Twitter Dev”,
“screen_name”: “TwitterDev”,
“location”: “127.0.0.1”,
“description”: “The voice of the #TwitterDev team and your official source for updates, news, and events, related to the #TwitterAPI.”,
“url”: “https://t.co/3ZX3TNiZCY”,
“entities”: {
“url”: {
“urls”: [{
“url”: “https://t.co/3ZX3TNiZCY”,
“expanded_url”: “https://developer.x.com/en/community”,
“display_url”: “developer.x.com/en/community”,
“indices”: [
0,
23
]
}]
},
“description”: {
“urls”: []
}
},
“protected”: false,
“followers_count”: 517232,
“friends_count”: 2032,
“listed_count”: 1722,
“created_at”: “Sat Dec 14 04:35:55 +0000 2013”,
“favourites_count”: 2134,
“utc_offset”: null,
“time_zone”: null,
“geo_enabled”: true,
“verified”: true,
“statuses_count”: 3677,
“lang”: null,
“contributors_enabled”: false,
“is_translator”: false,
“is_translation_enabled”: false,
“profile_background_color”: “FFFFFF”,
“profile_background_image_url”: “http://abs.twimg.com/images/themes/theme1/bg.png”,
“profile_background_image_url_https”: “https://abs.twimg.com/images/themes/theme1/bg.png”,
“profile_background_tile”: false,
“profile_image_url”: “http://pbs.twimg.com/profile_images/1354494203451961345/d8HkZl6p_normal.jpg”,
“profile_image_url_https”: “https://pbs.twimg.com/profile_images/1354494203451961345/d8HkZl6p_normal.jpg”,
“profile_banner_url”: “https://pbs.twimg.com/profile_banners/2244994945/1611792896”,
“profile_link_color”: “0084B4”,
“profile_sidebar_border_color”: “FFFFFF”,
“profile_sidebar_fill_color”: “DDEEF6”,
“profile_text_color”: “333333”,
“profile_use_background_image”: false,
“has_extended_profile”: true,
“default_profile”: false,
“default_profile_image”: false,
“following”: null,
“follow_request_sent”: null,
“notifications”: null,
“translator_type”: “regular”
}
{
“data”: [{
“author_id”: “2244994945”,
“id”: “1362876655061073928”,
“text”: “From our living rooms to yours 🐱‍💻🛋️Our developer advocates have some exciting Twitch streams and virtual events planned to help you get started with the new #TwitterAPI. Check out the schedule for details, and let us know if you want to see more!\n👇\nhttps://t.co/cixDY9qkvH”
}],
“includes”: {
“users”: [{
“public_metrics”: {
“followers_count”: 517233,
“following_count”: 2034,
“tweet_count”: 3677,
“listed_count”: 1727
},
“username”: “TwitterDev”,
“entities”: {
“url”: {
“urls”: [{
“start”: 0,
“end”: 23,
“url”: “https://t.co/3ZX3TNiZCY”,
“expanded_url”: “https://developer.x.com/en/community”,
“display_url”: “developer.x.com/en/community”
}]
},
“description”: {
“hashtags”: [{
“start”: 17,
“end”: 28,
“tag”: “TwitterDev”
},
{
“start”: 105,
“end”: 116,
“tag”: “TwitterAPI”
}
]
}
},
“description”: “The voice of the #TwitterDev team and your official source for updates, news, and events, related to the #TwitterAPI.”,
“name”: “Twitter Dev”,
“verified”: true,
“location”: “127.0.0.1”,
“id”: “2244994945”,
“protected”: false,
“url”: “https://t.co/3ZX3TNiZCY”,
“profile_image_url”: “https://pbs.twimg.com/profile_images/1354494203451961345/d8HkZl6p_normal.jpg”,
“created_at”: “2013-12-14T04:35:55.000Z”
}]
}
}

Objekte für Entities und erweiterte Entities

Twitter 1.1-FormatTwitter v2-FormatErforderliche v2-ParameterTyp in v2
entitiesdata.entitiestweet.fields=entitiesobject
entities.hashtagsdata.entities.hashtagstweet.fields=entitiesarray of objects
entities.hashtags.indices[0]data.entities.hashtags.starttweet.fields=entitiesnumber
entities.hashtags.indices[1]data.entities.hashtags.endtweet.fields=entitiesnumber
entities.hashtags.textdata.entities.hashtags.tagtweet.fields=entitiesstring
entities.urlsdata.entities.urlstweet.fields=entitiesarray of objects
entities.urls.indices[0]data.entities.urls.starttweet.fields=entitiesnumber
entities.urls.indices[1]data.entities.urls.endtweet.fields=entitiesnumber
entities.urls.urldata.entities.urls.urltweet.fields=entitiesstring
entities.user_mentionsdata.entities.mentionstweet.fields=entitiesarray of objects
entities.user_mentions.indicies[0]data.entities.mentions.starttweet.fields=entitiesnumber
entities.user_mentions.indicies[1]data.entities.mentions.endtweet.fields=entitiesnumber
entities.user_mentions.screen_namedata.entities.mentions.usernametweet.fields=entitiesstring
entities.symbolsdata.entities.cashtagstweet.fields=entitiesarray of objects
entities.symbols.indices[0]data.entities.cashtags.starttweet.fields=entitiesnumber
entities.symbols.indices[1]data.entities.cashtags.endtweet.fields=entitiesnumber
entities.symbols.textdata.entities.cashtags.tagtweet.fields=entitiesstring
entities.mediaincludes.mediaexpansions=attachments.media_keysarray of objects
entities.media.id_strincludes.media.media_keyexpansions=attachments.media_keysstring
entities.media.typeincludes.media.media.typeexpansions=attachments.media_keysstring
entities.media.media_urlk. A.; verwenden Sie includes.media.urlstring
entities.media.media_url_httpsincludes.media.urlexpansions=attachments.media_keys&media.fields=urlstring
entities.media.url
entities.media.display_url
entities.media.expanded_url
entities.media.media_url_httpsincludes.media.preview_image_urlexpansions=attachments.media_keys&media.fields=preview_image_urlstring
extended_entitiesdata.attachmentstweet.fields=attachmentsobject
extended_entitiesdata.attachments.media_keystweet.fields=attachmentsarray of objects
extended_entities.mediaincludes.mediaexpansions=attachments.media_keysarray of objects
extended_entities.media.id_strincludes.media.media_keyexpansions=attachments.media_keysstring
extended_entities.media.typeincludes.media.media.typeexpansions=attachments.media_keysstring
extended_entities.media.sizes.thumb.wNicht verfügbar
extended_entities.media.sizes.thumb.hNicht verfügbar
extended_entities.media.sizes.thumb.resizeNicht verfügbar
extended_entities.media.sizes.large.wincludes.media.heightexpansions=attachments.media_keys&media.fields=height
extended_entities.media.sizes.large.hincludes.media.widthexpansions=attachments.media_keys&media.fields=width
extended_entities.media.sizes.large.resizeNicht verfügbar
extended_entities.media.sizes.small.wNicht verfügbar
extended_entities.media.sizes.small.hNicht verfügbar
extended_entities.media.sizes.small.resizeNicht verfügbar
extended_entities.media.sizes.medium.wNicht verfügbar
extended_entities.media.sizes.medium.hNicht verfügbar
extended_entities.media.sizes.medium.resizeNicht verfügbar
extended_entities.media.media_url_httpsincludes.media.urlexpansions=attachments.media_keys&media.fields=urlstring
extended_entities.media.media_url_httpsincludes.media.preview_image_urlexpansions=attachments.media_keys&media.fields=preview_image_urlstring
extended_entities.media.video_info.duration_millisincludes.media.duration_msexpansions=attachments.media_keys&media.fields=duration_msnumber
Beispiel
Entities und erweiterte Entities in v1.1 (mit Video)Entities, Attachments und includes in v2

https://api.x.com/2/tweets?ids=1370161532013735937&expansions=attachments.media_keys,entities.mentions.username&tweet.fields=entities&user.fields=created_at,description,entities,location,name,profile_image_url,protected,public_metrics,url,username,verified,withheld&media.fields=duration_ms,height,media_key,preview_image_url,public_metrics,type,url,width
”entities”: {
“hashtags”: [{
“text”: “test”,
“indices”: [
8,
13
]
}],
“symbols”: [],
“user_mentions”: [{
“screen_name”: “TwitterDev”,
“name”: “Twitter Dev”,
“id”: 2244994945,
“id_str”: “2244994945”,
“indices”: [
31,
42
]
}],
“urls”: [{
“url”: “https://t.co/XVLZ3uwikc”,
“expanded_url”: “https://developer.x.com/en”,
“display_url”: “developer.x.com/en”,
“indices”: [
91,
114
]
}],
“media”: [{
“id”: 1370161464028196868,
“id_str”: “1370161464028196868”,
“indices”: [
115,
138
],
“media_url”: “http://pbs.twimg.com/ext_tw_video_thumb/1370161464028196868/pu/img/cGLCoXBHVktkwlC5.jpg”,
“media_url_https”: “https://pbs.twimg.com/ext_tw_video_thumb/1370161464028196868/pu/img/cGLCoXBHVktkwlC5.jpg”,
“url”: “https://t.co/dz4oByygWA”,
“display_url”: “pic.x.com/dz4oByygWA”,
“expanded_url”: “https://twitter.com/furiouscamper/status/1370161532013735937/video/1”,
“type”: “photo”,
“sizes”: {
“thumb”: {
“w”: 150,
“h”: 150,
“resize”: “crop”
},
“small”: {
“w”: 383,
“h”: 680,
“resize”: “fit”
},
“large”: {
“w”: 720,
“h”: 1280,
“resize”: “fit”
},
“medium”: {
“w”: 675,
“h”: 1200,
“resize”: “fit”
}
}
}]
},
“extended_entities”: {
“media”: [{
“id”: 1370161464028196868,
“id_str”: “1370161464028196868”,
“indices”: [
115,
138
],
“media_url”: “http://pbs.twimg.com/ext_tw_video_thumb/1370161464028196868/pu/img/cGLCoXBHVktkwlC5.jpg”,
“media_url_https”: “https://pbs.twimg.com/ext_tw_video_thumb/1370161464028196868/pu/img/cGLCoXBHVktkwlC5.jpg”,
“url”: “https://t.co/dz4oByygWA”,
“display_url”: “pic.x.com/dz4oByygWA”,
“expanded_url”: “https://twitter.com/furiouscamper/status/1370161532013735937/video/1”,
“type”: “video”,
“sizes”: {
“thumb”: {
“w”: 150,
“h”: 150,
“resize”: “crop”
},
“small”: {
“w”: 383,
“h”: 680,
“resize”: “fit”
},
“large”: {
“w”: 720,
“h”: 1280,
“resize”: “fit”
},
“medium”: {
“w”: 675,
“h”: 1200,
“resize”: “fit”
}
},
“video_info”: {
“aspect_ratio”: [
9,
16
],
“duration_millis”: 5140,
“variants”: [{
“bitrate”: 950000,
“content_type”: “video/mp4”,
“url”: “https://video.twimg.com/ext_tw_video/1370161464028196868/pu/vid/480x852/rAuFVMEqs0MeP4P4.mp4?tag=12
},
{
“bitrate”: 2176000,
“content_type”: “video/mp4”,
“url”: “https://video.twimg.com/ext_tw_video/1370161464028196868/pu/vid/720x1280/ZxVL5qYO-DNVuSyq.mp4?tag=12
},
{
“content_type”: “application/x-mpegURL”,
“url”: “https://video.twimg.com/ext_tw_video/1370161464028196868/pu/pl/EGVpuZpo-wYxTNCq.m3u8?tag=12
},
{
“bitrate”: 632000,
“content_type”: “video/mp4”,
“url”: “https://video.twimg.com/ext_tw_video/1370161464028196868/pu/vid/320x568/M7VtocAwKPFdkqzF.mp4?tag=12
}
]
},
“additional_media_info”: {
“monetizable”: false
}
}]
}
{
“data”: [{
“entities”: {
“hashtags”: [{
“start”: 8,
“end”: 13,
“tag”: “test”
}],
“mentions”: [{
“start”: 31,
“end”: 42,
“username”: “TwitterDev”
}],
“urls”: [{
“start”: 91,
“end”: 114,
“url”: “https://t.co/XVLZ3uwikc”,
“expanded_url”: “https://developer.x.com/en”,
“display_url”: “developer.x.com/en”,
“status”: 200,
“title”: “Anwendungsfälle, Tutorials & Dokumentation”,
“description”: “Veröffentlichen & analysieren Sie Tweets, optimieren Sie Anzeigen & schaffen Sie einzigartige Kundenerlebnisse mit der Twitter API, Twitter Ads API & Twitter für Websites. Lassen Sie uns mit der Entwicklung beginnen.”,
“unwound_url”: “https://developer.x.com/en
},
{
“start”: 115,
“end”: 138,
“url”: “https://t.co/dz4oByygWA”,
“expanded_url”: “https://x.com/furiouscamper/status/1370161532013735937/video/1”,
“display_url”: “pic.x.com/dz4oByygWA”
}
]
},
“id”: “1370161532013735937”,
“text”: “Noch ein #test mit einem Video und @TwitterDev Erwähnung. Freue mich auf die neue Dokumentation zur Formatmigration! https://t.co/XVLZ3uwikc https://t.co/dz4oByygWA”,
“attachments”: {
“media_keys”: [
“7_1370161464028196868”
]
}
}],
“includes”: {
“media”: [{
“type”: “video”,
“height”: 1280,
“public_metrics”: {
“view_count”: 37
},
“width”: 720,
“media_key”: “7_1370161464028196868”,
“duration_ms”: 5140,
“preview_image_url”: “https://pbs.twimg.com/ext_tw_video_thumb/1370161464028196868/pu/img/cGLCoXBHVktkwlC5.jpg
}],
“users”: [{
“public_metrics”: {
“followers_count”: 517233,
“following_count”: 2034,
“tweet_count”: 3677,
“listed_count”: 1727
},
“created_at”: “2013-12-14T04:35:55.000Z”,
“profile_image_url”: “https://pbs.twimg.com/profile_images/1354494203451961345/d8HkZl6p_normal.jpg”,
“description”: “Die Stimme des #TwitterDev-Teams und Ihre offizielle Quelle für Updates, Neuigkeiten und Veranstaltungen rund um die #TwitterAPI.”,
“verified”: true,
“id”: “2244994945”,
“username”: “TwitterDev”,
“protected”: false,
“entities”: {
“url”: {
“urls”: [{
“start”: 0,
“end”: 23,
“url”: “https://t.co/3ZX3TNiZCY”,
“expanded_url”: “https://developer.x.com/en/community”,
“display_url”: “developer.x.com/en/community”
}]
},
“description”: {
“hashtags”: [{
“start”: 17,
“end”: 28,
“tag”: “TwitterDev”
},
{
“start”: 105,
“end”: 116,
“tag”: “TwitterAPI”
}
]
}
},
“url”: “https://t.co/3ZX3TNiZCY”,
“name”: “Twitter Dev”,
“location”: “127.0.0.1”
}]
}
}

Place-Objekt

Twitter 1.1-FormatTwitter v2-FormatErforderliche v2-Parameter
placedata.geo.place_idtweet.fields=geo
place.idincludes.places.idexpansions=geo.place_id
place.id.place_typeincludes.places.place_typeexpansions=geo.place_id&place.fields=place_type
place.id.nameincludes.places.nameexpansions=geo.place_id&place.fields=name
place.id.full_nameincludes.places.full_nameexpansions=geo.place_id
place.id.country_codeincludes.places.country_codeexpansions=geo.place_id&place.fields=country_code
place.id.countryincludes.places.countryexpansions=geo.place_id&place.fields=country
place.id.contained_withinincludes.places.contained_withinexpansions=geo.place_id&place.fields=contained_within
place.id.bounding_box.typeincludes.places.geo.typeexpansions=geo.place_id&place.fields=place_type
place.id.bounding_box.coordinatesincludes.places.geo.bboxexpansions=geo.place_id&place.fields=geo
place.id.attributesincludes.places.propertiesexpansions=geo.place_id&place.fields=geo
Beispiel
Place-Objekt in v1.1Place-Objekt in v2

https://api.x.com/2/tweets?ids=1370161532013735937&expansions=geo.place_id&tweet.fields=geo&place.fields=contained_within,country,country_code,full_name,geo,id,name,place_type
”place”: {
“id”: “f7eb2fa2fea288b1”,
“url”: “https://api.x.com/1.1/geo/id/f7eb2fa2fea288b1.json”,
“place_type”: “city”,
“name”: “Lakewood”,
“full_name”: “Lakewood, CO”,
“country_code”: “US”,
“country”: “United States”,
“contained_within”: [],
“bounding_box”: {
“type”: “Polygon”,
“coordinates”: [
[
[
-105.193475,
39.60973
],
[
-105.053164,
39.60973
],
[
-105.053164,
39.761974
],
[
-105.193475,
39.761974
]
]
]
},
“attributes”:
}
{
“data”: [{
“id”: “1370161532013735937”,
“text”: “Another #test with a video and @TwitterDev mention. Excited for new format migration docs! https://t.co/XVLZ3uwikc https://t.co/dz4oByygWA”,
“geo”: {
“place_id”: “f7eb2fa2fea288b1”
}
}],
“includes”: {
“places”: [{
“name”: “Lakewood”,
“place_type”: “city”,
“full_name”: “Lakewood, CO”,
“id”: “f7eb2fa2fea288b1”,
“geo”: {
“type”: “Feature”,
“bbox”: [
-105.193475,
39.60973,
-105.053164,
39.761974
],
“properties”:
},
“country_code”: “US”,
“country”: “United States”
}]
}
Nächste Schritte

Migration vom Native Enriched-Datenformat zu v2

Das Native Enriched-Datenformat wird von unseren Enterprise-Produkten verwendet. Das Native Enriched-Datenformat wurde aktualisiert, um Metadaten zu bearbeiteten Tweets bereitzustellen. Weitere Informationen zu Edit-Tweet-Metadaten finden Sie auf der Seite Edit Tweets – Grundlagen. Wenn Sie die Standard-v1.1-Endpunkte verwenden, lesen Sie bitte den Leitfaden von Standard v1.1 zu v2. Wenn Sie die Enterprise-Produkte mit Activity Streams verwenden, haben wir ebenfalls einen Leitfaden von Activity Streams zu v2 für Sie. X API v2 führt neue JSON-Designs für Tweet- und User-Objekte ein.
  • Auf der JSON-Stammebene gibt das Native Enriched-Format Tweet-Objekte in einem results-Array zurück, während X API v2 ein data-Array zurückgibt.
  • Anstelle der Verwendung sowohl von favorites (im Tweet-Objekt) als auch von favourites (im User-Objekt) verwendet X API v2 den Begriff like.
  • X folgt der Konvention, dass JSON-Werte ohne Wert (zum Beispiel null) nicht in die Nutzlast geschrieben werden. Tweet- und User-Attribute werden nur aufgenommen, wenn sie nicht null sind.
  • Alle id-Felder in v2 liegen im String-Format vor  
Zusätzlich zu den Änderungen am neuen JSON-Format haben wir dem Tweet-Objekt auch einen neuen Satz von fields hinzugefügt, darunter:
  • conversation_id
  • reply_settings
  • alt_text bei Medien
  • Zwei neue Annotations-fields, einschließlich context und entities
  • Mehrere neue metrics-fields
  • Mehrere neue polls-fields  
Viele veraltete und abgekündigte fields werden entfernt:
  • contributors
  • Bestimmte entities.media- und extended_entities.media-fields
  • filter_level
  • timestamp_ms
  • truncated

Native Enriched vs v2-Payload-Struktur

Die folgende Tabelle zeigt die übergeordneten Objekte und das Format, das Sie bei v2 im Vergleich zum Native-Enriched-Format erwarten können.
Native-Enriched-Strukturv2-Struktur
Standard{
tweet object fields,

“user”: ,
“place”: ,
“entities”: {
“hashtags”: [],
“urls”: [],
“user_mentions”: [],
“symbols”: [],
“annotations”: [],
“media”: []
},
“extended_entities”: ,
“matching_rules”: []
}
{
“data”: [{
“id”,
“text”,

“edit_history_tweet_ids”
}]
}
Mit definierten Parametern für fields und expansions{
“data”: [{
tweet object fields,
“entities”: {
“hashtags”: [],
“cashtags”: [],
“mentions”: [],
“urls”: [],
},
“attachments”: {
“media_keys”: [],
“poll_ids”: []
}
}],
“includes”: [
“tweets”: [user objects],
“users”: [user objects],
“media”: [media objects],
“places”: [place object],
“polls”: [poll object]
],
“matching_rules”: []
}
Feldzuordnung Der folgende Abschnitt beschreibt, welche Native-Enriched-Felder welchen v2-Feldern zugeordnet sind und welche v2-Parameter erforderlich sind, um das neue Feld zu erhalten.  

Tweet-Objekt

Native Enriched-FormatTwitter v2-FormatErforderliche v2-ParameterTyp in v2
created_atdata.created_attweet.fields=created_atString
idN. v. – siehe id
id_strdata.idStandardString
textdata.textStandardString
edit_historydata.edit_history_tweet_idsStandardArray
edit_controlsdata.edit_controlstweet.fields=edit_controlsObjekt
editabledata.edit_controls.is_edit_eligibletweet.fields=edit_controlsBoolean
display_text_rangeN. v. – text enthält den vollständigen Text
sourcedata.sourcetweet.fields=sourceString
truncatedN. v. – text enthält den vollständigen Text
Not availabledata.conversation_idtweet.fields=conversation_idString
Not availabledata.reply_settingstweet.fields=reply_settingsString
in_reply_to_status_idN. v. – siehe referenced_tweets.id
in_reply_to_status_id_strdata.referenced_tweets.id (if type=replied_to)expansions=referenced_tweets.idString
in_reply_to_user_idN. v. – siehe in_reply_to_user_id_str
in_reply_to_user_id_strdata.in_reply_to_user_idtweet.fields=in_reply_to_user_idString
in_reply_to_screen_nameincludes.users..usernametweet.fields=in_reply_to_user_id&expansions=entities.mentions.usernameString
userincludes.usersexpansions=author_idObjekt
user.id_strdata.author_idtweet.fields=author_idString
geodata.geo.place_idtweet.fields=geo
coordinatesdata.geo.place_idtweet.fields=geo
placedata.geo.place_idtweet.fields=geo
is_quoted_statusdata.referenced_tweets.id (if type=quoted)tweet.fields=referenced_tweetsString
extended_tweet.full_textN. v. – text ist der vollständige Text
Not availabledata.public_metricstweet.fields=public_metricsObjekt
quote_countdata.public_metrics.quote_counttweet.fields=public_metricsInt
reply_countdata.public_metrics.reply_counttweet.fields=public_metricsInt
retweet_countdata.public_metrics.retweet_counttweet.fields=public_metricsInt
favorite_countdata.public_metrics.like_counttweet.fields=public_metricsInt
Not availabledata.non_public_metricstweet.fields=non_public_metricsObjekt
Not availabledata.non_public_metrics.impression_counttweet.fields=non_public_metricsInt
Not availabledata.non_public_metrics.url_link_counttweet.fields=non_public_metricsInt
Not availabledata.non_public_metrics.user_profile_counttweet.fields=non_public_metricsInt
Not availabledata.organic_metricstweet.fields=organic_metricsObjekt
Not availabledata.organic_metrics.like_counttweet.fields=organic_metricsInt
Not availabledata.organic_metrics.retweet_counttweet.fields=organic_metricsInt
Not availabledata.organic_metrics.reply_counttweet.fields=organic_metricsInt
Not availabledata.organic_metrics.impression_counttweet.fields=organic_metricsInt
Not availabledata.organic_metrics.url_link_counttweet.fields=organic_metricsInt
Not availabledata.organic_metrics.user_profile_counttweet.fields=organic_metricsInt
Not availabledata.promoted_metricstweet.fields=promoted_metricsObjekt
Not availabledata.promoted_metrics.like_counttweet.fields=promoted_metricsInt
Not availabledata.promoted_metrics.retweet_counttweet.fields=promoted_metricsInt
Not availabledata.promoted_metrics.reply_counttweet.fields=promoted_metricsInt
Not availabledata.promoted_metrics.impression_counttweet.fields=promoted_metricsInt
Not availabledata.promoted_metrics.url_link_counttweet.fields=promoted_metricsInt
Not availabledata.promoted_metrics.user_profile_counttweet.fields=promoted_metricsInt
contributorsNot availableNicht verfügbar
entitiesdata.entitiestweet.fields=entitiesObjekt
entities.user_mentionsdata.entities.mentionstweet.fields=entitiesArray von Objekten
entities.symbolsdata.entities.cashtagstweet.fields=entitiesArray von Objekten
entities.hashtagsdata.entities.hashtagstweet.fields=entitiesArray von Objekten
entities.urlsdata.entities.urlstweet.fields=entitiesArray von Objekten
entities.mediaincludes.mediaexpansions=attachments.media_keysArray von Objekten
entities.annotationstweet.fields=entities,context_annotationsObjekt
entities.annotations.contextdata.context_annotationstweet.fields=entities,context_annotationsArray von Objekten
No equivalentdata.context_annotations.domaintweet.fields=context_annotationsObjekt
entities.annotations.context.context_domain_id_strdata.context_annotations.domain.idtweet.fields=context_annotationsString
entities.annotations.context.context_domain_idNot availableNicht verfügbar – siehe data.context_annotations.domain.id für String
entities.annotations.context.context_domain_namedata.context_annotations.domain.nametweet.fields=context_annotationsString
entities.annotations.context.context_domain_descriptiondata.context_annotations.domain.descriptiontweet.fields=context_annotationsString
No equivalentdata.context_annotations.entitytweet.fields=context_annotationsObjekt
entities.annotations.context.context_entity_id_strdata.context_annotations.entity.idtweet.fields=context_annotationsString
entities.annotations.context.context_entity_idNot availableNicht verfügbar – siehe data.context_annotations.entity.id für String
entities.annotations.context.context_entity_namedata.context_annotations.entity.nametweet.fields=context_annotationsString
entities.annotations.context.context_entity_descriptiondata.context_annotations.entity.descriptiontweet.fields=context_annotationsString
entities.annotations.entitydata.entities.annotationstweet.fields=entities,context_annotationsArray von Objekten
extended_entitiesdata.attachmentstweet.fields=attachmentsObjekt
favoritedNot availableNicht verfügbar
retweetedNot availableNicht verfügbar
retweeted_status
possibly_sensitivedata.possibly_sensitivetweet.fields=possibly_sensitiveBoolean
langdata.langtweet.fields=langString
filter_levelNot availableNicht verfügbar
scopesNot availableNicht verfügbar
timestamp_msNot availableNicht verfügbar
withhelddata.withheldtweet.fields=withheldArray von Objekten
matching_rulesmatching_rulesArray von Objekten
matching_rules.idNot availableNicht verfügbar
matching_rules.id_strmatching_rules.idStandard mit Filtered streamString
matching_rules.tagmatching_rules.tagStandard mit Filtered streamString

User-Objekt

Natives angereichertes FormatTwitter v2-FormatErforderliche v2-ParameterTyp in v2
userincludes.usersexpansions=author_idArray von Objekten
user.idNicht verfügbarN/V – siehe includes.users.idString
user.id_strincludes.users.idexpansions=author_idString
user.nameincludes.users.nameexpansions=author_idString
user.screen_nameincludes.users.usernameexpansions=author_idString
user.locationincludes.users.locationexpansions=author_id&user.fields=locationObjekt
user.descriptionincludes.users.descriptionexpansions=author_id&user.fields=descriptionString
Nicht verfügbarincludes.users.urlexpansions=author_id&user.fields=urlString
user.followers_countincludes.users.public_metrics.followers_countexpansions=author_id&user.fields=public_metricsInt
user.friends_countincludes.users.public_metrics.following_countexpansions=author_id&user.fields=public_metricsInt
user.listed_countincludes.users.public_metrics.listed_countexpansions=author_id&user.fields=public_metricsInt
user.created_atincludes.users.created_atexpansions=author_id&user.fields=created_atString
user.favourites_countNoch nicht verfügbar
user.verifiedincludes.users.verifiedexpansions=author_id&user.fields=verifiedBoolean
Nicht verfügbarincludes.users.pinned_tweet_idexpansions=author_id&user.fields=pinned_tweet_idString
user.statuses_countincludes.users.public_metrics.tweet_countexpansions=author_id&user.fields=public_metricsInt
user.profile_image_url_httpsincludes.users.profile_image_urlexpansions=author_id&user.fields=profile_image_urlString
user.translator_typeNicht verfügbarNicht verfügbar
user.utc_offsetNicht verfügbarNicht verfügbar
user.time_zoneNicht verfügbarNicht verfügbar
user.geo_enabledNicht verfügbarNicht verfügbar
user.langNicht verfügbarNicht verfügbar – aus Tweet-Sprache ableiten
user.contributors_enabledNicht verfügbarNicht verfügbar
user.is_translatorNicht verfügbarNicht verfügbar
user.profile_background_colorNicht verfügbarNicht verfügbar
user.profile_background_image_urlNicht verfügbarNicht verfügbar
user.profile_background_image_url_httpsNicht verfügbarNicht verfügbar
user.profile_background_titleNicht verfügbarNicht verfügbar
user.profile_sidebar_border_colorNicht verfügbarNicht verfügbar
user.profile_sidebar_fill_colorNicht verfügbarNicht verfügbar
user.profile_text_colorNicht verfügbarNicht verfügbar
user.profile_user_background_imageNicht verfügbarNicht verfügbar
user.profile_image_urlSiehe includes.users.profile_image_url
user.default_profileNicht verfügbarNicht verfügbar
user.default_profile_imageNicht verfügbarNicht verfügbar
user.followingNicht verfügbarNicht verfügbar
user.follow_request_sentNicht verfügbarNicht verfügbar
user.notificationsNicht verfügbarNicht verfügbar
user.withheld_in_countriesincludes.users.withheldexpansions=author_id&user.fields=withheldObjekt
user.protectedincludes.users.protectedexpansions=author_id&user.fields=protectedBoolean
Nicht verfügbarincludes.users.entitiesexpansions=author_id&user.fields=entitiesObjekt
Nicht verfügbarincludes.users.entities.urlexpansions=author_id&user.fields=entitiesObjekt
Nicht verfügbarincludes.users.entities.url.urlsexpansions=author_id&user.fields=entitiesArray von Objekten
Nicht verfügbarincludes.users.entities.url.urls.startexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.url.urls.endexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.url.urls.urlexpansions=author_id&user.fields=entitiesString
user.urlincludes.users.entities.url.urls.expanded_urlexpansions=author_id&user.fields=entitiesString
Nicht verfügbarincludes.users.entities.url.urls.display_urlexpansions=author_id&user.fields=entitiesString
Nicht verfügbarincludes.users.entities.descriptionsexpansions=author_id&user.fields=entitiesObjekt
Nicht verfügbarincludes.users.entities.descriptions.hashtagsexpansions=author_id&user.fields=entitiesArray von Objekten
Nicht verfügbarincludes.users.entities.descriptions.hashtags.startexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.descriptions.hashtags.endexpansions=author_id&user.fields=entitiesInt
Enthalten in user.descriptionincludes.users.entities.descriptions.hashtags.tagexpansions=author_id&user.fields=entitiesString
Nicht verfügbarincludes.users.entities.descriptions.mentionsexpansions=author_id&user.fields=entitiesArray von Objekten
Nicht verfügbarincludes.users.entities.descriptions.mentions.startexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.descriptions.mentions.endexpansions=author_id&user.fields=entitiesInt
Enthalten in user.descriptionincludes.users.entities.descriptions.mentions.usernameexpansions=author_id&user.fields=entitiesString
Nicht verfügbarincludes.users.entities.descriptions.cashtagsexpansions=author_id&user.fields=entitiesArray von Objekten
Nicht verfügbarincludes.users.entities.descriptions.cashtags.startexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.descriptions.cashtags.endexpansions=author_id&user.fields=entitiesInt
Enthalten in user.descriptionincludes.users.entities.descriptions.cashtags.tagexpansions=author_id&user.fields=entitiesString

Entities- und Expanded-Entities-Objekte

Natives Enriched-FormatTwitter v2-FormatErforderliche v2‑ParameterTyp in v2
entitiesdata.entitiestweet.fields=entitiesObjekt
entities.hashtagsdata.entities.hashtagstweet.fields=entitiesArray von Objekten
entities.hashtags.indices[0]data.entities.hashtags.starttweet.fields=entitiesInteger
entities.hashtags.indices[1]data.entities.hashtags.endtweet.fields=entitiesInteger
entities.hashtags.textdata.entities.hashtags.tagtweet.fields=entitiesString
entities.urlsdata.entities.urlstweet.fields=entitiesArray von Objekten
entities.urls.indices[0]data.entities.urls.starttweet.fields=entitiesInteger
entities.urls.indices[1]data.entities.urls.endtweet.fields=entitiesInteger
entities.urls.urldata.entities.urls.urltweet.fields=entitiesString
entities.urls.expanded_urldata.entities.urls.expanded_urltweet.fields=entitiesString
entities.urls.display_urldata.entities.urls.display_urltweet.fields=entitiesString
entities.urls.unwound.urldata.entities.urls.unwound_urltweet.fields=entitiesString
entities.urls.unwound.statusdata.entities.urls.statustweet.fields=entitiesString
entities.urls.unwound.titledata.entities.urls.titletweet.fields=entitiesString
entities.urls.unwound.descriptiondata.entities.urls.descriptiontweet.fields=entitiesString
Nicht verfügbardata.entities.urls.imagestweet.fields=entitiesArray von Objekten
Nicht verfügbardata.entities.urls.images.urltweet.fields=entitiesString
Nicht verfügbardata.entities.urls.images.widthtweet.fields=entitiesInt
Nicht verfügbardata.entities.urls.images.heighttweet.fields=entitiesInt
entities.user_mentionsdata.entities.mentionstweet.fields=entitiesArray von Objekten
entities.user_mentions.indicies[0]data.entities.mentions.starttweet.fields=entitiesInteger
entities.user_mentions.indicies[1]data.entities.mentions.endtweet.fields=entitiesInteger
entities.user_mentions.screen_namedata.entities.mentions.usernametweet.fields=entitiesString
entities.symbolsdata.entities.cashtagstweet.fields=entitiesArray von Objekten
entities.symbols.indices[0]data.entities.cashtags.starttweet.fields=entitiesInteger
entities.symbols.indices[1]data.entities.cashtags.endtweet.fields=entitiesInteger
entities.symbols.textdata.entities.cashtags.tagtweet.fields=entitiesString
entities.media ODER extended_entities.mediaincludes.mediaexpansions=attachments.media_keysArray von Objekten
entities.media.id_str ODER extended_entities.media.id_strincludes.media.media_keyexpansions=attachments.media_keysString
entities.media.id ODER extended_entities.media.idNicht verfügbar – id ist ein String
entities.media.type ODER extended_entities.media.typeincludes.media.media.typeexpansions=attachments.media_keysString
entities.media.indices ODER extended_entities.media.indicesNicht verfügbarNicht verfügbar
Nicht verfügbarincludes.media.alt_textexpansions=attachments.media_keys&media.fields=alt_textString
entities.media.additional_media_info ODER extended_entities.media.additional_media_infoNicht verfügbarNicht verfügbar
entities.media.additional_media_info.monetizable ODER extended_entities.media.additional_media_info.monetizableNicht verfügbarNicht verfügbar
entities.media.media_url ODER extended_entities.media.media_urln. v. – siehe includes.media.urlString
entities.media.media_url_https ODER extended_entities.media.media_url_httpsincludes.media.urlexpansions=attachments.media_keys&media.fields=urlString
entities.media.url OR extended_entities.media.url
entities.media.display_url OR extended_entities.media.expanded_url
entities.media.expanded_url
entities.media.media_url_httpsincludes.media.preview_image_urlexpansions=attachments.media_keys&media.fields=preview_image_urlString
extended_entitiesdata.attachmentstweet_fields=attachmentsObjekt
extended_entitiesdata.attachments.media_keystweet_fields=attachmentsArray von Objekten
Nicht verfügbardata.attachments.poll_idstweet_fields=attachmentsArray von Objekten
extended_entities.media.sizes.thumb.wNicht verfügbar
extended_entities.media.sizes.thumb.hNicht verfügbar
extended_entities.media.sizes.thumb.resizeNicht verfügbar
extended_entities.media.sizes.large.wincludes.media.heightexpansions=attachments.media_keys&media.fields=height
extended_entities.media.sizes.large.hincludes.media.widthexpansions=attachments.media_keys&media.fields=width
extended_entities.media.sizes.large.resizeNicht verfügbarNicht verfügbar
extended_entities.media.sizes.small.wNicht verfügbarNicht verfügbar
extended_entities.media.sizes.small.hNicht verfügbarNicht verfügbar
extended_entities.media.sizes.small.resizeNicht verfügbarNicht verfügbar
extended_entities.media.sizes.medium.wNicht verfügbarNicht verfügbar
extended_entities.media.sizes.medium.hNicht verfügbarNicht verfügbar
extended_entities.media.sizes.medium.resizeNicht verfügbarNicht verfügbar
extended_entities.media.media_url_httpsincludes.media.preview_image_urlexpansions=attachments.media_keys&media.fields=preview_image_urlString
extended_entities.media.video_info.aspect_ratioNicht verfügbarNicht verfügbar
extended_entities.media.variantsNicht verfügbarNicht verfügbar
extended_entities.media.variants.bitrateNicht verfügbarNicht verfügbar
extended_entities.media.variants.content_typeNicht verfügbarNicht verfügbar
extended_entities.media.variants.urlNicht verfügbarNicht verfügbar
extended_entities.media.video_info.duration_millisincludes.media.duration_msexpansions=attachments.media_keys&media.fields=duration_msInt
Nicht verfügbarincludes.media.public_metricsexpansions=attachments.media_keys&media.fields=public_metricsObjekt
Nicht verfügbarincludes.media.public_metrics.view_countexpansions=attachments.media_keys&media.fields=public_metricsInt
Nicht verfügbarincludes.media.non_public_metricsexpansions=attachments.media_keys&media.fields=non_public_metricsObjekt
Nicht verfügbarincludes.media.non_public_metrics.playback_0_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.non_public_metrics.playback_25_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.non_public_metrics.playback_50_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.non_public_metrics.playback_75_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.non_public_metrics.playback_100_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.organic_metricsexpansions=attachments.media_keys&media.fields=organic_metricsObjekt
Nicht verfügbarincludes.media.organic_metrics.playback_0_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.playback_25_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.playback_50_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.playback_75_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.playback_100_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.view_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.promoted_metricsexpansions=attachments.media_keys&media.fields=promoted_metricsObject
Nicht verfügbarincludes.media.promoted_metrics.playback_0_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.playback_25_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.playback_50_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.playback_75_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.playback_100_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.view_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt

Place-Objekt

Native Enriched-FormatTwitter v2-FormatErforderliche v2-ParameterTyp in v2
placeincludes.placesexpansions=geo.place_idArray von Objekten
place.idincludes.places.idexpansions=geo.place_idString
place.urlNicht verfügbarNicht verfügbar
place.id.place_typeincludes.places.place_typeexpansions=geo.place_id&place.fields=place_typeString
place.id.nameincludes.places.nameexpansions=geo.place_id&place.fields=nameString
place.id.full_nameincludes.places.full_nameexpansions=geo.place_idString
place.id.country_codeincludes.places.country_codeexpansions=geo.place_id&place.fields=country_codeString
place.id.countryincludes.places.countryexpansions=geo.place_id&place.fields=countryString
place.id.contained_withinincludes.places.contained_withinexpansions=geo.place_id&place.fields=contained_withinArray
place.id.bounding_box.typeincludes.places.geo.typeexpansions=geo.place_id&place.fields=place_typeString
place.id.bounding_box.coordinatesincludes.places.geo.bboxexpansions=geo.place_id&place.fields=geoArray
place.id.attributesincludes.places.propertiesexpansions=geo.place_id&place.fields=geoObjekt

Umfrageobjekt

Natives angereichertes FormatTwitter-v2-FormatErforderliche v2-ParameterTyp in v2
entities.pollsincludes.pollsexpansions=attachments.poll_idsArray von Objekten
Nicht verfügbarincludes.polls.idexpansions=attachments.poll_idsString
entities.poll.optionsincludes.polls.optionsexpansions=attachments.poll_idsArray von Objekten
entities.polls.options.positionincludes.polls.options.positionexpansions=attachments.poll_idsInt
entities.polls.options.textincludes.polls.options.labelexpansions=attachments.poll_idsString
Nicht verfügbarincludes.polls.options.votesexpansions=attachments.poll_idsInt
Nicht verfügbarincludes.polls.voting_statusexpansions=attachments.poll_ids&poll.fields=voting_statusString
entities.polls.duration_minutesincludes.polls.duration_minutesexpansions=attachments.poll_ids&poll.fields=duration_minutesInt
entities.polls.end_datetimeincludes.polls.end_datetimeexpansions=attachments.poll_ids&poll.fields=end_datetimeDatum (ISO 8601)

Migration vom Activity-Streams-Datenformat zu v2

Das Activity-Streams-Datenformat ist mit unseren Enterprise-Produkten verfügbar. Das Activity-Streams-Datenformat wurde aktualisiert, um Metadaten für bearbeitete Tweets bereitzustellen. Weitere Informationen zu Edit-Tweet-Metadaten finden Sie auf der Seite Grundlagen zu Edit Tweets. Wenn Sie die Standard-v1.1-endpoints verwenden, lesen Sie bitte den Leitfaden von Standard v1.1 zu v2. Wenn Sie die Premium-endpoints oder das Native-Enriched-Format für Enterprise verwenden, lesen Sie bitte den Leitfaden von Native Enriched zu v2. X API v2 führt neue JSON-Designs für Post- und User-Objekte ein.
  • Auf der JSON-Root-Ebene gibt das Activity-Streams-Format Tweet-Objekte in einem results-Array zurück, während X API v2 ein data-Array zurückgibt.
  • Anstatt sich auf Retweeted- und Quoted-„activities“ zu beziehen, verweist X API v2 JSON auf Retweeted und Quoted Tweets.
  • Anstatt sowohl favorites (im Tweet-Objekt) als auch favourites (im User-Objekt) zu verwenden, verwendet X API v2 den Begriff like.
  • X übernimmt die Konvention, dass JSON-Werte ohne Wert (zum Beispiel null) nicht im Payload enthalten sind. Tweet- und User-Attribute werden nur aufgenommen, wenn sie nicht null sind.
  • Alle id-Felder in v2 liegen im String-Format vor.
Zusätzlich zu den Änderungen am neuen JSON-Format haben wir dem Tweet-Objekt auch einen neuen Satz von fields hinzugefügt, darunter folgende:
  • conversation_id
  • reply_settings
  • alt_text in media
  • Zwei neue Annotations-fields, einschließlich context und entities
  • Mehrere neue metrics-fields
  • Mehrere neue polls-fields
Viele Legacy- und veraltete fields werden entfernt oder ersetzt:
  • display_text_range
  • generator
  • gnip
  • link
  • objectType
  • provider
  • twitter_entities.symbols ersetzt durch data.entities.cashtags
  • Bestimmte twitter_extended_entities.media- und twitter_entities.media-fields
  • twitter_filter_level
  • twitterTimeZone
  • verb

Tweet-Objekt

Activity Streams-FormatTwitter v2-FormatErforderliche v2-ParameterTyp in v2
postedTimedata.created_attweet.fields=created_atDatum (ISO 8601)
generatorNicht verfügbarNicht verfügbar
generator.linkNicht verfügbarNicht verfügbar
generator.displayNamedata.sourcetweet.fields=sourceString
twitter_langdata.langtweet.fields=langString
Nicht verfügbardata.conversation_idtweet.fields=conversation_idString
Nicht verfügbardata.reply_settingstweet.fields=reply_settingsString
Nicht verfügbardata.possibly_sensitivetweet.fields=possibly_sensitiveBoolean
Nicht verfügbardata.withheldtweet.fields=withheldObjekt
objectTypeNicht verfügbarNicht verfügbar
verbNicht verfügbarNicht verfügbar
providerNicht verfügbarNicht verfügbar
provider.objectTypeNicht verfügbarNicht verfügbar
provider.displayNameNicht verfügbarNicht verfügbar
provider.linkNicht verfügbarNicht verfügbar
linkNicht verfügbarNicht verfügbar
display_text_rangeNicht verfügbarNicht verfügbar
objectNicht verfügbarNicht verfügbar
object.objectTypeNicht verfügbarNicht verfügbar
object.idNicht verfügbarNicht verfügbar
object.summarydata.textdefaultString
object.edit_historydata.edit_history_tweet_idsdefaultArray
object.edit_controlsdata.edit_controlstweet.fields=edit_controlsObjekt
object.editabledata.edit_controls.is_edit_eligibletweet.fields=edit_controlsBoolean
object.linkNicht verfügbarNicht verfügbar
object.postedTimedata.created_attweet.fields=created_atDatum (ISO 8601)
Abgeleitet von actor.iddata.author_idtweet.fields=created_at
twitter_filter_levelNicht verfügbarNicht verfügbar
Abgeleitet vom Benutzernamen in inReplyTo.linkdata.in_reply_to_user_idtweet.fields=in_reply_to_user_idString
Nicht verfügbardata.referenced_tweetstweet.fields=referenced_tweetsArray von Objekten
Nicht verfügbardata.referenced_tweets.typetweet.fields=referenced_tweetsString
Abgeleitet von inReplyTo.linkdata.referenced_tweets.idtweet.fields=referenced_tweetsString
Nicht verfügbardata.attachmentstweet.fields=attachmentsObjekt
Abgeleitet von twitter_entities.media.id_strdata.attachments.media_keystweet.fields=attachmentsArray
Nicht verfügbardata.attachments.poll_idstweet.fields=attachmentsArray
twitter_entitiesdata.entitiestweet.fields=entitiesObjekt
Nicht verfügbardata.entities.annotationstweet.fields=entitiesArray von Objekten
Nicht verfügbardata.entities.annotations.starttweet.fields=entitiesInt
Nicht verfügbardata.entities.annotations.endtweet.fields=entitiesInt
Nicht verfügbardata.entities.annotations.probabilitytweet.fields=entitiesFloat
Nicht verfügbardata.entities.annotations.typetweet.fields=entitiesString
Nicht verfügbardata.entities.annotations.normalized_texttweet.fields=entitiesString
twitter_entities.urlsdata.entities.urlstweet.fields=entitiesArray von Objekten
twitter_entities.urls.indices[0]data.entities.urls.starttweet.fields=entitiesInt
twitter_entities.urls.indices[1]data.entities.urls.endtweet.fields=entitiesInt
twitter_entities.urls.urldata.entities.urls.urltweet.fields=entitiesString
twitter_entities.urls.expanded_urldata.entities.urls.expanded_urltweet.fields=entitiesString
twitter_entities.urls.display_urldata.entities.urls.display_urltweet.fields=entitiesString
Nicht verfügbardata.entities.urls.imagestweet.fields=entitiesArray von Objekten
Nicht verfügbardata.entities.urls.images.urltweet.fields=entitiesString
Nicht verfügbardata.entities.urls.images.widthtweet.fields=entitiesInt
Nicht verfügbardata.entities.urls.images.heighttweet.fields=entitiesInt
gnip.urls.expanded_statusdata.entities.urls.statustweet.fields=entitiesInt
gnip.urls.expanded_url_titledata.entities.urls.titletweet.fields=entitiesString
gnip.urls.expanded_url_descriptiondata.entities.urls.descriptiontweet.fields=entitiesString
gnip.urls.expanded_urldata.entities.urls.unwound_urltweet.fields=entitiesString
twitter_entities.symbolsdata.entities.cashtagstweet.fields=entitiesArray von Objekten
twitter_entities.symbols.indices[0]data.entities.cashtags.starttweet.fields=entitiesInt
twitter_entities.symbols.indices[1]data.entities.cashtags.endtweet.fields=entitiesInt
twitter_entities.symbols.textdata.entities.cashtags.tagtweet.fields=entitiesString
twitter_entities.hashtagsdata.entities.hashtagstweet.fields=entitiesArray von Objekten
twitter_entities.hashtags.indices[0]data.entities.hashtags.starttweet.fields=entitiesInt
twitter_entities.hashtags.indices[1]data.entities.hashtags.endtweet.fields=entitiesInt
twitter_entities.hashtags.textdata.entities.hashtags.tagtweet.fields=entitiesString
twitter_entities.user_mentionsdata.entities.mentionstweet.fields=entitiesArray von Objekten
twitter_entities.user_mentions.indices[0]data.entities.mentions.starttweet.fields=entitiesInt
twitter_entities.user_mentions.indices[1]data.entities.mentions.endtweet.fields=entitiesInt
twitter_entities.user_mentions.screen_namedata.entities.mentions.tagtweet.fields=entitiesString
twitter_entities.user_mentions.id_strdata.entities.mentions.idtweet.fields=entitiesString
twitter_entities.user_mentions.idNicht verfügbarNicht verfügbar
Nicht verfügbardata.context_annotationstweet.fields=context_annotationsArray von Objekten
Nicht verfügbardata.context_annotations.domaintweet.fields=context_annotationsObjekt
Nicht verfügbardata.context_annotations.domain.idtweet.fields=context_annotationsString
Nicht verfügbardata.context_annotations.domain.nametweet.fields=context_annotationsString
Nicht verfügbardata.context_annotations.domain.descriptiontweet.fields=context_annotationsString
Nicht verfügbardata.context_annotations.entitytweet.fields=context_annotationsObjekt
Nicht verfügbardata.context_annotations.entity.idtweet.fields=context_annotationsString
Nicht verfügbardata.context_annotations.entity.nametweet.fields=context_annotationsString
Nicht verfügbardata.context_annotations.entity.descriptiontweet.fields=context_annotationsString
geodata.geotweet.fields=geoObjekt
Abgeleitet von location.linkdata.geo.place_idtweet.fields=geoString
Nicht verfügbardata.public_metricstweet.fields=public_metricsObjekt
favoritesCountdata.public_metrics.like_counttweet.fields=public_metricsInt
retweetCountdata.public_metrics.retweet_counttweet.fields=public_metricsInt
Nicht verfügbardata.public_metrics.quote_counttweet.fields=public_metricsInt
Nicht verfügbardata.public_metrics.reply_counttweet.fields=public_metricsInt
Nicht verfügbardata.non_public_metricstweet.fields=non_public_metricsObjekt
Nicht verfügbardata.non_public_metrics.impression_counttweet.fields=non_public_metricsInt
Nicht verfügbardata.non_public_metrics.url_link_counttweet.fields=non_public_metricsInt
Nicht verfügbardata.non_public_metrics.user_profile_counttweet.fields=non_public_metricsInt
Nicht verfügbardata.organic_metricstweet.fields=organic_metricsObjekt
Nicht verfügbardata.organic_metrics.like_counttweet.fields=organic_metricsInt
Nicht verfügbardata.organic_metrics.retweet_counttweet.fields=organic_metricsInt
Nicht verfügbardata.organic_metrics.reply_counttweet.fields=organic_metricsInt
Nicht verfügbardata.organic_metrics.impression_counttweet.fields=organic_metricsInt
Nicht verfügbardata.organic_metrics.url_link_counttweet.fields=organic_metricsInt
Nicht verfügbardata.organic_metrics.user_profile_counttweet.fields=organic_metricsInt
Nicht verfügbardata.promoted_metricstweet.fields=promoted_metricsObject
Nicht verfügbardata.promoted_metrics.like_counttweet.fields=promoted_metricsInt
Nicht verfügbardata.promoted_metrics.retweet_counttweet.fields=promoted_metricsInt
Nicht verfügbardata.promoted_metrics.reply_counttweet.fields=promoted_metricsInt
Nicht verfügbardata.promoted_metrics.impression_counttweet.fields=promoted_metricsInt
Nicht verfügbardata.promoted_metrics.url_link_counttweet.fields=promoted_metricsInt
Nicht verfügbardata.promoted_metrics.user_profile_counttweet.fields=promoted_metricsInt
gnip.profileLocationsNicht verfügbarNicht verfügbar
gnip.profileLocations.addressNicht verfügbarNicht verfügbar
gnip.profileLocations.address.countryNicht verfügbarNicht verfügbar
gnip.profileLocations.address.countryCodeNicht verfügbarNicht verfügbar
gnip.profileLocations.displayNameNicht verfügbarNicht verfügbar
gnip.profileLocations.geoNicht verfügbarNicht verfügbar
gnip.profileLocations.geo.coordinatesNicht verfügbarNicht verfügbar
gnip.profileLocations.geo.typeNicht verfügbarNicht verfügbar
gnip.profileLocations.objectTypeNicht verfügbarNicht verfügbar

User-Objekt

Activity Streams-FormatTwitter v2-FormatErforderliche v2-ParameterTyp in v2
actorincludes.usersexpansions=author_idArray von Objekten
Abgeleitet von actor.idincludes.users.idexpansions=author_idString
actor.displayNameincludes.users.nameexpansions=author_idString
actor.preferredUsernameincludes.users.usernameexpansions=author_idString
actor.postedTimeincludes.users.created_atexpansions=author_id&user.fields=created_atDatum (ISO 8601)
actor.summaryincludes.users.descriptionexpansions=author_id&user.fields=descriptionString
Nicht verfügbarincludes.users.pinned_tweet_idexpansions=author_id&user.fields=pinned_tweet_idString
Nicht verfügbarincludes.users.protectedexpansions=author_id&user.fields=protectedBoolean
actor.linkNicht verfügbarNicht verfügbar – aus includes.users.username konstruieren
actor.twitterTimeZoneNicht verfügbarNicht verfügbar – aus Tweet created_at ableiten
actor.utcOffsetNicht verfügbarNicht verfügbar – aus Tweet created_at ableiten
actor.favoritesCountNicht verfügbarNicht verfügbar
actor.followersCountincludes.users.public_metrics.followers_countexpansions=author_id&user.fields=public_metricsInt
actor.friendsCountincludes.users.public_metrics.following_countexpansions=author_id&user.fields=public_metricsInt
actor.listedCountincludes.users.public_metrics.listed_countexpansions=author_id&user.fields=public_metricsInt
actor.statusesCountincludes.users.public_metrics.tweet_countexpansions=author_id&user.fields=public_metricsInt
actor.languages[]Nicht verfügbarNicht verfügbar – aus Tweet lang ableiten
actor.location.displayNameincludes.users.locationexpansions=author_id&user.fields=locationString
actor.imageincludes.users.profile_image_urlexpansions=author_id&user.fields=profile_image_urlString
actor.linksincludes.users.urlexpansions=author_id&user.fields=urlString
actor.verifiedincludes.users.verifiedexpansions=author_id&user.fields=verifiedBoolean
Nicht verfügbarincludes.users.withheldexpansions=author_id&user.fields=withheldObject
Nicht verfügbarincludes.users.entitiesexpansions=author_id&user.fields=entitiesObject
Nicht verfügbarincludes.users.entities.urlexpansions=author_id&user.fields=entitiesObject
actor.linksincludes.users.entities.url.urlsexpansions=author_id&user.fields=entitiesArray von Objekten
Nicht verfügbarincludes.users.entities.url.urls.startexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.url.urls.endexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.url.urls.urlexpansions=author_id&user.fields=entitiesString
actor.links.hrefincludes.users.entities.url.urls.expanded_urlexpansions=author_id&user.fields=entitiesString
Nicht verfügbarincludes.users.entities.url.urls.display_urlexpansions=author_id&user.fields=entitiesString
Nicht verfügbarincludes.users.entities.descriptionexpansions=author_id&user.fields=entitiesObject
Nicht verfügbarincludes.users.entities.description.hashtagsexpansions=author_id&user.fields=entitiesArray von Objekten
Nicht verfügbarincludes.users.entities.description.hashtags.startexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.description.hashtags.endexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.description.hashtags.tagexpansions=author_id&user.fields=entitiesString
Nicht verfügbarincludes.users.entities.description.mentionsexpansions=author_id&user.fields=entitiesArray von Objekten
Nicht verfügbarincludes.users.entities.description.mentions.startexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.description.mentions.endexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.description.mentions.usernameexpansions=author_id&user.fields=entitiesString
Nicht verfügbarincludes.users.entities.description.cashtagsexpansions=author_id&user.fields=entitiesArray von Objekten
Nicht verfügbarincludes.users.entities.description.cashtags.startexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.description.cashtags.endexpansions=author_id&user.fields=entitiesInt
Nicht verfügbarincludes.users.entities.description.cashtags.tagexpansions=author_id&user.fields=entitiesString

Umfrageobjekt

Activity-Streams-FormatTwitter-v2-FormatErforderliche v2-ParameterTyp in v2
Nicht verfügbarincludes.pollsexpansions=attachments.poll_idsArray von Objekten
Nicht verfügbarincludes.polls.idexpansions=attachments.poll_idsString
Nicht verfügbarincludes.polls.optionsexpansions=attachments.poll_idsArray von Objekten
Nicht verfügbarincludes.polls.options.positionexpansions=attachments.poll_idsInt
Nicht verfügbarincludes.polls.options.labelexpansions=attachments.poll_idsString
Nicht verfügbarincludes.polls.options.votesexpansions=attachments.poll_idsInt
Nicht verfügbarincludes.polls.voting_statusexpansions=attachments.poll_ids&poll.fields=voting_statusString
Nicht verfügbarincludes.polls.duration_minutesexpansions=attachments.poll_ids&poll.fields=duration_minutesInt
Nicht verfügbarincludes.polls.end_datetimeexpansions=attachments.poll_ids&poll.fields=end_datetimeDatum (ISO 8601)

Place-Objekt

Activity-Streams-FormatTwitter-v2-FormatErforderliche v2-ParameterTyp in v2
locationincludes.placesexpansions=geo.place_idArray von Objekten
location.displayNameincludes.places.full_nameexpansions=geo.place_idstring
Aus location.link extrahiertincludes.places.idexpansions=geo.place_idstring
location.nameincludes.places.nameexpansions=geo.place_id&place.fields=namestring
location.country_codeincludes.places.countryexpansions=geo.place_id&place.fields=countrystring
location.twitter_place_typeincludes.places.place_typeexpansions=geo.place_id&place.fields=place_typestring
location.twitter_country_codeincludes.places.country_codeexpansions=geo.place_id&place.fields=country_codestring
location.geoincludes.places.geoexpansions=geo.place_id&place.fields=geoobject
location.geo.typeincludes.places.geo.typeexpansions=geo.place_id&place.fields=geostring
location.geo.coordinatesincludes.places.geo.bboxexpansions=geo.place_id&place.fields=geoarray
Nicht verfügbarincludes.places.geo.propertiesexpansions=geo.place_id&place.fields=geoobject

Medienobjekt

Activity-Streams-FormatTwitter-v2-FormatErforderliche v2-ParameterTyp in v2
twitter_entities.media ODER twitter_extended_entities.mediaincludes.mediaexpansions=attachments.media_keysArray von Objekten
twitter_entities.media.id_str ODER twitter_extended_entities.media.id_strincludes.media.media_keyexpansions=attachments.media_keysString
twitter_entities.media.id ODER twitter_extended_entities.media.idNicht verfügbarNicht verfügbar
twitter_entities.media.indices ODER twitter_extended_entities.media.indicesNicht verfügbarNicht verfügbar
twitter_entities.media.additional_media_info ODER twitter_extended_entities.media.additional_media_infoNicht verfügbarNicht verfügbar
twitter_entities.media.additional_media_info.monetizable ODER twitter_extended_entities.media.additional_media_info.monetizableNicht verfügbarNicht verfügbar
twitter_entities.media.media_url ODER twitter_extended_entities.media.media_urlNicht verfügbarNicht verfügbar
twitter_entities.media.media_url_https ODER twitter_extended_entities.media.media_url_httpsincludes.media.preview_image_urlexpansions=attachments.media_keys&media.fields=preview_image_urlString
twitter_entities.media.url ODER twitter_extended_entities.media.urlNicht verfügbarNicht verfügbar
twitter_entities.media.display_url ODER twitter_extended_entities.media.display_urlNicht verfügbarNicht verfügbar
twitter_entities.media.expanded_url ODER twitter_extended_entities.media.expanded_urlNicht verfügbarNicht verfügbar
twitter_entities.media.type ODER twitter_extended_entities.media.typeincludes.media.typeexpansions=attachments.media_keysString
twitter_entities.media.sizes ODER twitter_extended_entities.media.sizesNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.thumb ODER twitter_extended_entities.media.sizes.thumbNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.thumb.h ODER twitter_extended_entities.media.sizes.thumb.hNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.thumb.w ODER twitter_extended_entities.media.sizes.thumb.wNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.thumb.resize ODER twitter_extended_entities.media.sizes.thumb.resizeNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.small ODER twitter_extended_entities.media.sizes.smallNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.small.h ODER twitter_extended_entities.media.sizes.small.hNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.small.w ODER twitter_extended_entities.media.sizes.small.wNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.small.resize ODER twitter_extended_entities.media.sizes.small.resizeNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.medium ODER twitter_extended_entities.media.sizes.mediumNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.medium.h ODER twitter_extended_entities.media.sizes.medium.hNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.medium.w ODER twitter_extended_entities.media.sizes.medium.wNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.medium.resize ODER twitter_extended_entities.media.sizes.medium.resizeNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.large ODER twitter_extended_entities.media.sizes.largeNicht verfügbarNicht verfügbar
twitter_entities.media.sizes.large.h ODER twitter_extended_entities.media.sizes.large.hincludes.media.heightexpansions=attachments.media_keys&media.fields=heightInt
twitter_entities.media.sizes.large.w ODER twitter_extended_entities.media.sizes.large.wincludes.media.widthexpansions=attachments.media_keys&media.fields=widthInt
twitter_entities.media.sizes.large.resize ODER twitter_extended_entities.media.sizes.large.resizeNicht verfügbarNicht verfügbar
twitter_extended_entities.media.video_infoNicht verfügbarNicht verfügbar
twitter_extended_entities.media.video_info.aspect_ratioNicht verfügbarNicht verfügbar
twitter_extended_entities.media.video_info.duration_millisincludes.media.duration_msexpansions=attachments.media_keys&media.fields=duration_msInt
twitter_extended_entities.media.video_info.variantsNicht verfügbarNicht verfügbar
twitter_extended_entities.media.video_info.variants.bitrateNicht verfügbarNicht verfügbar
twitter_extended_entities.media.video_info.variants.content_typeNicht verfügbarNicht verfügbar
twitter_extended_entities.media.video_info.variants.urlNicht verfügbarNicht verfügbar
Nicht verfügbarincludes.media.alt_textexpansions=attachments.media_keys&media.fields=alt_textString
Nicht verfügbarincludes.media.public_metricsexpansions=attachments.media_keys&media.fields=public_metricsObject
Nicht verfügbarincludes.media.public_metrics.view_countexpansions=attachments.media_keys&media.fields=public_metricsInt
Nicht verfügbarincludes.media.non_public_metricsexpansions=attachments.media_keys&media.fields=non_public_metricsObject
Nicht verfügbarincludes.media.non_public_metrics.playback_0_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.non_public_metrics.playback_25_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.non_public_metrics.playback_50_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.non_public_metrics.playback_75_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.non_public_metrics.playback_100_countexpansions=attachments.media_keys&media.fields=non_public_metricsInt
Nicht verfügbarincludes.media.organic_metricsexpansions=attachments.media_keys&media.fields=organic_metricsObject
Nicht verfügbarincludes.media.organic_metrics.playback_0_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.playback_25_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.playback_50_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.playback_75_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.playback_100_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.organic_metrics.view_countexpansions=attachments.media_keys&media.fields=organic_metricsInt
Nicht verfügbarincludes.media.promoted_metricsexpansions=attachments.media_keys&media.fields=promoted_metricsObject
Nicht verfügbarincludes.media.promoted_metrics.playback_0_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.playback_25_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.playback_50_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.playback_75_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.playback_100_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt
Nicht verfügbarincludes.media.promoted_metrics.view_countexpansions=attachments.media_keys&media.fields=promoted_metricsInt

Objekt für übereinstimmende Regeln

Activity Streams-FormatTwitter v2-FormatErforderliche v2-ParameterTyp in v2
gnip.matching_rulesmatching_rulesStandard im Filtered streamArray von Objekten
gnip.matching_rules.tagmatching_rules.tagStandard im Filtered streamString
gnip.matching_rules.tag.idNicht verfügbarNicht verfügbar
gnip.matching_rules.tag.id_strmatching_rules.idStandard im Filtered streamString

Visuelles Migrationswerkzeug für Datenformate

Das visuelle Migrationswerkzeug für Datenformate ist eine Webanwendung, die die fields anzeigt, die vom X API v1.1-Datenformat auf das X API v2-Format für einen bestimmten Tweet oder ein User-Objekt abgebildet werden. Entweder eine Tweet-id oder eine user id kann der Anwendung bereitgestellt werden, um diese Zuordnung anzuzeigen. Bitte beachten Sie, dass Sie sich mit Ihrem Twitter-Konto anmelden müssen, um die App zu verwenden.
I