> ## Documentation Index
> Fetch the complete documentation index at: https://tiktools.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Gift Info

> Get the complete list of gifts available in a live room, including gift names, diamond costs, animated thumbnails, and gift types. Uses the 'sign-and-return' pattern.

## `GET` `/webcast/gift_info`

Get the complete list of gifts available in a live room, including gift names, diamond costs, animated thumbnails, and gift types. Uses the "sign-and-return" pattern.

**Response data:** Each gift entry includes `id`, `name`, `diamond_count` (cost in diamonds), `icon` (thumbnail URL), `type` (1=standard, 2=animated, etc.), and combo/repeat information.

**Use cases:** Build gift catalogs for your application, calculate the real-money value of gifts (1 diamond ≈ \$0.005 USD), display gift icons in chat overlays, or track which gifts are available in different regions.

**Note:** Gift availability varies by region and room. Some gifts are event-exclusive or require specific room configurations. The response returns all currently available gifts for the specified room.

### Parameters

| Parameter   | Type   | Required | Description     |
| ----------- | ------ | -------- | --------------- |
| `room_id`   | string | No       | TikTok room ID  |
| `unique_id` | string | No       | TikTok username |

### Response

```json theme={null}
{ "status_code": 0, "data": { "room_id": "...", "gifts": [{ "id": 1, "name": "Rose", "diamond_count": 1 }, ...] } }
```

### Examples

<CodeGroup>
  ```javascript Node.js theme={null}
  const res = await fetch('https://api.tik.tools/webcast/gift_info?unique_id=username&apiKey=YOUR_KEY');
  const { data } = await res.json();
  data.gifts.forEach(g => console.log(`${g.name}: ${g.diamond_count} diamonds`));
  ```

  ```python Python theme={null}
  import requests
  res = requests.get('https://api.tik.tools/webcast/gift_info',
      params={'unique_id': 'username', 'apiKey': 'YOUR_KEY'})
  for gift in res.json()['data']['gifts']:
      print(f"{gift['name']}: {gift['diamond_count']} diamonds")
  ```

  ```bash cURL theme={null}
  curl "https://api.tik.tools/webcast/gift_info?unique_id=username&apiKey=YOUR_KEY"
  ```

  ```java Java theme={null}
  HttpClient client = HttpClient.newHttpClient();
  HttpRequest req = HttpRequest.newBuilder()
      .uri(URI.create("https://api.tik.tools/webcast/gift_info?unique_id=username&apiKey=YOUR_KEY"))
      .GET().build();
  HttpResponse<String> res = client.send(req, HttpResponse.BodyHandlers.ofString());
  System.out.println(res.body());
  ```

  ```go Go theme={null}
  resp, err := http.Get("https://api.tik.tools/webcast/gift_info?unique_id=username&apiKey=YOUR_KEY")
  if err != nil { log.Fatal(err) }
  defer resp.Body.Close()
  body, _ := io.ReadAll(resp.Body)
  fmt.Println(string(body))
  ```

  ```csharp C# theme={null}
  using var client = new HttpClient();
  var res = await client.GetStringAsync(
      "https://api.tik.tools/webcast/gift_info?unique_id=username&apiKey=YOUR_KEY");
  Console.WriteLine(res);
  ```
</CodeGroup>
