Generated Python (and future TypeScript) clients for every marketplace EasyeSuite integrates with. One repo, many marketplaces, one regen pipeline.
marketplace-api-clients/
├── specs/ # OpenAPI YAMLs — source of truth for codegen
│ └── <marketplace>/<spec>.yaml
├── <marketplace>/<package>/ # generated client per spec
└── .github/workflows/regenerate.yml # matrix codegen across all marketplaces
| Marketplace | Package | Path | Spec | Latest tag |
|---|---|---|---|---|
| Target | target-orders-client |
target/orders |
seller_orders-v1 |
target-orders-v2.0.0 |
| Target | target-sellers-client |
target/sellers |
sellers-v1 |
target-sellers-v2.0.0 |
| Target | target-taxonomy-client |
target/taxonomy |
item_taxonomies-v2 |
target-taxonomy-v3.0.0 |
Coming: eBay, Amazon SP-API, Mirakl, Walmart.
<marketplace>-<package>-v<semver>. Examples:
target-orders-v2.0.0target-sellers-v1.1.0ebay-sell-fulfillment-v2.0.0amazon-spapi-v3.0.0
# uv
uv add "target-orders-client @ git+https://github.com/acksession/marketplace-api-clients.git@target-orders-v2.0.0#subdirectory=target/orders"
uv add "target-sellers-client @ git+https://github.com/acksession/marketplace-api-clients.git@target-sellers-v2.0.0#subdirectory=target/sellers"
uv add "target-taxonomy-client @ git+https://github.com/acksession/marketplace-api-clients.git@target-taxonomy-v3.0.0#subdirectory=target/taxonomy"
# pip
pip install "target-orders-client @ git+https://github.com/acksession/marketplace-api-clients.git@target-orders-v2.0.0#subdirectory=target/orders"[project]
dependencies = [
"target-orders-client @ git+https://github.com/acksession/marketplace-api-clients.git@target-orders-v2.0.0#subdirectory=target/orders",
"target-sellers-client @ git+https://github.com/acksession/marketplace-api-clients.git@target-sellers-v2.0.0#subdirectory=target/sellers",
"target-taxonomy-client @ git+https://github.com/acksession/marketplace-api-clients.git@target-taxonomy-v3.0.0#subdirectory=target/taxonomy",
]- Drop the OpenAPI YAML(s) into
specs/<marketplace>/ - Run codegen (see below) — output goes to
<marketplace>/<package>/ - Add a
pyproject.tomlper package (usetarget/orders/pyproject.tomlas a template — rename project + package name) - Tag:
git tag <marketplace>-<package>-v1.0.0 && git push --tags - Add an entry to the Packages table above
docker run --rm -v ${PWD}:/work openapitools/openapi-generator-cli generate \
-i /work/specs/target/seller_orders-v1.yaml \
-g python \
-o /work/target/orders \
--package-name target_orders_client \
--additional-properties=projectName=target-orders-client,packageVersion=1.0.1Then bump version in target/orders/pyproject.toml, commit, tag.
Tag prefix per package keeps versions independent.
git tag target-orders-v1.0.1 -m "fix: correct fulfillment payload model"
git push origin target-orders-v1.0.1
git tag ebay-sell-fulfillment-v2.0.0
git push origin ebay-sell-fulfillment-v2.0.0Consumers update the @ ref in their pyproject.toml.
This repo replaces the deprecated acksession/target-api-clients (now archived). All Target clients moved under target/ to make room for other marketplaces.
Proprietary — Acksession internal.