Summary
Add public sync and async clients for the Vuforia Model Target Web API.
The API uses OAuth2 client credentials and an asynchronous dataset-generation workflow: create a standard or advanced Model Target dataset, poll its status, download the generated zip, and delete the dataset. The OpenAPI reference documents the endpoint schemas and error responses.
vws-python-mock already implements this workflow, including authentication and representative success and failure responses, so the client can be tested through real HTTP transports without bespoke test doubles.
Suggested scope
- Add synchronous and asynchronous Model Target service clients, following the existing
VWS / AsyncVWS conventions.
- Authenticate with OAuth2 client credentials and manage the returned bearer token.
- Support standard and advanced dataset creation.
- Support dataset status retrieval and a wait/poll helper.
- Support dataset zip download and dataset deletion.
- Add typed request/response structures and status enums where they improve the public interface.
- Parse the Model Target API error envelope into useful public exceptions, including OAuth2/JWT authentication failures and validation errors.
- Preserve configurable base URLs and transport injection so the clients work with
MockVWS.
Acceptance criteria
- Public synchronous and asynchronous APIs cover the complete create → poll → download → delete lifecycle.
- Tests exercise both clients through
vws-python-mock for standard and advanced datasets.
- Tests cover representative authentication, validation, unknown-dataset, processing, and download failure responses.
- Public API documentation, examples, and a news fragment are included.
Summary
Add public sync and async clients for the Vuforia Model Target Web API.
The API uses OAuth2 client credentials and an asynchronous dataset-generation workflow: create a standard or advanced Model Target dataset, poll its status, download the generated zip, and delete the dataset. The OpenAPI reference documents the endpoint schemas and error responses.
vws-python-mockalready implements this workflow, including authentication and representative success and failure responses, so the client can be tested through real HTTP transports without bespoke test doubles.Suggested scope
VWS/AsyncVWSconventions.MockVWS.Acceptance criteria
vws-python-mockfor standard and advanced datasets.