python-xbox 0.1.0rc1__tar.gz → 0.1.0rc3__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.
- {python_xbox-0.1.0rc1 → python_xbox-0.1.0rc3}/PKG-INFO +3 -2
- {python_xbox-0.1.0rc1 → python_xbox-0.1.0rc3}/pyproject.toml +25 -34
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/__init__.py +1 -1
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/client.py +20 -20
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/account/__init__.py +2 -2
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/achievements/__init__.py +2 -2
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/achievements/models.py +14 -14
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/catalog/__init__.py +3 -5
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/catalog/const.py +1 -1
- python_xbox-0.1.0rc3/src/pythonxbox/api/provider/catalog/models.py +428 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/cqs/__init__.py +2 -2
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/cqs/models.py +13 -13
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/gameclips/__init__.py +2 -2
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/gameclips/models.py +5 -6
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/lists/__init__.py +2 -2
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/lists/models.py +5 -7
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/mediahub/__init__.py +2 -2
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/mediahub/models.py +16 -18
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/message/__init__.py +2 -2
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/message/models.py +15 -15
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/people/__init__.py +3 -3
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/people/models.py +1 -1
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/presence/__init__.py +4 -6
- python_xbox-0.1.0rc3/src/pythonxbox/api/provider/presence/models.py +53 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/profile/__init__.py +3 -5
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/profile/models.py +3 -4
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/ratelimitedprovider.py +6 -8
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/screenshots/__init__.py +2 -2
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/screenshots/models.py +6 -6
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/smartglass/__init__.py +5 -6
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/smartglass/models.py +27 -28
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/titlehub/__init__.py +8 -10
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/titlehub/models.py +31 -31
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/usersearch/__init__.py +2 -2
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/usersearch/models.py +2 -4
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/userstats/__init__.py +8 -10
- python_xbox-0.1.0rc3/src/pythonxbox/api/provider/userstats/models.py +44 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/authentication/manager.py +6 -7
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/authentication/models.py +22 -23
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/authentication/xal.py +5 -5
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/common/exceptions.py +1 -1
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/common/filetimes.py +4 -20
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/common/ratelimits/__init__.py +7 -8
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/common/request_signer.py +5 -6
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/common/signed_session.py +1 -1
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/scripts/__init__.py +1 -1
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/scripts/authenticate.py +5 -5
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/scripts/change_gamertag.py +6 -6
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/scripts/friends.py +5 -5
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/scripts/search.py +3 -3
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/scripts/xal.py +4 -4
- python_xbox-0.1.0rc1/xbox/webapi/api/provider/catalog/models.py +0 -428
- python_xbox-0.1.0rc1/xbox/webapi/api/provider/presence/models.py +0 -54
- python_xbox-0.1.0rc1/xbox/webapi/api/provider/userstats/models.py +0 -46
- {python_xbox-0.1.0rc1 → python_xbox-0.1.0rc3}/.gitignore +0 -0
- {python_xbox-0.1.0rc1 → python_xbox-0.1.0rc3}/LICENSE +0 -0
- {python_xbox-0.1.0rc1 → python_xbox-0.1.0rc3}/README.md +0 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/__init__.py +0 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/language.py +0 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/__init__.py +0 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/account/models.py +0 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/api/provider/baseprovider.py +0 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/authentication/__init__.py +0 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/common/__init__.py +0 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/common/models.py +0 -0
- {python_xbox-0.1.0rc1/xbox/webapi → python_xbox-0.1.0rc3/src/pythonxbox}/common/ratelimits/models.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-xbox
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.0rc3
|
|
4
4
|
Summary: A library to authenticate with Xbox Network and use their API
|
|
5
5
|
Project-URL: Homepage, https://github.com/tr4nt0r/python-xbox
|
|
6
6
|
Author: OpenXbox
|
|
@@ -17,11 +17,12 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.14
|
|
18
18
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
19
19
|
Requires-Python: >=3.11
|
|
20
|
-
Requires-Dist: appdirs
|
|
21
20
|
Requires-Dist: ecdsa
|
|
22
21
|
Requires-Dist: httpx
|
|
23
22
|
Requires-Dist: ms-cv
|
|
24
23
|
Requires-Dist: pydantic==2.*
|
|
24
|
+
Provides-Extra: cli
|
|
25
|
+
Requires-Dist: platformdirs>=4.5.0; extra == 'cli'
|
|
25
26
|
Description-Content-Type: text/markdown
|
|
26
27
|
|
|
27
28
|
# Xbox-WebAPI
|
|
@@ -5,7 +5,6 @@ authors = [
|
|
|
5
5
|
{name = "OpenXbox"},
|
|
6
6
|
]
|
|
7
7
|
dependencies = [
|
|
8
|
-
"appdirs",
|
|
9
8
|
"ecdsa",
|
|
10
9
|
"httpx",
|
|
11
10
|
"ms_cv",
|
|
@@ -31,24 +30,35 @@ dynamic = ["version"]
|
|
|
31
30
|
[project.urls]
|
|
32
31
|
Homepage = "https://github.com/tr4nt0r/python-xbox"
|
|
33
32
|
|
|
33
|
+
[project.optional-dependencies]
|
|
34
|
+
cli = [
|
|
35
|
+
"platformdirs>=4.5.0"
|
|
36
|
+
]
|
|
37
|
+
|
|
34
38
|
[project.scripts]
|
|
35
|
-
xbox-authenticate = "
|
|
36
|
-
xbox-change-gt = "
|
|
37
|
-
xbox-friends = "
|
|
38
|
-
xbox-searchlive = "
|
|
39
|
-
xbox-xal = "
|
|
39
|
+
xbox-authenticate = "pythonxbox.scripts.authenticate:main"
|
|
40
|
+
xbox-change-gt = "pythonxbox.scripts.change_gamertag:main"
|
|
41
|
+
xbox-friends = "pythonxbox.scripts.friends:main"
|
|
42
|
+
xbox-searchlive = "pythonxbox.scripts.search:main"
|
|
43
|
+
xbox-xal = "pythonxbox.scripts.xal:main"
|
|
40
44
|
|
|
41
45
|
[tool.ruff]
|
|
42
46
|
line-length = 88
|
|
43
|
-
target-version = "
|
|
47
|
+
target-version = "py311"
|
|
44
48
|
|
|
45
49
|
[tool.ruff.lint]
|
|
46
|
-
select = ["E4", "E7", "E9", "F"]
|
|
50
|
+
select = ["E4", "E7", "E9", "F", "UP", "S"]
|
|
47
51
|
ignore = []
|
|
48
52
|
|
|
53
|
+
|
|
54
|
+
[tool.ruff.lint.per-file-ignores]
|
|
55
|
+
"**/scripts/*" = ["UP", "S104"]
|
|
56
|
+
"tests/*" = ["S101"]
|
|
57
|
+
"src/pythonxbox/authentication/xal.py" = ["S101"]
|
|
58
|
+
|
|
49
59
|
[tool.ruff.lint.isort]
|
|
50
60
|
force-sort-within-sections = true
|
|
51
|
-
known-first-party = ["
|
|
61
|
+
known-first-party = ["pythonxbox"]
|
|
52
62
|
combine-as-imports = true
|
|
53
63
|
split-on-trailing-comma = false
|
|
54
64
|
|
|
@@ -56,41 +66,22 @@ split-on-trailing-comma = false
|
|
|
56
66
|
quote-style = "double"
|
|
57
67
|
indent-style = "space"
|
|
58
68
|
|
|
59
|
-
|
|
60
|
-
[tool.bandit]
|
|
61
|
-
exclude_dirs = ["tests"]
|
|
62
|
-
tests = [
|
|
63
|
-
"B108",
|
|
64
|
-
"B306",
|
|
65
|
-
"B307",
|
|
66
|
-
"B313",
|
|
67
|
-
"B314",
|
|
68
|
-
"B315",
|
|
69
|
-
"B316",
|
|
70
|
-
"B317",
|
|
71
|
-
"B318",
|
|
72
|
-
"B319",
|
|
73
|
-
"B320",
|
|
74
|
-
"B602",
|
|
75
|
-
"B604"
|
|
76
|
-
]
|
|
77
|
-
|
|
78
69
|
[tool.hatch.version]
|
|
79
70
|
source = "regex_commit"
|
|
80
71
|
commit_extra_args = ["-e"]
|
|
81
|
-
path = "
|
|
72
|
+
path = "src/pythonxbox/__init__.py"
|
|
82
73
|
|
|
83
74
|
[tool.hatch.build.targets.sdist]
|
|
84
75
|
include = [
|
|
85
|
-
"/
|
|
76
|
+
"src/pythonxbox",
|
|
86
77
|
]
|
|
87
78
|
[tool.hatch.build.targets.wheel]
|
|
88
|
-
packages = ["
|
|
79
|
+
packages = ["src/pythonxbox"]
|
|
89
80
|
|
|
90
81
|
[tool.hatch.envs.default]
|
|
91
82
|
python = "3.13"
|
|
92
83
|
dependencies = [
|
|
93
|
-
"
|
|
84
|
+
"platformdirs==4.5.0",
|
|
94
85
|
"ecdsa==0.19.1",
|
|
95
86
|
"httpx==0.28.1",
|
|
96
87
|
"ms_cv==0.1.1",
|
|
@@ -110,12 +101,12 @@ extra-dependencies = [
|
|
|
110
101
|
"respx~=0.22",
|
|
111
102
|
"freezegun==1.5.5"
|
|
112
103
|
]
|
|
113
|
-
extra-args = ["--cov=
|
|
104
|
+
extra-args = ["--cov=src/", "--cov-report=term-missing", "--cov-report=xml", "-vv"]
|
|
114
105
|
|
|
115
106
|
[tool.pytest.ini_options]
|
|
116
107
|
asyncio_mode = "auto"
|
|
117
108
|
testpaths = ["tests"]
|
|
118
|
-
pythonpath = ["
|
|
109
|
+
pythonpath = ["src"]
|
|
119
110
|
|
|
120
111
|
[[tool.hatch.envs.hatch-test.matrix]]
|
|
121
112
|
python = ["3.14", "3.13", "3.12", "3.11"]
|
|
@@ -11,26 +11,26 @@ from typing import Any
|
|
|
11
11
|
from httpx import Response
|
|
12
12
|
from ms_cv import CorrelationVector
|
|
13
13
|
|
|
14
|
-
from
|
|
15
|
-
from
|
|
16
|
-
from
|
|
17
|
-
from
|
|
18
|
-
from
|
|
19
|
-
from
|
|
20
|
-
from
|
|
21
|
-
from
|
|
22
|
-
from
|
|
23
|
-
from
|
|
24
|
-
from
|
|
25
|
-
from
|
|
26
|
-
from
|
|
27
|
-
from
|
|
28
|
-
from
|
|
29
|
-
from
|
|
30
|
-
from
|
|
31
|
-
from
|
|
32
|
-
from
|
|
33
|
-
from
|
|
14
|
+
from pythonxbox.api.language import DefaultXboxLiveLanguages, XboxLiveLanguage
|
|
15
|
+
from pythonxbox.api.provider.account import AccountProvider
|
|
16
|
+
from pythonxbox.api.provider.achievements import AchievementsProvider
|
|
17
|
+
from pythonxbox.api.provider.catalog import CatalogProvider
|
|
18
|
+
from pythonxbox.api.provider.cqs import CQSProvider
|
|
19
|
+
from pythonxbox.api.provider.gameclips import GameclipProvider
|
|
20
|
+
from pythonxbox.api.provider.lists import ListsProvider
|
|
21
|
+
from pythonxbox.api.provider.mediahub import MediahubProvider
|
|
22
|
+
from pythonxbox.api.provider.message import MessageProvider
|
|
23
|
+
from pythonxbox.api.provider.people import PeopleProvider
|
|
24
|
+
from pythonxbox.api.provider.presence import PresenceProvider
|
|
25
|
+
from pythonxbox.api.provider.profile import ProfileProvider
|
|
26
|
+
from pythonxbox.api.provider.screenshots import ScreenshotsProvider
|
|
27
|
+
from pythonxbox.api.provider.smartglass import SmartglassProvider
|
|
28
|
+
from pythonxbox.api.provider.titlehub import TitlehubProvider
|
|
29
|
+
from pythonxbox.api.provider.usersearch import UserSearchProvider
|
|
30
|
+
from pythonxbox.api.provider.userstats import UserStatsProvider
|
|
31
|
+
from pythonxbox.authentication.manager import AuthenticationManager
|
|
32
|
+
from pythonxbox.common.exceptions import RateLimitExceededException
|
|
33
|
+
from pythonxbox.common.ratelimits import RateLimit
|
|
34
34
|
|
|
35
35
|
log = logging.getLogger("xbox.api")
|
|
36
36
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
from
|
|
1
|
+
from pythonxbox.api.provider.account.models import (
|
|
2
2
|
ChangeGamertagResult,
|
|
3
3
|
ClaimGamertagResult,
|
|
4
4
|
)
|
|
5
|
-
from
|
|
5
|
+
from pythonxbox.api.provider.baseprovider import BaseProvider
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
class AccountProvider(BaseProvider):
|
|
@@ -4,13 +4,13 @@ Achievements
|
|
|
4
4
|
Get Xbox 360 and Xbox One Achievement data
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from pythonxbox.api.provider.achievements.models import (
|
|
8
8
|
Achievement360ProgressResponse,
|
|
9
9
|
Achievement360Response,
|
|
10
10
|
AchievementResponse,
|
|
11
11
|
RecentProgressResponse,
|
|
12
12
|
)
|
|
13
|
-
from
|
|
13
|
+
from pythonxbox.api.provider.ratelimitedprovider import RateLimitedProvider
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
class AchievementsProvider(RateLimitedProvider):
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
from datetime import datetime, time
|
|
2
|
-
from typing import Any
|
|
2
|
+
from typing import Any
|
|
3
3
|
|
|
4
4
|
from pydantic import BaseModel
|
|
5
5
|
|
|
6
|
-
from
|
|
6
|
+
from pythonxbox.common.models import CamelCaseModel
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class PagingInfo(CamelCaseModel):
|
|
10
|
-
continuation_token:
|
|
10
|
+
continuation_token: str | None = None
|
|
11
11
|
total_records: int
|
|
12
12
|
|
|
13
13
|
|
|
@@ -37,20 +37,20 @@ class Title360(CamelCaseModel):
|
|
|
37
37
|
sequence: int
|
|
38
38
|
title_id: int
|
|
39
39
|
title_type: int
|
|
40
|
-
platforms:
|
|
40
|
+
platforms: list[int]
|
|
41
41
|
name: str
|
|
42
42
|
total_achievements: int
|
|
43
43
|
total_gamerscore: int
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
class Achievement360Response(CamelCaseModel):
|
|
47
|
-
achievements:
|
|
47
|
+
achievements: list[Achievement360]
|
|
48
48
|
paging_info: PagingInfo
|
|
49
49
|
version: datetime
|
|
50
50
|
|
|
51
51
|
|
|
52
52
|
class Achievement360ProgressResponse(CamelCaseModel):
|
|
53
|
-
titles:
|
|
53
|
+
titles: list[Title360]
|
|
54
54
|
paging_info: PagingInfo
|
|
55
55
|
version: datetime
|
|
56
56
|
|
|
@@ -62,7 +62,7 @@ class TitleAssociation(BaseModel):
|
|
|
62
62
|
|
|
63
63
|
class Requirement(CamelCaseModel):
|
|
64
64
|
id: str
|
|
65
|
-
current:
|
|
65
|
+
current: str | None = None
|
|
66
66
|
target: str
|
|
67
67
|
operation_type: str
|
|
68
68
|
value_type: str
|
|
@@ -70,7 +70,7 @@ class Requirement(CamelCaseModel):
|
|
|
70
70
|
|
|
71
71
|
|
|
72
72
|
class Progression(CamelCaseModel):
|
|
73
|
-
requirements:
|
|
73
|
+
requirements: list[Requirement]
|
|
74
74
|
time_unlocked: datetime
|
|
75
75
|
|
|
76
76
|
|
|
@@ -93,11 +93,11 @@ class Achievement(CamelCaseModel):
|
|
|
93
93
|
id: str
|
|
94
94
|
service_config_id: str
|
|
95
95
|
name: str
|
|
96
|
-
title_associations:
|
|
96
|
+
title_associations: list[TitleAssociation]
|
|
97
97
|
progress_state: str
|
|
98
98
|
progression: Progression
|
|
99
|
-
media_assets:
|
|
100
|
-
platforms:
|
|
99
|
+
media_assets: list[MediaAsset]
|
|
100
|
+
platforms: list[str]
|
|
101
101
|
is_secret: bool
|
|
102
102
|
description: str
|
|
103
103
|
locked_description: str
|
|
@@ -105,14 +105,14 @@ class Achievement(CamelCaseModel):
|
|
|
105
105
|
achievement_type: str
|
|
106
106
|
participation_type: str
|
|
107
107
|
time_window: Any = None
|
|
108
|
-
rewards:
|
|
108
|
+
rewards: list[Reward]
|
|
109
109
|
estimated_time: time
|
|
110
110
|
deeplink: Any = None
|
|
111
111
|
is_revoked: bool
|
|
112
112
|
|
|
113
113
|
|
|
114
114
|
class AchievementResponse(CamelCaseModel):
|
|
115
|
-
achievements:
|
|
115
|
+
achievements: list[Achievement]
|
|
116
116
|
paging_info: PagingInfo
|
|
117
117
|
|
|
118
118
|
|
|
@@ -129,5 +129,5 @@ class Title(CamelCaseModel):
|
|
|
129
129
|
|
|
130
130
|
|
|
131
131
|
class RecentProgressResponse(CamelCaseModel):
|
|
132
|
-
titles:
|
|
132
|
+
titles: list[Title]
|
|
133
133
|
paging_info: PagingInfo
|
|
@@ -2,10 +2,8 @@
|
|
|
2
2
|
Store Catalog - Lookup Product Information
|
|
3
3
|
"""
|
|
4
4
|
|
|
5
|
-
from
|
|
6
|
-
|
|
7
|
-
from xbox.webapi.api.provider.baseprovider import BaseProvider
|
|
8
|
-
from xbox.webapi.api.provider.catalog.models import (
|
|
5
|
+
from pythonxbox.api.provider.baseprovider import BaseProvider
|
|
6
|
+
from pythonxbox.api.provider.catalog.models import (
|
|
9
7
|
AlternateIdType,
|
|
10
8
|
CatalogResponse,
|
|
11
9
|
CatalogSearchResponse,
|
|
@@ -20,7 +18,7 @@ class CatalogProvider(BaseProvider):
|
|
|
20
18
|
|
|
21
19
|
async def get_products(
|
|
22
20
|
self,
|
|
23
|
-
big_ids:
|
|
21
|
+
big_ids: list[str],
|
|
24
22
|
fields: FieldsTemplate = FieldsTemplate.DETAILS,
|
|
25
23
|
**kwargs,
|
|
26
24
|
) -> CatalogResponse:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""Web API Constants."""
|
|
2
2
|
|
|
3
|
-
from
|
|
3
|
+
from pythonxbox.api.provider.catalog.models import AlternateIdType
|
|
4
4
|
|
|
5
5
|
HOME_APP_IDS = {
|
|
6
6
|
AlternateIdType.LEGACY_XBOX_PRODUCT_ID: "7b3ca835-5ef5-4d96-bc84-c1d8b5084236",
|