feat: regenerate SDK from sdk-generator master (v1.0.0) + latest API spec#9
Conversation
…spec (no format) - sdk-generator: master @ 3b63448 (v1.0.0) - API spec: docs_core.postmenAPI.com @ update-doc-add-automatic (f91fb04) - Version bump: 3.0.1 → 3.2.0 - New: SpecificShipperAccounts (FedEx create + update), LocationV3CourierSpecific, RegulatoryDataItemV3, PostLabelsRequest.automatic field - Removed: ShipperAccountV3Settings, PostShipperAccountsRequestSettings (replaced by FedEx-specific models) - bouncycastle kept at 1.84 (dependabot bump preserved) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
aftership-abas
left a comment
There was a problem hiding this comment.
Changes Requested. The generated API models and documentation need to match the checked-in source contract before this SDK release.
Review model: gpt-5.6-terra
| | auth_type | enum | | Default value: `AuthType.API_KEY` <br > AES authentication: `AuthType.AES` <br > RSA authentication: `AuthType.RSA` | | ||
| | api_secret | string | | Required if the authentication type is `AuthType.AES` or `AuthType.RSA` | | ||
| | domain | string | | AfterShip API domain. Default value: https://sandbox-api.aftership.com | | ||
| | domain | string | | AfterShip API domain. Default value: https://api.aftership.com | |
There was a problem hiding this comment.
🟡 The source still sets ShippingSdk.DEFAULT_DOMAIN to https://sandbox-api.aftership.com; only this README line changed. A caller that follows the documented default will expect production but the SDK sends requests to sandbox. Keep the documentation and runtime default aligned.
| request.setDescription("valid_value"); | ||
| PostV3CouriersFedexShipperAccountsRequestCredentials credentials = new PostV3CouriersFedexShipperAccountsRequestCredentials(); | ||
| request.setCredentials(credentials); | ||
| request.setAddress(); |
There was a problem hiding this comment.
🟡 This example does not compile: the generated request only exposes setAddress(Map<String, Object>), not a zero-argument setter. Show construction of an address map (or change the generated type) so users can copy this example.
| import com.google.gson.annotations.SerializedName; | ||
| import com.aftership.shipping.base.Resource; | ||
|
|
||
| public class RegulatoryDataItemV3 extends Resource { |
There was a problem hiding this comment.
🟡 The source schema defines two regulatory_data variants with required CPSC fields, but this generated class has no fields. Gson can therefore only serialize each entry as {}, making the newly exposed regulatory-data request unusable. Update the generator/source mapping to preserve the variant fields.
| import com.google.gson.annotations.SerializedName; | ||
| import com.aftership.shipping.base.Resource; | ||
|
|
||
| public class LocationV3CourierSpecific extends Resource { |
There was a problem hiding this comment.
🟡 The source schema defines courier_specific.ups.public_access_point_id, but this generated model has no mapped members. Gson will discard that value during deserialization, so callers cannot consume the newly exposed location data. Generate the nested UPS model and field mapping.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Summary
3b63448(v1.0.0)docs_core.postmenAPI.com@update-doc-add-automatic(f91fb04)3.0.1→3.2.0Changes
SpecificShipperAccountsAPI — FedEx-specific shipper account create & update endpointsLocationV3CourierSpecificmodelRegulatoryDataItemV3model (CPSC compliance)PostLabelsRequest.automaticfield — apply org automation rules on label creationShipperAccountV3Settings,PostShipperAccountsRequestSettings(replaced by FedEx-specific models)1.84(dependabot bump from master)Notes