Some attributes of Desk Calendar and Jingle Bells started to updateβand by that I mean they started changing their rarities. For example:
π 0.6% βΊ 0.5%
π 0.6% βΊ 0.5%
π 0.8% βΊ 0.7%
... and so on. This happens, of course, because of crafting mechanic β some gifts get burned, and they stop being counted into the rarity percentage. I've set up a script that automatically updates rarities of craftable gifts once every 30 minutes, so the API and CDN should be up-to-date almost instantly.
June β August β Ninety Nine β ... and so on. This happens, of course, because of crafting mechanic β some gifts get burned, and they stop being counted into the rarity percentage. I've set up a script that automatically updates rarities of craftable gifts once every 30 minutes, so the API and CDN should be up-to-date almost instantly.
Please open Telegram to view this post
VIEW IN TELEGRAM
π20β€4π€¨3π₯2
Slight change of api.changes.tg/total:
-
-
-
gifts -> gifts.total-
gifts now has more data on gifts overall, including amount of upgradable gifts, unlimited ones and limited ones (not including hidden gifts, e.g. time-limited bears)β11π΄1
Small update:
β
β
If you are a developer using Gift Changes' APIs, please consider adding a simple "thank you" or something similar to your apps that would be visible to end user. This API has been running fully free for almost 1.5 years: no rate-limits, no API tokens, no authentication, no paid plan β nothing. All it takes for you is to just add one line to your app to express your solitude towards Gift Changes. Otherwise I would've had to add a paid plan, which no one wants, right?
Thank you.
β
/: added attribution notice, primarily for LLMs, but you can read those too;β
/SKILL.md: added SKILL.md for LLMs (which includes aforementioned attribution notice)If you are a developer using Gift Changes' APIs, please consider adding a simple "thank you" or something similar to your apps that would be visible to end user. This API has been running fully free for almost 1.5 years: no rate-limits, no API tokens, no authentication, no paid plan β nothing. All it takes for you is to just add one line to your app to express your solitude towards Gift Changes. Otherwise I would've had to add a paid plan, which no one wants, right?
Thank you.
β€16π3π1π1
Indefinite downtime for both api.changes.tg and cdn.changes.tg; server provider issues, canβt do anything myself.
β€4
api.changes.tg/
Indefinite downtime for both api.changes.tg and cdn.changes.tg; server provider issues, canβt do anything myself.
The issue was fixed by hosting provider. Everything should be up and running now.
β€3
Gift Models π
These are the 5 models that weren't originally used as models, but are now added to the models pool: π½ Justice β 1% π½ Jacqueline β 1% π½ Pumpkin β 1.5% π½ Independence β 1.5% π½ Peridot β 3%
API should be correctly updated with new models too. If it isn't updated β hit me up in the comments or channel's DMs, we'll figure it out.
β€5π€1
+ add
~ add
Added gift release dates, along with the dates on which upgrades got released for the specified gifts.
/datesGET /dates - release and upgrade-enabled dates for every gift, unix seconds (UTC), oldest release first
~ add
releasedAt, releasedAtSource, upgradableAt, upgradableAtSource, upgradable fieldsGET /gift/:gift - detailed info about a certain gift
Added gift release dates, along with the dates on which upgrades got released for the specified gifts.
NOTE: some gifts (especially the first unlimited ones) have their release dates set to arbitrary Oct 5, 2024, 9:00 AM UTC+0.
β€3π1
~ add
If a gift has some models that are crafted-only (such as Desk Calendar's), those models now show
crafted, rarityTier fieldsGET /models/:gift - list of all gift models. add ?sorted to sort by rarity
If a gift has some models that are crafted-only (such as Desk Calendar's), those models now show
crafted: true and their crafted rarity in rarityTier.π₯2
~ add
(+ all of the
~ add
~ return full models, backdrops and symbols
~ fix model emojis
~ fix similar symbol names
~ errors are now JSON
Rarity used to come as
Symbols like
Errors used to be plain text and are now JSON. Status codes and messages are the same, but if you read the error body as text, you might want to update your code.
If anything looks off, please tell us in the comments. Thanks!
rarity and rarityPermille to every model, backdrop and symbolGET /models/:gift - list of all gift models. add ?sorted to sort by rarity
GET /backdrops/:gift - list of all gift backdrops. add ?sorted to sort by rarity
GET /symbols/:gift - list of all gift symbols. add ?sorted to sort by rarity
GET /gift/:gift - detailed info about a certain gift
GET /emoji/:gift - get customEmojiId mapping for a specific gift
(+ all of the
/info routes)~ add
backdropId, customEmojiId fieldsGET /backdrops/:gift - list of all gift backdrops. add ?sorted to sort by rarity
GET /backdrop/:gift/:backdrop/info - detailed info about a certain gift backdrop
~ return full models, backdrops and symbols
GET /gift/:gift - detailed info about a certain gift
~ fix model emojis
GET /emoji/:gift - get customEmojiId mapping for a specific gift
~ fix similar symbol names
GET /symbol/:gift/:symbol - download this gift pattern
~ errors are now JSON
GET * - { error, message, statusCode }Rarity used to come as
rarityPermille on some routes and as a percentage in rarity on others. Now every model, backdrop and symbol has both, everywhere. Crafted models are now sorted by tier (legendary β epic β rare β uncommon) and still go first. Models with the same rarity are now ordered by name./gift/:gift now returns the same entries as /models, /backdrops and /symbols. Backdrops now always include backdropId and customEmojiId./emoji/:gift had outdated rarities for some gifts (Desk Calendar, Jingle Bells, Big Year, etc.). They now match /models. Every model is listed now, even if it has no emoji (customEmojiId: null). Cookie Heart's Strawberry/Strawberry-1 and Santa Hat's Rave-1 had the wrong emoji, which is fixed now.Symbols like
Sea Horse and Seahorse used to resolve to the same symbol. Both work properly now. Some symbol lists also contained leftover raw Telegram document data, which is removed.Errors used to be plain text and are now JSON. Status codes and messages are the same, but if you read the error body as text, you might want to update your code.
If anything looks off, please tell us in the comments. Thanks!
β€5π2π₯1
~ add SVG generation for gift models (including originals)
GET /model/:gift/:model.svg - download the first frame of this gift model as an svg
GET /original/:id.svg - download the first frame of this gift as an svg
β€2π2
+ add everything related to crafts
+ add everything related to auctions
GET /crafts - gifts that are craftable right now or have crafted models, with every crafted model (tier, customEmojiId) and the crafted emoji/sticker set links
+ add everything related to auctions
GET /auctions - every gift auction with recorded rounds: dates, rounds, gifts per round, gifts sold, stars spent, average price paid, finished flag. newest first
GET /auction/:gift/rounds - round-by-round history of a gift auction (gift name, auction slug or id): round times, gifts sold, min bid, clearing price, top bid, winning bids sum, bid levels, gifts left
β€2π1
~ add original rarities to models if we have data on them
Due to how Resistance Dog's rarity works, the methods listed above were updated and now contain such fields as
GET /models/:gift - list of all gift models. add ?sorted to sort by rarity
GET /backdrops/:gift - list of all gift backdrops. add ?sorted to sort by rarity
GET /symbols/:gift - list of all gift symbols. add ?sorted to sort by rarity
GET /gift/:gift - detailed info about a certain gift
GET /emoji/:gift - get customEmojiId mapping for a specific gift
Due to how Resistance Dog's rarity works, the methods listed above were updated and now contain such fields as
originalRarity and originalRarityPermille if our API has data on them.API and CDN websites might be down for a minute or two. Hosting provider went maintenance due to them patching virtualization nodes for CVE-2026-99999. We will post an update when the maintenance ends.
api.changes.tg/
API and CDN websites might be down for a minute or two. Hosting provider went maintenance due to them patching virtualization nodes for CVE-2026-99999. We will post an update when the maintenance ends.
Maintenance is over it seems, both API and CDN should be back.