diff --git a/CHANGELOG.md b/CHANGELOG.md index 05eeb8581..4e052be63 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # CHANGELOG +## Next Release + +- Adds `delivery_evidence` property and `DeliveryEvidence` model to `Tracker` object + ## v9.1.0 (2026-10-29) - Adds `manufacturer_product_id` and `standardized_product_id` to the `CustomsItem` model and create parameters, including customs items nested in `CustomsInfo` create parameters diff --git a/audit-ci.jsonc b/audit-ci.jsonc index 622a50f18..780553a40 100644 --- a/audit-ci.jsonc +++ b/audit-ci.jsonc @@ -2,5 +2,5 @@ "$schema": "https://github.com/IBM/audit-ci/raw/main/docs/schema.json", // Only fail the audit if there are critical vulnerabilities. "critical": true, - "allowlist": ["GHSA-4mjr-xmp4-gh2g", "GHSA-x5fp-wj9c-mxmx"], + "allowlist": ["GHSA-4mjr-xmp4-gh2g", "GHSA-x5fp-wj9c-mxmx", "GHSA-g3hv-75wg-m249"], } diff --git a/src/models/delivery_evidence.ts b/src/models/delivery_evidence.ts new file mode 100644 index 000000000..3276aa3b7 --- /dev/null +++ b/src/models/delivery_evidence.ts @@ -0,0 +1,10 @@ +/** + * A DeliveryEvidence represents a proof of delivery image attached to a {@link Tracker}. + * `type` is `signature` or `delivery`, and `image` is a URL to the image. + * Image URLs aren't guaranteed to remain available, so download and store any image you need to keep. + * @public + */ +export default class DeliveryEvidence { + declare type?: string | null; + declare image: string; +} diff --git a/src/models/tracker.ts b/src/models/tracker.ts index 1e1ff45dc..1eabbc0e9 100644 --- a/src/models/tracker.ts +++ b/src/models/tracker.ts @@ -1,3 +1,4 @@ +import DeliveryEvidence from './delivery_evidence'; import EasyPostObject from './easypost_object'; /** @@ -8,6 +9,7 @@ import EasyPostObject from './easypost_object'; export default class Tracker extends EasyPostObject { declare carrier_detail?: Record | null; declare carrier?: string | null; + declare delivery_evidence?: DeliveryEvidence[] | null; declare est_delivery_date?: string | null; declare fees?: Record[] | null; declare finalized?: boolean | null; diff --git a/test/services/tracker.test.ts b/test/services/tracker.test.ts index f6b29d611..b3fa8fb76 100644 --- a/test/services/tracker.test.ts +++ b/test/services/tracker.test.ts @@ -28,6 +28,7 @@ describe('Tracker Service', function () { expect(tracker).to.be.an.instanceOf(Tracker); expect(tracker.id).to.match(/^trk_/); expect(tracker.status).to.equal('pre_transit'); + expect(tracker.delivery_evidence).to.deep.equal([]); }); it('retrieves a tracker', async function () {