---
id: "x_post_id"
kind: "datatype"
status: "draft"
is_pii: false
categories: ["texts", "internet"]
langs: ["common"]
quality: 90
url: "https://registry.apicrafter.io/datatype/x_post_id"
---

# X (Twitter) post ID (`x_post_id`)

> **Draft.** Draft records have not been reviewed yet and may be incomplete or wrong; do not treat them as authoritative for legal or compliance decisions.

Number of a post (tweet) on X, formerly Twitter, as in https://x.com/i/status/20. Posts since November 2010 have Snowflake IDs of 18 or 19 digits that encode the creation time; earlier posts have shorter sequential numbers, the first public post being 20. APIs send the ID as a string because it does not fit a JavaScript number. The regexp is the format of Wikidata property P5933; any large integer matches it, so detect the type by field names such as tweet_id, status_id and post_id.

- Personal data (PII): no
- Categories: Texts and  articles (texts), Internet (internet)
- Countries: global
- Languages: Common to most languages (common)
- Classification: identifier

## Detection

Regular expression (Python `re`):

```
^(?:[2-9]\d|[1-9]\d{2,18})$
```

## Examples

- `20` — First post on Twitter, 21 March 2006
- `440322224407314432` — The Oscar selfie post, 2 March 2014 (Wikidata Q56682408)
- `1888944671579078978` — Post cited in the Wikipedia article on Snowflake IDs
- `https://x.com/i/status/20` (invalid example) — A URL, not the ID

## Mappings

- wikidata: `P5933`

## Translations

- ru: Идентификатор публикации в X (Twitter): Номер публикации (твита) в X, ранее Twitter. С ноября 2010 года это идентификатор Snowflake из 18–19 цифр.

## Sources

- wikidata: <https://www.wikidata.org/wiki/Property:P5933>
- wikipedia: <https://en.wikipedia.org/wiki/Twitter>

## Quality

Score 90/100. Missing: detector coverage.

JSON: <https://registry.apicrafter.io/api/v1/datatypes/x_post_id.json> · Edit: <https://github.com/apicrafter/metacrafter-registry/edit/main/data/datatypes/any/texts/x_post_id.yaml>
