TwitterAPI.io · Schema

Tweet

CompanyX-APIData-ProviderRESTThird-Party

Properties

Name Type Description
type string
id string The ID of the tweet
url string The URL of the tweet
text string The text of the tweet
source string The source of the tweet.eg. "Twitter for iPhone"
retweetCount integer The number of times the tweet has been retweeted
replyCount integer The number of times the tweet has been replied to
likeCount integer The number of times the tweet has been liked
quoteCount integer The number of times the tweet has been quoted
viewCount integer The number of times the tweet has been viewed
createdAt string The date and time the tweet was created.eg. Tue Dec 10 07:00:30 +0000 2024
lang string The language of the tweet.eg. "en".may be empty
bookmarkCount integer The number of times the tweet has been bookmarked
isReply boolean Indicates if the tweet is a reply
inReplyToId string The ID of the tweet being replied to.may be empty
conversationId string The ID of the conversation the tweet is part of.may be empty
displayTextRange array specifies the UTF-16 code unit indices in full_text that define the visible portion of a Tweet.eg"@jack Thanks for the update!",display_text_range is [6, 28]
inReplyToUserId string The ID of the user being replied to.may be empty
inReplyToUsername string The username of the user being replied to.may be empty
author object The user who posted the tweet
entities object The entities in the tweet.eg. hashtags,urls,mentions
quoted_tweet object The tweet being quoted.may be null
retweeted_tweet object The tweet being retweeted.may be null
isLimitedReply boolean Whether the tweet is a limited reply. Possible restrictions: only mentioned users, verified users, or followed accounts can reply
View JSON Schema on GitHub

JSON Schema

twitterapi-io-tweet-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/twitterapi-io/json-schema/twitterapi-io-tweet-schema.json",
  "title": "Tweet",
  "x-generated": "2026-10-29",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/twitterapi-io-openapi.json#/components/schemas/Tweet",
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "tweet"
      ]
    },
    "id": {
      "type": "string",
      "description": "The ID of the tweet"
    },
    "url": {
      "type": "string",
      "description": "The URL of the tweet"
    },
    "text": {
      "type": "string",
      "description": "The text of the tweet"
    },
    "source": {
      "type": "string",
      "description": "The source of the tweet.eg. \"Twitter for iPhone\""
    },
    "retweetCount": {
      "type": "integer",
      "description": "The number of times the tweet has been retweeted"
    },
    "replyCount": {
      "type": "integer",
      "description": "The number of times the tweet has been replied to"
    },
    "likeCount": {
      "type": "integer",
      "description": "The number of times the tweet has been liked"
    },
    "quoteCount": {
      "type": "integer",
      "description": "The number of times the tweet has been quoted"
    },
    "viewCount": {
      "type": "integer",
      "description": "The number of times the tweet has been viewed"
    },
    "createdAt": {
      "type": "string",
      "description": "The date and time the tweet was created.eg. Tue Dec 10 07:00:30 +0000 2024"
    },
    "lang": {
      "type": "string",
      "description": "The language of the tweet.eg. \"en\".may be empty"
    },
    "bookmarkCount": {
      "type": "integer",
      "description": "The number of times the tweet has been bookmarked"
    },
    "isReply": {
      "type": "boolean",
      "description": "Indicates if the tweet is a reply"
    },
    "inReplyToId": {
      "type": "string",
      "description": "The ID of the tweet being replied to.may be empty"
    },
    "conversationId": {
      "type": "string",
      "description": "The ID of the conversation the tweet is part of.may be empty"
    },
    "displayTextRange": {
      "type": "array",
      "description": "specifies the UTF-16 code unit indices in full_text that define the visible portion of a Tweet.eg\"@jack Thanks for the update!\",display_text_range is [6, 28]",
      "items": {
        "type": "integer"
      }
    },
    "inReplyToUserId": {
      "type": "string",
      "description": "The ID of the user being replied to.may be empty"
    },
    "inReplyToUsername": {
      "type": "string",
      "description": "The username of the user being replied to.may be empty"
    },
    "author": {
      "$ref": "#/$defs/UserInfo",
      "description": "The user who posted the tweet"
    },
    "entities": {
      "$ref": "#/$defs/TweetEntities",
      "description": "The entities in the tweet.eg. hashtags,urls,mentions"
    },
    "quoted_tweet": {
      "$ref": "#/$defs/Tweet",
      "description": "The tweet being quoted.may be null"
    },
    "retweeted_tweet": {
      "$ref": "#/$defs/Tweet",
      "description": "The tweet being retweeted.may be null"
    },
    "isLimitedReply": {
      "type": "boolean",
      "description": "Whether the tweet is a limited reply. Possible restrictions: only mentioned users, verified users, or followed accounts can reply"
    }
  },
  "$defs": {
    "Tweet": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "tweet"
          ]
        },
        "id": {
          "type": "string",
          "description": "The ID of the tweet"
        },
        "url": {
          "type": "string",
          "description": "The URL of the tweet"
        },
        "text": {
          "type": "string",
          "description": "The text of the tweet"
        },
        "source": {
          "type": "string",
          "description": "The source of the tweet.eg. \"Twitter for iPhone\""
        },
        "retweetCount": {
          "type": "integer",
          "description": "The number of times the tweet has been retweeted"
        },
        "replyCount": {
          "type": "integer",
          "description": "The number of times the tweet has been replied to"
        },
        "likeCount": {
          "type": "integer",
          "description": "The number of times the tweet has been liked"
        },
        "quoteCount": {
          "type": "integer",
          "description": "The number of times the tweet has been quoted"
        },
        "viewCount": {
          "type": "integer",
          "description": "The number of times the tweet has been viewed"
        },
        "createdAt": {
          "type": "string",
          "description": "The date and time the tweet was created.eg. Tue Dec 10 07:00:30 +0000 2024"
        },
        "lang": {
          "type": "string",
          "description": "The language of the tweet.eg. \"en\".may be empty"
        },
        "bookmarkCount": {
          "type": "integer",
          "description": "The number of times the tweet has been bookmarked"
        },
        "isReply": {
          "type": "boolean",
          "description": "Indicates if the tweet is a reply"
        },
        "inReplyToId": {
          "type": "string",
          "description": "The ID of the tweet being replied to.may be empty"
        },
        "conversationId": {
          "type": "string",
          "description": "The ID of the conversation the tweet is part of.may be empty"
        },
        "displayTextRange": {
          "type": "array",
          "description": "specifies the UTF-16 code unit indices in full_text that define the visible portion of a Tweet.eg\"@jack Thanks for the update!\",display_text_range is [6, 28]",
          "items": {
            "type": "integer"
          }
        },
        "inReplyToUserId": {
          "type": "string",
          "description": "The ID of the user being replied to.may be empty"
        },
        "inReplyToUsername": {
          "type": "string",
          "description": "The username of the user being replied to.may be empty"
        },
        "author": {
          "$ref": "#/$defs/UserInfo",
          "description": "The user who posted the tweet"
        },
        "entities": {
          "$ref": "#/$defs/TweetEntities",
          "description": "The entities in the tweet.eg. hashtags,urls,mentions"
        },
        "quoted_tweet": {
          "$ref": "#/$defs/Tweet",
          "description": "The tweet being quoted.may be null"
        },
        "retweeted_tweet": {
          "$ref": "#/$defs/Tweet",
          "description": "The tweet being retweeted.may be null"
        },
        "isLimitedReply": {
          "type": "boolean",
          "description": "Whether the tweet is a limited reply. Possible restrictions: only mentioned users, verified users, or followed accounts can reply"
        }
      }
    },
    "TweetEntities": {
      "type": "object",
      "properties": {
        "hashtags": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "indices": {
                "type": "array",
                "items": {
                  "type": "integer"
                }
              },
              "text": {
                "type": "string"
              }
            }
          }
        },
        "urls": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "display_url": {
                "type": "string"
              },
              "expanded_url": {
                "type": "string"
              },
              "indices": {
                "type": "array",
                "items": {
                  "type": "integer"
                }
              },
              "url": {
                "type": "string"
              }
            }
          }
        },
        "user_mentions": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id_str": {
                "type": "string",
                "description": "The ID of the user being mentioned"
              },
              "name": {
                "type": "string",
                "description": "The name of the user being mentioned"
              },
              "screen_name": {
                "type": "string",
                "description": "The screen name of the user being mentioned"
              }
            }
          }
        }
      }
    },
    "UserInfo": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "user"
          ]
        },
        "userName": {
          "type": "string",
          "description": "The username of the Twitter user"
        },
        "url": {
          "type": "string",
          "description": "The x.com URL of the user's profile"
        },
        "id": {
          "type": "string",
          "description": "The unique identifier of the user"
        },
        "name": {
          "type": "string",
          "description": "The display name of the user"
        },
        "isBlueVerified": {
          "type": "boolean",
          "description": "Whether the user has Twitter Blue verification"
        },
        "verifiedType": {
          "type": "string",
          "description": "The type of verification. eg. \"government\" ,can be empty"
        },
        "profilePicture": {
          "type": "string",
          "description": "URL of the user's profile picture"
        },
        "coverPicture": {
          "type": "string",
          "description": "URL of the user's cover picture"
        },
        "description": {
          "type": "string",
          "description": "The user's profile description"
        },
        "location": {
          "type": "string",
          "description": "The user's location.for example: 東京の端っこ . may be empty"
        },
        "followers": {
          "type": "integer",
          "description": "Number of followers"
        },
        "following": {
          "type": "integer",
          "description": "Number of accounts following"
        },
        "canDm": {
          "type": "boolean",
          "description": "Whether the user can receive DMs"
        },
        "createdAt": {
          "type": "string",
          "description": "When the account was created. Format depends on the endpoint: /twitter/user/info returns ISO 8601 (e.g. 2007-12-19T20:20:32.000000Z); inside tweet objects (tweet.author) it is the classic X format (e.g. Wed Dec 19 20:20:32 +0000 2007)."
        },
        "favouritesCount": {
          "type": "integer",
          "description": "Number of favorites"
        },
        "hasCustomTimelines": {
          "type": "boolean",
          "description": "Whether the user has custom timelines"
        },
        "isTranslator": {
          "type": "boolean",
          "description": "Whether the user is a translator"
        },
        "mediaCount": {
          "type": "integer",
          "description": "Number of media posts"
        },
        "statusesCount": {
          "type": "integer",
          "description": "Number of status updates"
        },
        "withheldInCountries": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Countries where the account is withheld"
        },
        "affiliatesHighlightedLabel": {
          "type": "object"
        },
        "possiblySensitive": {
          "type": "boolean",
          "description": "Whether the account may contain sensitive content"
        },
        "pinnedTweetIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "IDs of pinned tweets"
        },
        "isAutomated": {
          "type": "boolean",
          "description": "Whether the account is automated"
        },
        "automatedBy": {
          "type": "string",
          "description": "The account that automated the account"
        },
        "unavailable": {
          "type": "boolean",
          "description": "Whether the account is unavailable"
        },
        "message": {
          "type": "string",
          "description": "The message of the account.eg. \"This account is unavailable\" or \"This account is suspended\""
        },
        "unavailableReason": {
          "type": "string",
          "description": "The reason the account is unavailable.eg. \"suspended\" "
        },
        "profile_bio": {
          "type": "object",
          "properties": {
            "description": {
              "type": "string"
            },
            "entities": {
              "type": "object",
              "properties": {
                "description": {
                  "type": "object",
                  "properties": {
                    "urls": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "display_url": {
                            "type": "string"
                          },
                          "expanded_url": {
                            "type": "string"
                          },
                          "indices": {
                            "type": "array",
                            "items": {
                              "type": "integer"
                            }
                          },
                          "url": {
                            "type": "string"
                          }
                        }
                      }
                    }
                  }
                },
                "url": {
                  "type": "object",
                  "properties": {
                    "urls": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "display_url": {
                            "type": "string"
                          },
                          "expanded_url": {
                            "type": "string"
                          },
                          "indices": {
                            "type": "array",
                            "items": {
                              "type": "integer"
                            }
                          },
                          "url": {
                            "type": "string"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/twitterapi-io-tweet"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.