Yandex.Market seller API client
Project description
ya-market-api 
Python3 client for public API of yandex market
Installation
# Sync only mode
pip install ya-market-api[sync]
# Async only mode
pip install ya-market-api[async]
# All modes
pip install ya-market-api[all]
Instantiating
There are several ways to work with the API (synchronous and asynchronous). Both interfaces have the same signatures, the only difference is the need to use async/await keywords.
from ya_market_api.sync_api import SyncAPI # Sync mode
from ya_market_api.async_api import AsyncAPI # Async mode
def main() -> None:
api = SyncAPI.build(
api_key="...",
business_id=..., # (optional) required for the Feedback API
)
# Do things here...
async def main() -> None:
api = await AsyncAPI.build(
api_key="...",
business_id=..., # (optional) required for the Feedback API
)
# Do things here...
await api.session.close()
Where can I get api key?
See official docs.
Guide API
Get token info
# Sync mode
from ya_market_api.sync_api import SyncAPI
api = SyncAPI.build(...)
response = api.guide.get_token_info()
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/auth/getAuthTokenInfo
Get delivery services
# Sync mode
from ya_market_api.sync_api import SyncAPI
api = SyncAPI.build(...)
response = api.guide.get_delivery_services()
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/orders/getDeliveryServices
Guide Region API
Get region countries
# Sync mode
from ya_market_api.sync_api import SyncAPI
api = SyncAPI.build(...)
response = api.guide.region.get_region_countries()
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/regions/getRegionsCodes
Search region
# Sync mode
from ya_market_api.sync_api import SyncAPI
from ya_market_api.guide.region.dataclass import RegionSearchRequest
api = SyncAPI.build(...)
request = RegionSearchRequest(name="Москва", limit=100, page_token=None)
response = api.guide.region.search_region(request)
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/regions/searchRegionsByName
Get region info
# Sync mode
from ya_market_api.sync_api import SyncAPI
from ya_market_api.guide.region.dataclass import RegionInfoRequest
api = SyncAPI.build(...)
request = RegionInfoRequest(region_id=1)
response = api.guide.region.get_region_info(request)
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/regions/searchRegionsById
Get region children
# Sync mode
from ya_market_api.sync_api import SyncAPI
from ya_market_api.guide.region.dataclass import RegionChildrenRequest
api = SyncAPI.build(...)
request = RegionChildrenRequest(region_id=1, page=1, page_size=10)
response = api.guide.region.get_region_children(request)
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/regions/searchRegionChildren
Feedback API
Get feedback list
# Sync mode
from ya_market_api.sync_api import SyncAPI
from ya_market_api.feedback.dataclass import FeedbackListRequest
from arrow import get
api = SyncAPI.build(...)
response = api.feedback.get_feedback_list()
# or
request = FeedbackListRequest(datetime_from=get(2025, 1, 1), date_to=get(2025, 1, 31))
response = api.feedback.get_feedback_list(request)
See signature of the FeedbackListRequest class and the docs to get info about all available params.
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/goods-feedback/getGoodsFeedbacks
Get feedback comment list
# Sync mode
from ya_market_api.sync_api import SyncAPI
from ya_market_api.feedback.dataclass import FeedbackCommentListRequest
api = SyncAPI.build(...)
request = FeedbackCommentListRequest(feedback_id=512)
response = api.feedback.get_feedback_comment_list(request)
See signature of the FeedbackCommentListRequest class and the docs to get info about all available params.
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/goods-feedback/getGoodsFeedbackComments
Add feedback comment
# Sync mode
from ya_market_api.sync_api import SyncAPI
from ya_market_api.feedback.dataclass import FeedbackCommentAddRequest
api = SyncAPI.build(...)
request = FeedbackCommentAddRequest.create(feedback_id=512, text="COMMENT_TEXT", parent_id=1024)
response = api.feedback.add_feedback_comment(request)
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/goods-feedback/updateGoodsFeedbackComment
Update feedback comment
# Sync mode
from ya_market_api.sync_api import SyncAPI
from ya_market_api.feedback.dataclass import FeedbackCommentUpdateRequest
api = SyncAPI.build(...)
request = FeedbackCommentUpdateRequest.create(feedback_id=512, comment_id=2048, text="COMMENT_TEXT")
response = api.feedback.update_feedback_comment(request)
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/goods-feedback/updateGoodsFeedbackComment
Delete feedback comment
# Sync mode
from ya_market_api.sync_api import SyncAPI
from ya_market_api.feedback.dataclass import FeedbackCommentDeleteRequest
api = SyncAPI.build(...)
request = FeedbackCommentDeleteRequest(id=512)
response = api.feedback.delete_comment_feedback(request)
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/goods-feedback/deleteGoodsFeedbackComment
Skip feedback reaction
# Sync mode
from ya_market_api.sync_api import SyncAPI
from ya_market_api.feedback.dataclass import FeedbackReactionSkipRequest
api = SyncAPI.build(...)
request = FeedbackReactionSkipRequest(feedback_ids=(64, 128, 256))
response = api.feedback.skip_feedback_reaction(request)
Docs: https://yandex.ru/dev/market/partner-api/doc/ru/reference/goods-feedback/skipGoodsFeedbacksReaction
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ya_market_api-0.1.0.tar.gz.
File metadata
- Download URL: ya_market_api-0.1.0.tar.gz
- Upload date:
- Size: 183.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f08ac2e31f91269d5bbe7d477a16e371d1996eba8c9fc8c9cae87a04a4f654bd
|
|
| MD5 |
1563a044c375e1bf39ce825c72f60546
|
|
| BLAKE2b-256 |
73f62d5003d3cdf16f609a4be25376d04544eb813e1445a5dc915fc87a037d61
|
Provenance
The following attestation bundles were made for ya_market_api-0.1.0.tar.gz:
Publisher:
publish.yml on Kirill-Lekhov/ya-market-api
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ya_market_api-0.1.0.tar.gz -
Subject digest:
f08ac2e31f91269d5bbe7d477a16e371d1996eba8c9fc8c9cae87a04a4f654bd - Sigstore transparency entry: 268682652
- Sigstore integration time:
-
Permalink:
Kirill-Lekhov/ya-market-api@c4ec41b9c96b187a562957a8d8a18ea862fea56f -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Kirill-Lekhov
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c4ec41b9c96b187a562957a8d8a18ea862fea56f -
Trigger Event:
release
-
Statement type:
File details
Details for the file ya_market_api-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ya_market_api-0.1.0-py3-none-any.whl
- Upload date:
- Size: 27.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3dfb374e54a30f48363af37e9659b1607b0d114d0f82511e4f21970d80a7d4c0
|
|
| MD5 |
21930e0d99d06af7f082cddbe088a707
|
|
| BLAKE2b-256 |
738416c7c677ca5f2274b0fcb15dbb1bb5748b22379ead7d32526cd41eb64d30
|
Provenance
The following attestation bundles were made for ya_market_api-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on Kirill-Lekhov/ya-market-api
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ya_market_api-0.1.0-py3-none-any.whl -
Subject digest:
3dfb374e54a30f48363af37e9659b1607b0d114d0f82511e4f21970d80a7d4c0 - Sigstore transparency entry: 268682653
- Sigstore integration time:
-
Permalink:
Kirill-Lekhov/ya-market-api@c4ec41b9c96b187a562957a8d8a18ea862fea56f -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Kirill-Lekhov
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c4ec41b9c96b187a562957a8d8a18ea862fea56f -
Trigger Event:
release
-
Statement type: