---
title: "Verify User Retweeted - Social Actions API"
description: "API endpoint to confirm that a user has retweeted a particular tweet on Twitter/X, without pulling the full retweeter list."
source: "https://docs.socialdata.tools/social-actions/verify-user-retweeted/"
---

This endpoint provides a convenient way to check if a user retweeted a tweet identified by `tweet_id`. This will recursively retrieve all users who recently retweeted a tweet and check if the `user_id` is present among the retrieved users.

GET https://api.socialdata.tools/twitter/tweets/{tweet\_id}/retweeted\_by/{user\_id}

## Headers

**Authorization** `string` — required

Authorization Bearer header containing your SocialData API key

Example: Bearer YOUR\_API\_KEY

## Path Parameters

**tweet\_id** `integer` — required

The numeric ID of the target tweet

Example: 1625802236571033602

**user\_id** `integer` — required

The numeric ID of the user

Example: 1489552236571048124

> **Caution**
> 
> When using languages where the `id` value exceeds the default Integer type limit (e.g., JavaScript), you should store `id` as a String. Use the `id_str` property returned by the API for these values

## Code Examples

#### curl

```shellscript
curl "https://api.socialdata.tools/twitter/tweets/456456456/retweeted_by/123123123" \
    -H 'Authorization: Bearer API_KEY' \
    -H 'Accept: application/json'
```

#### JavaScript

```js
const tweetId = '456456456';
const userId = '123123123';
const API_KEY = 'YOUR_API_KEY_HERE';

fetch(`https://api.socialdata.tools/twitter/tweets/${tweetId}/retweeted_by/${userId}`, {
    method: 'GET',
    headers: {
        'Authorization': `Bearer ${API_KEY}`,
        'Accept': 'application/json'
    }
})
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
```

#### Python

```python
import requests

tweetId = '456456456';
userId = '123123123';
API_KEY = 'YOUR_API_KEY_HERE'

url = f'https://api.socialdata.tools/twitter/tweets/{tweetId}/retweeted_by/{userId}'

headers = {
    'Authorization': f'Bearer {API_KEY}',
    'Accept': 'application/json'
}

response = requests.get(url, headers=headers)

if response.status_code == 200:
    data = response.json()
    print(data)
else:
    print(f"Error: {response.status_code}")
    print(response.text)
```

#### PHP

```php
$tweetId = '456456456';
$userId = '123123123';
$API_KEY = 'YOUR_API_KEY_HERE';

$url = "https://api.socialdata.tools/twitter/tweets/{$tweetId}/retweeted_by/{$userId}";

$ch = curl_init();

curl_setopt_array($ch, [
    CURLOPT_URL => $url,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer $API_KEY",
        "Accept: application/json"
    ]
]);

$response = curl_exec($ch);
$data = json_decode($response, true);
print_r($data);

curl_close($ch);
```

## Example Responses

#### 200

```json
{
    "status": "success",
    "source_user_id": "123123123...",
    "target_tweet_id": "456456456...",
    "is_retweeted": true,
    "retweeters_checked_count": null // Deprecated, always null
}
```

#### 402

```json
{
    "status": "error",
    "message": "Insufficient balance"
}
```

#### 404

```json
{
    "status": "error",
    "message": "User not found"
}
```

#### 500

```json
{
    "status": "error",
    "message": "Failed to fetch data from Twitter"
}
```

## Response Codes

-   **200 OK** - request succeeded
-   **402 Payment Required** - not enough credits to perform this request
-   **404 Not Found** - requested tweet does not exist
-   **422 Unprocessable Content** - validation failed (e.g. one of the required parameters was not provided)
-   **500 Internal Error** - API internal error, typically means that SocialData API failed to obtain the requested information and you should try again later

## Related endpoints

-   [Get tweet comments](https://docs.socialdata.tools/reference/get-tweet-comments/)
-   [Get tweet quotes](https://docs.socialdata.tools/reference/get-tweet-quotes/)
-   [Get tweet retweeters](https://docs.socialdata.tools/reference/get-tweet-retweeters/)
-   [Verify user commented](https://docs.socialdata.tools/social-actions/verify-user-commented/)

## Before you integrate

-   [Authentication](https://docs.socialdata.tools/getting-started/authentication/)
-   [Rate limits](https://docs.socialdata.tools/getting-started/rate-limits/)
-   [Errors](https://docs.socialdata.tools/getting-started/errors/)
-   [Pricing](https://docs.socialdata.tools/getting-started/pricing/)
