How wilkessidney/selling-partner-api-models works
This repository provides Selling Partner API models and supporting developer libraries. The principal runtime path in the sampled clients is obtaining an LWA access token, then using it to authorize an API client; Java and PHP excerpts also show optional token caching. The tree documents separate restricted-data-token signers and document upload/download helpers, alongside Data Kiosk schemas. The schema and document-helper internals were not sampled, so their links are omitted or marked unverified rather than inferred.
Main entry points: LWAClient.java Java LWA client · LWAClient.php PHP LWA client · spapiclient.py Python SP-API client · HttpTransferClient.java HTTP transfer interface
Components 25
Authorization clients
- Java LWA client
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAClient.java - Token request metadata
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAAccessTokenRequestMeta.java - Java token cache
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAAccessTokenCache.java - Java cache implementation
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAAccessTokenCacheImpl.java - Scope serialization
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAClientScopesSerializerDeserializer.java - C# LWA client
clients/sellingpartner-api-aa-csharp/src/Amazon.SellingPartnerAPIAA/LWAClient.cs - C# token metadata
clients/sellingpartner-api-aa-csharp/src/Amazon.SellingPartnerAPIAA/LWAAccessTokenRequestMeta.cs - PHP LWA client
clients/sellingpartner-api-aa-php/src/authandauth/LWAClient.php - PHP token cache
clients/sellingpartner-api-aa-php/src/authandauth/LWAAccessTokenCache.php - PHP authorization signer
clients/sellingpartner-api-aa-php/src/authandauth/LWAAuthorizationSigner.php - PHP restricted token signer
clients/sellingpartner-api-aa-php/src/authandauth/RestrictedDataTokenSigner.php - Python token cache
clients/sellingpartner-api-aa-python/auth/LwaRequest.py - JavaScript auth helper
clients/sellingpartner-api-aa-javascript/src/helper/LwaAuthClient.mjs
API access
- Python SP-API client
clients/sellingpartner-api-aa-python/spapi/spapiclient.py - Restricted-token workflows
clients/sample-code/RestrictedDataTokenWorkflow.java - Delegated token workflows
clients/sample-code/DelegatedRestrictedDataTokenWorkflowForDelegator.java
Document transfer
- Document download
clients/sellingpartner-api-documents-helper-java/src/main/java/com/amazon/spapi/documents/DownloadHelper.java - Document upload
clients/sellingpartner-api-documents-helper-java/src/main/java/com/amazon/spapi/documents/UploadHelper.java - HTTP transfer interface
clients/sellingpartner-api-documents-helper-java/src/main/java/com/amazon/spapi/documents/HttpTransferClient.java - OkHttp transfer client
clients/sellingpartner-api-documents-helper-java/src/main/java/com/amazon/spapi/documents/impl/OkHttpTransferClient.java
API schemas
- Data Kiosk schemas
schemas/data-kiosk
Other components
- Developer
- Login With Amazon
- Selling Partner API
- Document service
Connections 21
- Java LWA client → Token request metadata: serializes request
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAClient.java - Java LWA client → Java token cache: checks and updates
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAClient.java - Java cache implementation → Java token cache: implements
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAAccessTokenCacheImpl.java - Scope serialization → Scope serialization: serializes scopes
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAClientScopesSerializerDeserializer.java - Java LWA client → Login With Amazon: requests token
clients/sellingpartner-api-aa-java/src/com/amazon/SellingPartnerAPIAA/LWAClient.java - C# LWA client → C# token metadata: builds request
clients/sellingpartner-api-aa-csharp/src/Amazon.SellingPartnerAPIAA/LWAClient.cs - C# LWA client → Login With Amazon: posts token request
clients/sellingpartner-api-aa-csharp/src/Amazon.SellingPartnerAPIAA/LWAClient.cs - PHP LWA client → PHP token cache: uses optional cache
clients/sellingpartner-api-aa-php/src/authandauth/LWAClient.php - PHP LWA client → Login With Amazon: requests token
clients/sellingpartner-api-aa-php/src/authandauth/LWAClient.php - PHP authorization signer → PHP LWA client: gets access token
clients/sellingpartner-api-aa-php/src/authandauth/LWAAuthorizationSigner.php - PHP restricted token signer → PHP authorization signer: uses signer
clients/sellingpartner-api-aa-php/src/authandauth/RestrictedDataTokenSigner.php - Python token cache → Login With Amazon: requests token
clients/sellingpartner-api-aa-python/auth/LwaRequest.py - Python SP-API client → Python token cache: gets access token
clients/sellingpartner-api-aa-python/spapi/spapiclient.py - Python SP-API client → Selling Partner API: creates API client
clients/sellingpartner-api-aa-python/spapi/spapiclient.py - Developer → Python SP-API client: configures client
- Developer → Restricted-token workflows: runs workflow
- Developer → Delegated token workflows: runs workflow
- Document download → HTTP transfer interface: uses transfer
- Document upload → HTTP transfer interface: uses transfer
- OkHttp transfer client → HTTP transfer interface: implements
clients/sellingpartner-api-documents-helper-java/src/main/java/com/amazon/spapi/documents/impl/OkHttpTransferClient.java - OkHttp transfer client → Document service: transfers documents