TornAPIWrapper 2.3.1__tar.gz → 2.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tornapiwrapper-2.3.1/src/TornAPIWrapper.egg-info → tornapiwrapper-2.5.0}/PKG-INFO +2 -2
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/README.md +1 -1
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/__init__.py +2 -2
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints/user.py +28 -1
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/user.py +28 -1
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/params/map.py +3 -2
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/type_hints.py +1 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0/src/TornAPIWrapper.egg-info}/PKG-INFO +2 -2
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/LICENSE +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/pyproject.toml +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/setup.cfg +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/__main__.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/client.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/client_async.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints/__init__.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints/faction.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints/forum.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints/key.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints/market.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints/property.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints/racing.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints/torn.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/__init__.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/faction.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/forum.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/key.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/market.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/property.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/racing.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/torn.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/errors.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/params/__init__.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/params/builders.py +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper.egg-info/SOURCES.txt +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper.egg-info/dependency_links.txt +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper.egg-info/requires.txt +0 -0
- {tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: TornAPIWrapper
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.5.0
|
|
4
4
|
Summary: A Python wrapper for the Torn City API, providing access to Torn City data.
|
|
5
5
|
Author: cxdzc
|
|
6
6
|
License: The MIT License (MIT)
|
|
@@ -53,7 +53,7 @@ Dynamic: license-file
|
|
|
53
53
|
<a href="https://pypi.org/project/TornAPIWrapper/"><img src=https://img.shields.io/pypi/v/tornapiwrapper?cacheSeconds=300></a>
|
|
54
54
|
<a href="https://pypi.org/project/TornAPIWrapper/"><img src=https://img.shields.io/pypi/pyversions/tornapiwrapper?cacheSeconds=300></a>
|
|
55
55
|
<a href="https://pypi.org/project/TornAPIWrapper/"><img src=https://img.shields.io/pepy/dt/tornapiwrapper?color=blue&cacheSeconds=300></a>
|
|
56
|
-
<a href="https://www.torn.com/api.html#:~:text=Patch%20Notes"><img src=https://img.shields.io/badge/patch-
|
|
56
|
+
<a href="https://www.torn.com/api.html#:~:text=Patch%20Notes"><img src=https://img.shields.io/badge/patch-20.04.2026-c4c4c4?cacheSeconds=300></a>
|
|
57
57
|
<a rel="license" href="https://github.com/cxdzc/TornAPIWrapper/blob/main/LICENSE"><img alt="MIT License" src="https://img.shields.io/badge/license-MIT-ab1436"/></a>
|
|
58
58
|
</div>
|
|
59
59
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<a href="https://pypi.org/project/TornAPIWrapper/"><img src=https://img.shields.io/pypi/v/tornapiwrapper?cacheSeconds=300></a>
|
|
7
7
|
<a href="https://pypi.org/project/TornAPIWrapper/"><img src=https://img.shields.io/pypi/pyversions/tornapiwrapper?cacheSeconds=300></a>
|
|
8
8
|
<a href="https://pypi.org/project/TornAPIWrapper/"><img src=https://img.shields.io/pepy/dt/tornapiwrapper?color=blue&cacheSeconds=300></a>
|
|
9
|
-
<a href="https://www.torn.com/api.html#:~:text=Patch%20Notes"><img src=https://img.shields.io/badge/patch-
|
|
9
|
+
<a href="https://www.torn.com/api.html#:~:text=Patch%20Notes"><img src=https://img.shields.io/badge/patch-20.04.2026-c4c4c4?cacheSeconds=300></a>
|
|
10
10
|
<a rel="license" href="https://github.com/cxdzc/TornAPIWrapper/blob/main/LICENSE"><img alt="MIT License" src="https://img.shields.io/badge/license-MIT-ab1436"/></a>
|
|
11
11
|
</div>
|
|
12
12
|
|
|
@@ -26,8 +26,8 @@ __author__ = "cxdzc"
|
|
|
26
26
|
__copyright__ = "Copyright 2023-Present cxdzc"
|
|
27
27
|
__license__ = "MIT"
|
|
28
28
|
__title__ = "TornAPIWrapper"
|
|
29
|
-
__version__ = "2.
|
|
30
|
-
__patch__ = "
|
|
29
|
+
__version__ = "2.5.0"
|
|
30
|
+
__patch__ = "20.04.2026"
|
|
31
31
|
|
|
32
32
|
from .errors import (
|
|
33
33
|
WrapperError,
|
|
@@ -29,7 +29,7 @@ from typing import TYPE_CHECKING
|
|
|
29
29
|
from ..params.builders import build_params
|
|
30
30
|
from ..type_hints import SortOptions, RaceCatOptions, UserListCatOptions, AttackFiltersOptions, \
|
|
31
31
|
UserPropertiesFiltersOptions, ReportCatOptions, UserPrsnlStatsCatOptions, UserPrsnlStatsStatOptions, \
|
|
32
|
-
UserTradeCatOptions
|
|
32
|
+
UserTradeCatOptions, UserInventoryCatOptions
|
|
33
33
|
|
|
34
34
|
if TYPE_CHECKING:
|
|
35
35
|
from ..client import TornAPIWrapper
|
|
@@ -145,6 +145,18 @@ class User:
|
|
|
145
145
|
"""
|
|
146
146
|
return self.api.request("/user/calendar", build_params(self.get_calendar, locals()))
|
|
147
147
|
|
|
148
|
+
def get_casino(self, timestamp: int = None, comment: str = None) -> dict:
|
|
149
|
+
"""
|
|
150
|
+
Get your casino streak & tokens.
|
|
151
|
+
API key (Limited).
|
|
152
|
+
Only available to yourself.
|
|
153
|
+
:param timestamp: Timestamp to bypass cache.
|
|
154
|
+
:param comment: Comment for your tool/service/bot/website to be visible in the logs.
|
|
155
|
+
:return: API response data.
|
|
156
|
+
:rtype: dict
|
|
157
|
+
"""
|
|
158
|
+
return self.api.request("/user/casino", build_params(self.get_casino, locals()))
|
|
159
|
+
|
|
148
160
|
def get_competition(self, user_id: int = None, timestamp: int = None, comment: str = None) -> dict:
|
|
149
161
|
"""
|
|
150
162
|
Get your competition information or for a specific player.
|
|
@@ -365,6 +377,21 @@ class User:
|
|
|
365
377
|
"""
|
|
366
378
|
return self.api.request("/user/icons", build_params(self.get_icons, locals()))
|
|
367
379
|
|
|
380
|
+
def get_inventory(self, inventory_category: UserInventoryCatOptions, limit: int = 20, offset: int = 0, timestamp: int = None, comment: str = None) -> dict:
|
|
381
|
+
"""
|
|
382
|
+
Get your inventory.
|
|
383
|
+
API key (Limited).
|
|
384
|
+
Cached selection (1 hour per category).
|
|
385
|
+
:param inventory_category: Items category.
|
|
386
|
+
:param offset: Number of rows to skip before returning results.
|
|
387
|
+
:param limit: Number of results to return.
|
|
388
|
+
:param timestamp: Timestamp to bypass cache.
|
|
389
|
+
:param comment: Comment for your tool/service/bot/website to be visible in the logs.
|
|
390
|
+
:return: API response data.
|
|
391
|
+
:rtype: dict
|
|
392
|
+
"""
|
|
393
|
+
return self.api.request("/user/inventory", build_params(self.get_inventory, locals()))
|
|
394
|
+
|
|
368
395
|
def get_itemmarket(self, offset: int = 0, timestamp: int = None, comment: str = None) -> dict:
|
|
369
396
|
"""
|
|
370
397
|
Get your item market listings for a specific item.
|
|
@@ -29,7 +29,7 @@ from typing import TYPE_CHECKING
|
|
|
29
29
|
from ..params.builders import build_params
|
|
30
30
|
from ..type_hints import SortOptions, RaceCatOptions, UserListCatOptions, AttackFiltersOptions, \
|
|
31
31
|
UserPropertiesFiltersOptions, ReportCatOptions, UserPrsnlStatsCatOptions, UserPrsnlStatsStatOptions, \
|
|
32
|
-
UserTradeCatOptions
|
|
32
|
+
UserTradeCatOptions, UserInventoryCatOptions
|
|
33
33
|
|
|
34
34
|
if TYPE_CHECKING:
|
|
35
35
|
from ..client_async import TornAPIWrapperAsync
|
|
@@ -145,6 +145,18 @@ class User:
|
|
|
145
145
|
"""
|
|
146
146
|
return await self.api.request("/user/calendar", build_params(self.get_calendar, locals()))
|
|
147
147
|
|
|
148
|
+
async def get_casino(self, timestamp: int = None, comment: str = None) -> dict:
|
|
149
|
+
"""
|
|
150
|
+
Get your casino streak & tokens.
|
|
151
|
+
API key (Limited).
|
|
152
|
+
Only available to yourself.
|
|
153
|
+
:param timestamp: Timestamp to bypass cache.
|
|
154
|
+
:param comment: Comment for your tool/service/bot/website to be visible in the logs.
|
|
155
|
+
:return: API response data.
|
|
156
|
+
:rtype: dict
|
|
157
|
+
"""
|
|
158
|
+
return await self.api.request("/user/casino", build_params(self.get_casino, locals()))
|
|
159
|
+
|
|
148
160
|
async def get_competition(self, user_id: int = None, timestamp: int = None, comment: str = None) -> dict:
|
|
149
161
|
"""
|
|
150
162
|
Get your competition information or for a specific player.
|
|
@@ -365,6 +377,21 @@ class User:
|
|
|
365
377
|
"""
|
|
366
378
|
return await self.api.request("/user/icons", build_params(self.get_icons, locals()))
|
|
367
379
|
|
|
380
|
+
async def get_inventory(self, inventory_category: UserInventoryCatOptions, limit: int = 20, offset: int = 0, timestamp: int = None, comment: str = None) -> dict:
|
|
381
|
+
"""
|
|
382
|
+
Get your inventory.
|
|
383
|
+
API key (Limited).
|
|
384
|
+
Cached selection (1 hour per category).
|
|
385
|
+
:param inventory_category: Items category.
|
|
386
|
+
:param offset: Number of rows to skip before returning results.
|
|
387
|
+
:param limit: Number of results to return.
|
|
388
|
+
:param timestamp: Timestamp to bypass cache.
|
|
389
|
+
:param comment: Comment for your tool/service/bot/website to be visible in the logs.
|
|
390
|
+
:return: API response data.
|
|
391
|
+
:rtype: dict
|
|
392
|
+
"""
|
|
393
|
+
return await self.api.request("/user/inventory", build_params(self.get_inventory, locals()))
|
|
394
|
+
|
|
368
395
|
async def get_itemmarket(self, offset: int = 0, timestamp: int = None, comment: str = None) -> dict:
|
|
369
396
|
"""
|
|
370
397
|
Get your item market listings for a specific item.
|
|
@@ -14,15 +14,15 @@ param_id = {
|
|
|
14
14
|
"log_category_id_torn",
|
|
15
15
|
"property_id",
|
|
16
16
|
"property_type_id",
|
|
17
|
-
"stock_id",
|
|
18
|
-
"trade_id",
|
|
19
17
|
"race_id",
|
|
20
18
|
"raid_war_id",
|
|
21
19
|
"ranked_war_id",
|
|
20
|
+
"stock_id",
|
|
22
21
|
"team_id",
|
|
23
22
|
"territory_war_id",
|
|
24
23
|
"thread_id",
|
|
25
24
|
"track_id",
|
|
25
|
+
"trade_id",
|
|
26
26
|
"user_id",
|
|
27
27
|
}
|
|
28
28
|
param_cat = {
|
|
@@ -31,6 +31,7 @@ param_cat = {
|
|
|
31
31
|
"car_category",
|
|
32
32
|
"contributors_category",
|
|
33
33
|
"crimes_category",
|
|
34
|
+
"inventory_category",
|
|
34
35
|
"item_category",
|
|
35
36
|
"leaderboard_category",
|
|
36
37
|
"list_category",
|
|
@@ -32,6 +32,7 @@ ReportCatOptions = Literal["mostwanted", "money", "stats", "references", "friend
|
|
|
32
32
|
UserTradeCatOptions = Literal["finished", "ongoing"]
|
|
33
33
|
UserListCatOptions = Literal["Friends", "Enemies", "Targets"]
|
|
34
34
|
UserPropertiesFiltersOptions = Literal["ownedByUser", "ownedBySpouse"]
|
|
35
|
+
UserInventoryCatOptions = Literal["Collectible", "Clothing", "Other", "Tool", "Melee", "Defensive", "Material", "Car", "Primary", "Secondary", "Book", "Special", "Supply Pack", "Temporary", "Enhancer", "Artifact", "Flower", "Booster", "Medical", "Candy", "Jewelry", "Alcohol", "Plushie", "Drug", "Energy Drink"]
|
|
35
36
|
UserPrsnlStatsCatOptions = Literal["all", "popular", "attacking", "battle_stats", "jobs", "trading", "jail", "hospital", "finishing_hits", "communication", "crimes", "bounties", "investments", "items", "travel", "drugs", "missions", "racing", "networth", "other", "itemmarketcustomers", "itemmarketsales", "itemmarketrevenue", "itemmarketfees"]
|
|
36
37
|
UserPrsnlStatsStatOptions = Literal["attackswon", "attackslost", "attacksdraw", "attacksassisted", "defendswon", "defendslost", "defendsstalemated", "elo", "yourunaway", "theyrunaway", "unarmoredwon", "bestkillstreak", "attackhits", "attackmisses", "attackdamage", "bestdamage", "onehitkills", "attackcriticalhits", "roundsfired", "specialammoused", "hollowammoused", "tracerammoused", "piercingammoused", "incendiaryammoused", "attacksstealthed", "retals", "moneymugged", "largestmug", "itemslooted", "highestbeaten", "respectforfaction", "rankedwarhits", "raidhits", "territoryjoins", "territoryclears", "territorytime", "jobpointsused", "trainsreceived", "marketitemsbought", "auctionswon", "auctionsells", "itemssent", "trades", "cityitemsbought", "pointsbought", "pointssold", "bazaarcustomers", "bazaarsales", "bazaarprofit", "jailed", "peoplebusted", "failedbusts", "peoplebought", "peopleboughtspent", "hospital", "medicalitemsused", "bloodwithdrawn", "reviveskill", "revives", "revivesreceived", "heavyhits", "machinehits", "riflehits", "smghits", "shotgunhits", "pistolhits", "temphits", "piercinghits", "slashinghits", "clubbinghits", "mechanicalhits", "h2hhits", "mailssent", "friendmailssent", "factionmailssent", "companymailssent", "spousemailssent", "classifiedadsplaced", "personalsplaced", "criminaloffensesold", "sellillegalgoods", "theftold", "autotheftcrime", "drugdealscrime", "computercrime", "fraudold", "murdercrime", "othercrime", "organizedcrimes", "bountiesplaced", "totalbountyspent", "bountiescollected", "totalbountyreward", "bountiesreceived", "receivedbountyvalue", "cityfinds", "dumpfinds", "itemsdumped", "booksread", "boostersused", "consumablesused", "candyused", "alcoholused", "energydrinkused", "statenhancersused", "eastereggsfound", "eastereggsused", "virusescoded", "traveltimes", "timespenttraveling", "itemsboughtabroad", "attackswonabroad", "defendslostabroad", "argtravel", "mextravel", "uaetravel", "hawtravel", "japtravel", "uktravel", "satravel", "switravel", "chitravel", "cantravel", "caytravel", "drugsused", "overdosed", "rehabs", "rehabcost", "cantaken", "exttaken", "kettaken", "lsdtaken", "opitaken", "pcptaken", "shrtaken", "spetaken", "victaken", "xantaken", "missionscompleted", "contractscompleted", "dukecontractscompleted", "missioncreditsearned", "racingskill", "racingpointsearned", "racesentered", "raceswon", "networth", "timeplayed", "activestreak", "bestactivestreak", "awards", "refills", "nerverefills", "tokenrefills", "meritsbought", "daysbeendonator", "criminaloffenses", "vandalism", "theft", "counterfeiting", "fraud", "illicitservices", "cybercrime", "extortion", "illegalproduction", "currentkillstreak", "strength", "defense", "speed", "dexterity", "totalstats", "manuallabor", "intelligence", "endurance", "totalworkingstats", "moneyinvested", "investedprofit", "investamount", "banktimeleft", "stockprofits", "stocklosses", "stockfees", "stocknetprofits", "stockpayouts", "networthwallet", "networthvault", "networthbank", "networthcayman", "networthpoints", "networthitems", "networthdisplaycase", "networthbazaar", "networthitemmarket", "networthproperties", "networthstockmarket", "networthauctionhouse", "networthbookie", "networthcompany", "networthenlistedcars", "networthpiggybank", "networthpending", "networthloan", "networthunpaidfees", "huntingskill", "searchforcashskill", "bootleggingskill", "graffitiskill", "shopliftingskill", "pickpocketingskill", "cardskimmingskill", "burglaryskill", "hustlingskill", "disposalskill", "crackingskill", "forgeryskill", "scammingskill", "arsonskill"]
|
|
37
38
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: TornAPIWrapper
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.5.0
|
|
4
4
|
Summary: A Python wrapper for the Torn City API, providing access to Torn City data.
|
|
5
5
|
Author: cxdzc
|
|
6
6
|
License: The MIT License (MIT)
|
|
@@ -53,7 +53,7 @@ Dynamic: license-file
|
|
|
53
53
|
<a href="https://pypi.org/project/TornAPIWrapper/"><img src=https://img.shields.io/pypi/v/tornapiwrapper?cacheSeconds=300></a>
|
|
54
54
|
<a href="https://pypi.org/project/TornAPIWrapper/"><img src=https://img.shields.io/pypi/pyversions/tornapiwrapper?cacheSeconds=300></a>
|
|
55
55
|
<a href="https://pypi.org/project/TornAPIWrapper/"><img src=https://img.shields.io/pepy/dt/tornapiwrapper?color=blue&cacheSeconds=300></a>
|
|
56
|
-
<a href="https://www.torn.com/api.html#:~:text=Patch%20Notes"><img src=https://img.shields.io/badge/patch-
|
|
56
|
+
<a href="https://www.torn.com/api.html#:~:text=Patch%20Notes"><img src=https://img.shields.io/badge/patch-20.04.2026-c4c4c4?cacheSeconds=300></a>
|
|
57
57
|
<a rel="license" href="https://github.com/cxdzc/TornAPIWrapper/blob/main/LICENSE"><img alt="MIT License" src="https://img.shields.io/badge/license-MIT-ab1436"/></a>
|
|
58
58
|
</div>
|
|
59
59
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper/endpoints_async/property.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tornapiwrapper-2.3.1 → tornapiwrapper-2.5.0}/src/TornAPIWrapper.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|