# `api.jobs.shipment.add_accessorial` > `POST /job/{jobDisplayId}/shipment/accessorial` — ACPortal **Python** ```python api.jobs.shipment.add_accessorial(job_display_id: int, *, data: AccessorialAddRequest | dict) -> ServiceBaseResponse ``` **CLI** ```bash ab jobs shipment add_accessorial [--data ...] ``` ``POST /job/{jobDisplayId}/shipment/accessorial`` Request model: :class:`AccessorialAddRequest`. ## Request body — `AccessorialAddRequest` | Field | Type | Required | Description | |---|---|---|---| | `addOnId` | `Optional[str]` | no | Accessorial ID to add | ## Response Returns `ServiceBaseResponse`. | Field | Type | Required | Description | |---|---|---|---| | `success` | `Optional[bool]` | no | Whether the operation succeeded | | `errorMessage` | `Optional[str]` | no | Error detail when success is False | | `jobSubManagementStatus` | `Optional[dict]` | no | Current job sub-management status | | `documents` | `Optional[list[str]]` | no | Document URLs/references generated by operation | | `errors` | `Optional[dict]` | no | Detailed error object when success is False | | `confirmRequired` | `Optional[bool]` | no | Whether user confirmation is needed | | `notifications` | `Optional[list[str]]` | no | Notification messages for user | | `shipmentId` | `Optional[str]` | no | Shipment UUID created or modified | | `shipmentAcceptIdentifier` | `Optional[str]` | no | Carrier acceptance reference | | `weight` | `Optional[ShipmentWeight]` | no | Shipment weight details | | `totalNetChargeAmount` | `Optional[float]` | no | Total net charge amount | | `currencyCode` | `Optional[str]` | no | Currency code (e.g., USD) | | `internationalInfoRequired` | `Optional[bool]` | no | Whether international info is needed | | `shipOutDateRequired` | `Optional[bool]` | no | Whether ship-out date confirmation is needed | | `fedExExpressFreightDetailRequired` | `Optional[bool]` | no | Whether FedEx Express freight details are required | | `carrierAPI` | `Optional[int]` | no | Carrier API type code | --- [← Back to api.jobs](../jobs.md)