ecapi-sdk 3.3.6__tar.gz → 3.3.9__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ecapi-sdk
3
- Version: 3.3.6
3
+ Version: 3.3.9
4
4
  Summary: ECAPI SDK for Python
5
5
  Author: EaseCation
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "ecapi-sdk"
7
- version = "3.3.6"
7
+ version = "3.3.9"
8
8
  description = "ECAPI SDK for Python"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -265,26 +265,53 @@ class _BaseApi:
265
265
  request_kwargs, query_kwargs = _extract_request_kwargs(kwargs)
266
266
  return self._http.request("GET", path, query=query, **request_kwargs, **query_kwargs)
267
267
 
268
- def _post(self, path: str, body: Any = None, **kwargs: Any) -> Any:
268
+ def _post(
269
+ self,
270
+ path: str,
271
+ body: Any = None,
272
+ *,
273
+ query: Optional[QueryParams] = None,
274
+ **kwargs: Any,
275
+ ) -> Any:
269
276
  request_kwargs, query_kwargs = _extract_request_kwargs(kwargs)
270
- return self._http.request("POST", path, body=body, **request_kwargs, **query_kwargs)
277
+ return self._http.request(
278
+ "POST", path, query=query, body=body, **request_kwargs, **query_kwargs
279
+ )
271
280
 
272
- def _put(self, path: str, body: Any = None, **kwargs: Any) -> Any:
281
+ def _put(
282
+ self,
283
+ path: str,
284
+ body: Any = None,
285
+ *,
286
+ query: Optional[QueryParams] = None,
287
+ **kwargs: Any,
288
+ ) -> Any:
273
289
  request_kwargs, query_kwargs = _extract_request_kwargs(kwargs)
274
- return self._http.request("PUT", path, body=body, **request_kwargs, **query_kwargs)
290
+ return self._http.request(
291
+ "PUT", path, query=query, body=body, **request_kwargs, **query_kwargs
292
+ )
275
293
 
276
- def _patch(self, path: str, body: Any = None, **kwargs: Any) -> Any:
294
+ def _patch(
295
+ self,
296
+ path: str,
297
+ body: Any = None,
298
+ *,
299
+ query: Optional[QueryParams] = None,
300
+ **kwargs: Any,
301
+ ) -> Any:
277
302
  request_kwargs, query_kwargs = _extract_request_kwargs(kwargs)
278
- return self._http.request("PATCH", path, body=body, **request_kwargs, **query_kwargs)
303
+ return self._http.request(
304
+ "PATCH", path, query=query, body=body, **request_kwargs, **query_kwargs
305
+ )
279
306
 
280
307
  def _delete(self, path: str, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
281
308
  request_kwargs, query_kwargs = _extract_request_kwargs(kwargs)
282
309
  return self._http.request("DELETE", path, query=query, **request_kwargs, **query_kwargs)
283
310
 
284
311
  class PIT2API(_BaseApi):
285
- def get_draws(self, xuid: str, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
286
- """分页查询 PIT2 抽奖会话"""
287
- return self._get(f"/pit2/players/{quote(str(xuid), safe='')}/gacha-draws", query, **kwargs)
312
+ def get_draws(self, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
313
+ """分页查询全服 PIT2 抽奖会话"""
314
+ return self._get(f"/pit2/gacha-draws", query, **kwargs)
288
315
 
289
316
  def get_ender_chest(self, xuid: str, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
290
317
  """查询 PIT2 末影箱与备份"""
@@ -298,21 +325,25 @@ class PIT2API(_BaseApi):
298
325
  """查询 PIT2 背包与备份"""
299
326
  return self._get(f"/pit2/players/{quote(str(xuid), safe='')}/inventory", query, **kwargs)
300
327
 
328
+ def get_item_locations_by_uuid(self, itemUuid: str, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
329
+ """分页查询 PIT2 唯一物品位置"""
330
+ return self._get(f"/pit2/items/{quote(str(itemUuid), safe='')}/locations", query, **kwargs)
331
+
301
332
  def get_mails(self, xuid: str, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
302
333
  """分页查询 PIT2 邮箱"""
303
334
  return self._get(f"/pit2/players/{quote(str(xuid), safe='')}/mails", query, **kwargs)
304
335
 
305
- def get_payments(self, xuid: str, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
306
- """分页查询 PIT2 支付记录"""
307
- return self._get(f"/pit2/players/{quote(str(xuid), safe='')}/gacha-payments", query, **kwargs)
336
+ def get_payments(self, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
337
+ """分页查询全服 PIT2 支付记录"""
338
+ return self._get(f"/pit2/gacha-payments", query, **kwargs)
308
339
 
309
340
  def get_player(self, xuid: str, **kwargs: Any) -> Any:
310
341
  """查询 PIT2 玩家资料"""
311
342
  return self._get(f"/pit2/players/{quote(str(xuid), safe='')}", None, **kwargs)
312
343
 
313
- def get_season_exchanges(self, xuid: str, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
314
- """分页查询 PIT2 赛季兑换"""
315
- return self._get(f"/pit2/players/{quote(str(xuid), safe='')}/gacha-season-exchanges", query, **kwargs)
344
+ def get_season_exchanges(self, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
345
+ """分页查询全服 PIT2 赛季兑换"""
346
+ return self._get(f"/pit2/gacha-season-exchanges", query, **kwargs)
316
347
 
317
348
  def restore_ender_chest(self, xuid: str, payload: Mapping[str, Any], **kwargs: Any) -> Any:
318
349
  """恢复 PIT2 末影箱备份"""
@@ -322,6 +353,10 @@ class PIT2API(_BaseApi):
322
353
  """恢复 PIT2 背包备份"""
323
354
  return self._post(f"/pit2/players/{quote(str(xuid), safe='')}/inventory-restorations", payload, **kwargs)
324
355
 
356
+ def search_player_item_locations(self, xuid: str, payload: Mapping[str, Any], query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
357
+ """分页搜索 PIT2 玩家精确物品位置"""
358
+ return self._post(f"/pit2/players/{quote(str(xuid), safe='')}/item-location-searches", payload, query=query, **kwargs)
359
+
325
360
  def send_mail(self, xuid: str, payload: Mapping[str, Any], **kwargs: Any) -> Any:
326
361
  """发送 PIT2 奖励邮件"""
327
362
  return self._post(f"/pit2/players/{quote(str(xuid), safe='')}/mails", payload, **kwargs)
@@ -1199,7 +1234,9 @@ class ECAPIClient:
1199
1234
  self.auth = AuthAPI(self._http)
1200
1235
  self.game_log = GameLogAPI(self._http)
1201
1236
  self.log = LogAPI(self._http)
1237
+ self.pit2 = PIT2API(self._http)
1202
1238
  self.player = PlayerAPI(self._http)
1239
+ self.replay = ReplayAPI(self._http)
1203
1240
  self.server = ServerAPI(self._http)
1204
1241
  self.system = SystemAPI(self._http)
1205
1242
  self.user = UserAPI(self._http)
@@ -10,6 +10,40 @@ Headers = Dict[str, str]
10
10
  AuthCredentials = Dict[str, str]
11
11
  AuthProvider = Callable[[], Union[Optional[AuthCredentials], Awaitable[Optional[AuthCredentials]]]]
12
12
 
13
+ class PIT2APIGetDrawsQuery(TypedDict, total=False):
14
+ current: QueryValue
15
+ pageSize: QueryValue
16
+ startTime: QueryValue
17
+ endTime: QueryValue
18
+ xuid: QueryValue
19
+ status: QueryValue
20
+ drawType: QueryValue
21
+
22
+ class PIT2APIGetPaymentsQuery(TypedDict, total=False):
23
+ current: QueryValue
24
+ pageSize: QueryValue
25
+ startTime: QueryValue
26
+ endTime: QueryValue
27
+ xuid: QueryValue
28
+ status: QueryValue
29
+ productId: QueryValue
30
+
31
+ class PIT2APIGetSeasonExchangesQuery(TypedDict, total=False):
32
+ current: QueryValue
33
+ pageSize: QueryValue
34
+ startTime: QueryValue
35
+ endTime: QueryValue
36
+ xuid: QueryValue
37
+ status: QueryValue
38
+ seasonId: QueryValue
39
+ itemKey: QueryValue
40
+
41
+ class PIT2APIGetItemLocationsByUuidQuery(TypedDict, total=False):
42
+ current: QueryValue
43
+ pageSize: QueryValue
44
+ startTime: QueryValue
45
+ endTime: QueryValue
46
+
13
47
  class PIT2APIUpdatePlayerBodyRequired(TypedDict):
14
48
  updates: Sequence[Any]
15
49
 
@@ -36,31 +70,6 @@ class PIT2APIRestoreEnderChestBodyRequired(TypedDict):
36
70
  class PIT2APIRestoreEnderChestBody(PIT2APIRestoreEnderChestBodyRequired, total=False):
37
71
  pass
38
72
 
39
- class PIT2APIGetDrawsQuery(TypedDict, total=False):
40
- current: QueryValue
41
- pageSize: QueryValue
42
- startTime: QueryValue
43
- endTime: QueryValue
44
- status: QueryValue
45
- drawType: QueryValue
46
-
47
- class PIT2APIGetPaymentsQuery(TypedDict, total=False):
48
- current: QueryValue
49
- pageSize: QueryValue
50
- startTime: QueryValue
51
- endTime: QueryValue
52
- status: QueryValue
53
- productId: QueryValue
54
-
55
- class PIT2APIGetSeasonExchangesQuery(TypedDict, total=False):
56
- current: QueryValue
57
- pageSize: QueryValue
58
- startTime: QueryValue
59
- endTime: QueryValue
60
- status: QueryValue
61
- seasonId: QueryValue
62
- itemKey: QueryValue
63
-
64
73
  class PIT2APIGetInventoryQuery(TypedDict, total=False):
65
74
  current: QueryValue
66
75
  pageSize: QueryValue
@@ -81,6 +90,18 @@ class PIT2APIRestoreInventoryBodyRequired(TypedDict):
81
90
  class PIT2APIRestoreInventoryBody(PIT2APIRestoreInventoryBodyRequired, total=False):
82
91
  pass
83
92
 
93
+ class PIT2APISearchPlayerItemLocationsQuery(TypedDict, total=False):
94
+ current: QueryValue
95
+ pageSize: QueryValue
96
+ startTime: QueryValue
97
+ endTime: QueryValue
98
+
99
+ class PIT2APISearchPlayerItemLocationsBodyRequired(TypedDict):
100
+ serializedItemStack: str
101
+
102
+ class PIT2APISearchPlayerItemLocationsBody(PIT2APISearchPlayerItemLocationsBodyRequired, total=False):
103
+ pass
104
+
84
105
  class PIT2APIGetMailsQuery(TypedDict, total=False):
85
106
  current: QueryValue
86
107
  pageSize: QueryValue
@@ -990,16 +1011,18 @@ class ECAPIError(Exception):
990
1011
  def __init__(self, message: str, status: int, payload: Any, url: str) -> None: ...
991
1012
 
992
1013
  class PIT2API:
993
- def get_draws(self, xuid: str, query: Optional[PIT2APIGetDrawsQuery] = ..., **kwargs: Any) -> Any: ...
1014
+ def get_draws(self, query: Optional[PIT2APIGetDrawsQuery] = ..., **kwargs: Any) -> Any: ...
994
1015
  def get_ender_chest(self, xuid: str, query: Optional[PIT2APIGetEnderChestQuery] = ..., **kwargs: Any) -> Any: ...
995
1016
  def get_event_queue(self, **kwargs: Any) -> Any: ...
996
1017
  def get_inventory(self, xuid: str, query: Optional[PIT2APIGetInventoryQuery] = ..., **kwargs: Any) -> Any: ...
1018
+ def get_item_locations_by_uuid(self, itemUuid: str, query: Optional[PIT2APIGetItemLocationsByUuidQuery] = ..., **kwargs: Any) -> Any: ...
997
1019
  def get_mails(self, xuid: str, query: Optional[PIT2APIGetMailsQuery] = ..., **kwargs: Any) -> Any: ...
998
- def get_payments(self, xuid: str, query: Optional[PIT2APIGetPaymentsQuery] = ..., **kwargs: Any) -> Any: ...
1020
+ def get_payments(self, query: Optional[PIT2APIGetPaymentsQuery] = ..., **kwargs: Any) -> Any: ...
999
1021
  def get_player(self, xuid: str, **kwargs: Any) -> Any: ...
1000
- def get_season_exchanges(self, xuid: str, query: Optional[PIT2APIGetSeasonExchangesQuery] = ..., **kwargs: Any) -> Any: ...
1022
+ def get_season_exchanges(self, query: Optional[PIT2APIGetSeasonExchangesQuery] = ..., **kwargs: Any) -> Any: ...
1001
1023
  def restore_ender_chest(self, xuid: str, payload: PIT2APIRestoreEnderChestBody, **kwargs: Any) -> Any: ...
1002
1024
  def restore_inventory(self, xuid: str, payload: PIT2APIRestoreInventoryBody, **kwargs: Any) -> Any: ...
1025
+ def search_player_item_locations(self, xuid: str, payload: PIT2APISearchPlayerItemLocationsBody, query: Optional[PIT2APISearchPlayerItemLocationsQuery] = ..., **kwargs: Any) -> Any: ...
1003
1026
  def send_mail(self, xuid: str, payload: PIT2APISendMailBody, **kwargs: Any) -> Any: ...
1004
1027
  def update_ender_chest(self, xuid: str, payload: PIT2APIUpdateEnderChestBody, **kwargs: Any) -> Any: ...
1005
1028
  def update_inventory(self, xuid: str, payload: PIT2APIUpdateInventoryBody, **kwargs: Any) -> Any: ...
@@ -1330,7 +1353,9 @@ class ECAPIClient:
1330
1353
  auth: AuthAPI
1331
1354
  game_log: GameLogAPI
1332
1355
  log: LogAPI
1356
+ pit2: PIT2API
1333
1357
  player: PlayerAPI
1358
+ replay: ReplayAPI
1334
1359
  server: ServerAPI
1335
1360
  system: SystemAPI
1336
1361
  user: UserAPI
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ecapi-sdk
3
- Version: 3.3.6
3
+ Version: 3.3.9
4
4
  Summary: ECAPI SDK for Python
5
5
  Author: EaseCation
6
6
  License: MIT
File without changes
File without changes