@shipengine/connect-carrier-api 2.12.20 → 4.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/app/build-app-deployment.d.ts +3 -0
- package/lib/app/build-app-deployment.js +41 -0
- package/lib/app/build-app-deployment.js.map +1 -0
- package/lib/app/carrier-app-definition.d.ts +7 -0
- package/lib/app/create-endpoint-mapping.d.ts +4 -0
- package/lib/app/create-endpoint-mapping.js +26 -0
- package/lib/app/create-endpoint-mapping.js.map +1 -0
- package/lib/app/index.d.ts +4 -2
- package/lib/app/index.js +4 -2
- package/lib/app/index.js.map +1 -1
- package/lib/app/metadata/index.d.ts +2 -0
- package/lib/app/metadata/index.js +2 -0
- package/lib/app/metadata/index.js.map +1 -1
- package/lib/app/{native-rating/data-validator.d.ts → native-rating-data-validator.d.ts} +1 -1
- package/lib/app/{native-rating/data-validator.js → native-rating-data-validator.js} +1 -1
- package/lib/app/native-rating-data-validator.js.map +1 -0
- package/lib/models/addresses/address-base-schema.d.ts +2 -0
- package/lib/models/addresses/address-base-schema.js +24 -0
- package/lib/models/addresses/address-base-schema.js.map +1 -0
- package/lib/models/addresses/address-residential-indicator-schema.d.ts +2 -0
- package/lib/models/addresses/address-residential-indicator-schema.js +8 -0
- package/lib/models/addresses/address-residential-indicator-schema.js.map +1 -0
- package/lib/models/addresses/pudo-location-schema.d.ts +2 -0
- package/lib/models/addresses/pudo-location-schema.js +11 -0
- package/lib/models/addresses/pudo-location-schema.js.map +1 -0
- package/lib/models/addresses/ship-to-schema.d.ts +2 -0
- package/lib/models/addresses/ship-to-schema.js +11 -0
- package/lib/models/addresses/ship-to-schema.js.map +1 -0
- package/lib/models/advanced-options-schema.d.ts +2 -0
- package/lib/models/advanced-options-schema.js +15 -0
- package/lib/models/advanced-options-schema.js.map +1 -0
- package/lib/models/advanced-options.d.ts +0 -5
- package/lib/models/advanced-options.js.map +1 -1
- package/lib/models/authorization-schema.d.ts +2 -0
- package/lib/models/authorization-schema.js +10 -0
- package/lib/models/authorization-schema.js.map +1 -0
- package/lib/models/billing/index.d.ts +0 -1
- package/lib/models/billing/index.js +0 -1
- package/lib/models/billing/index.js.map +1 -1
- package/lib/models/customs/customs-charges-schema.d.ts +2 -0
- package/lib/models/customs/customs-charges-schema.js +13 -0
- package/lib/models/customs/customs-charges-schema.js.map +1 -0
- package/lib/models/customs/customs-content-types-schema.d.ts +2 -0
- package/lib/models/customs/customs-content-types-schema.js +8 -0
- package/lib/models/customs/customs-content-types-schema.js.map +1 -0
- package/lib/models/customs/customs-item-schema.d.ts +2 -0
- package/lib/models/customs/customs-item-schema.js +21 -0
- package/lib/models/customs/customs-item-schema.js.map +1 -0
- package/lib/models/customs/customs-non-delivery-schema.d.ts +2 -0
- package/lib/models/customs/customs-non-delivery-schema.js +8 -0
- package/lib/models/customs/customs-non-delivery-schema.js.map +1 -0
- package/lib/models/customs/customs-schema.d.ts +2 -0
- package/lib/models/customs/customs-schema.js +25 -0
- package/lib/models/customs/customs-schema.js.map +1 -0
- package/lib/models/customs/customs.d.ts +2 -2
- package/lib/models/importer-records/importer-of-record-schema.d.ts +2 -0
- package/lib/models/importer-records/importer-of-record-schema.js +20 -0
- package/lib/models/importer-records/importer-of-record-schema.js.map +1 -0
- package/lib/models/importer-records/{importer_of_record.js → importer-of-record.js} +1 -1
- package/lib/models/importer-records/importer-of-record.js.map +1 -0
- package/lib/models/inconterms/terms-of-trade-code-schema.d.ts +2 -0
- package/lib/models/inconterms/terms-of-trade-code-schema.js +8 -0
- package/lib/models/inconterms/terms-of-trade-code-schema.js.map +1 -0
- package/lib/models/index.d.ts +0 -3
- package/lib/models/index.js +0 -3
- package/lib/models/index.js.map +1 -1
- package/lib/models/labels/label-message-schema.d.ts +2 -0
- package/lib/models/labels/label-message-schema.js +11 -0
- package/lib/models/labels/label-message-schema.js.map +1 -0
- package/lib/models/pickup/shipped-package-schema.d.ts +2 -0
- package/lib/models/pickup/shipped-package-schema.js +25 -0
- package/lib/models/pickup/shipped-package-schema.js.map +1 -0
- package/lib/models/pickup/shipped-shipment-schema.d.ts +3 -0
- package/lib/models/pickup/shipped-shipment-schema.js +21 -0
- package/lib/models/pickup/shipped-shipment-schema.js.map +1 -0
- package/lib/models/taxes/tax-identifier-schema.d.ts +2 -0
- package/lib/models/taxes/tax-identifier-schema.js +13 -0
- package/lib/models/taxes/tax-identifier-schema.js.map +1 -0
- package/lib/models/taxes/tax-identifier-type-schema.d.ts +2 -0
- package/lib/models/taxes/tax-identifier-type-schema.js +8 -0
- package/lib/models/taxes/tax-identifier-type-schema.js.map +1 -0
- package/lib/models/taxes/tax-identifier.d.ts +1 -3
- package/lib/models/taxes/tax-identifier.js.map +1 -1
- package/lib/models/units/dimension-details-schema.d.ts +2 -0
- package/lib/models/units/dimension-details-schema.js +14 -0
- package/lib/models/units/dimension-details-schema.js.map +1 -0
- package/lib/models/units/dimension-unit-schema.d.ts +2 -0
- package/lib/models/units/dimension-unit-schema.js +8 -0
- package/lib/models/units/dimension-unit-schema.js.map +1 -0
- package/lib/models/units/weight-details-schema.d.ts +2 -0
- package/lib/models/units/weight-details-schema.js +13 -0
- package/lib/models/units/weight-details-schema.js.map +1 -0
- package/lib/models/units/weight-unit-schema.d.ts +2 -0
- package/lib/models/units/weight-unit-schema.js +8 -0
- package/lib/models/units/weight-unit-schema.js.map +1 -0
- package/lib/requests/base-request-schema.d.ts +2 -0
- package/lib/requests/base-request-schema.js +12 -0
- package/lib/requests/base-request-schema.js.map +1 -0
- package/lib/requests/cancel-notification-request-schema.d.ts +2 -0
- package/lib/requests/cancel-notification-request-schema.js +12 -0
- package/lib/requests/cancel-notification-request-schema.js.map +1 -0
- package/lib/requests/create-label-request.d.ts +1 -3
- package/lib/requests/create-label-request.js.map +1 -1
- package/lib/requests/get-rates-request.d.ts +1 -3
- package/lib/requests/get-rates-request.js.map +1 -1
- package/package.json +4 -4
- package/spec.json +1 -49
- package/src/app/build-app-deployment.ts +50 -0
- package/src/app/carrier-app-definition.ts +10 -0
- package/src/app/create-endpoint-mapping.ts +25 -0
- package/src/app/index.ts +4 -2
- package/src/app/metadata/index.ts +2 -0
- package/src/app/{native-rating/data-validator.ts → native-rating-data-validator.ts} +1 -1
- package/src/models/addresses/address-base-schema.ts +20 -0
- package/src/models/addresses/address-residential-indicator-schema.ts +6 -0
- package/src/models/addresses/pudo-location-schema.ts +7 -0
- package/src/models/addresses/ship-to-schema.ts +7 -0
- package/src/models/advanced-options-schema.ts +11 -0
- package/src/models/advanced-options.ts +0 -5
- package/src/models/authorization-schema.ts +6 -0
- package/src/models/billing/index.ts +0 -1
- package/src/models/customs/customs-charges-schema.ts +9 -0
- package/src/models/customs/customs-content-types-schema.ts +4 -0
- package/src/models/customs/customs-item-schema.ts +17 -0
- package/src/models/customs/customs-non-delivery-schema.ts +4 -0
- package/src/models/customs/customs-schema.ts +21 -0
- package/src/models/customs/customs.ts +2 -2
- package/src/models/importer-records/importer-of-record-schema.ts +16 -0
- package/src/models/inconterms/terms-of-trade-code-schema.ts +4 -0
- package/src/models/index.ts +0 -3
- package/src/models/labels/label-message-schema.ts +7 -0
- package/src/models/pickup/shipped-package-schema.ts +21 -0
- package/src/models/pickup/shipped-shipment-schema.ts +18 -0
- package/src/models/taxes/tax-identifier-schema.ts +9 -0
- package/src/models/taxes/tax-identifier-type-schema.ts +4 -0
- package/src/models/taxes/tax-identifier.ts +1 -3
- package/src/models/units/dimension-details-schema.ts +10 -0
- package/src/models/units/dimension-unit-schema.ts +4 -0
- package/src/models/units/weight-details-schema.ts +9 -0
- package/src/models/units/weight-unit-schema.ts +4 -0
- package/src/requests/base-request-schema.ts +8 -0
- package/src/requests/cancel-notification-request-schema.ts +8 -0
- package/src/requests/create-label-request.ts +0 -3
- package/src/requests/get-rates-request.ts +0 -3
- package/tsconfig.tsbuildinfo +1 -1
- package/lib/app/build-native-rating-routes.d.ts +0 -3
- package/lib/app/build-native-rating-routes.js +0 -105
- package/lib/app/build-native-rating-routes.js.map +0 -1
- package/lib/app/carrier-app.d.ts +0 -15
- package/lib/app/carrier-app.js +0 -166
- package/lib/app/carrier-app.js.map +0 -1
- package/lib/app/create-get-rates-handler.d.ts +0 -4
- package/lib/app/create-get-rates-handler.js +0 -100
- package/lib/app/create-get-rates-handler.js.map +0 -1
- package/lib/app/internal/branded-image.d.ts +0 -9
- package/lib/app/internal/branded-image.js +0 -3
- package/lib/app/internal/branded-image.js.map +0 -1
- package/lib/app/internal/carrier-app-specification.d.ts +0 -16
- package/lib/app/internal/carrier-app-specification.js +0 -3
- package/lib/app/internal/carrier-app-specification.js.map +0 -1
- package/lib/app/internal/carrier-specification.d.ts +0 -38
- package/lib/app/internal/carrier-specification.js +0 -86
- package/lib/app/internal/carrier-specification.js.map +0 -1
- package/lib/app/internal/connect-runtime-app.d.ts +0 -14
- package/lib/app/internal/connect-runtime-app.js +0 -3
- package/lib/app/internal/connect-runtime-app.js.map +0 -1
- package/lib/app/internal/document-template.d.ts +0 -7
- package/lib/app/internal/document-template.js +0 -3
- package/lib/app/internal/document-template.js.map +0 -1
- package/lib/app/internal/index.d.ts +0 -3
- package/lib/app/internal/index.js +0 -7
- package/lib/app/internal/index.js.map +0 -1
- package/lib/app/internal/metadata.d.ts +0 -13
- package/lib/app/internal/metadata.js +0 -64
- package/lib/app/internal/metadata.js.map +0 -1
- package/lib/app/internal/native-rating-specification.d.ts +0 -5
- package/lib/app/internal/native-rating-specification.js +0 -3
- package/lib/app/internal/native-rating-specification.js.map +0 -1
- package/lib/app/internal/route.d.ts +0 -27
- package/lib/app/internal/route.js +0 -12
- package/lib/app/internal/route.js.map +0 -1
- package/lib/app/native-rating/base-rate-context.d.ts +0 -3
- package/lib/app/native-rating/base-rate-context.js +0 -83
- package/lib/app/native-rating/base-rate-context.js.map +0 -1
- package/lib/app/native-rating/context-results.d.ts +0 -3
- package/lib/app/native-rating/context-results.js +0 -3
- package/lib/app/native-rating/context-results.js.map +0 -1
- package/lib/app/native-rating/create-dynamic-carrier.d.ts +0 -7
- package/lib/app/native-rating/create-dynamic-carrier.js +0 -63
- package/lib/app/native-rating/create-dynamic-carrier.js.map +0 -1
- package/lib/app/native-rating/data-validator.js.map +0 -1
- package/lib/app/native-rating/get-rates.d.ts +0 -7
- package/lib/app/native-rating/get-rates.js +0 -3
- package/lib/app/native-rating/get-rates.js.map +0 -1
- package/lib/app/native-rating/get-variables.d.ts +0 -6
- package/lib/app/native-rating/get-variables.js +0 -3
- package/lib/app/native-rating/get-variables.js.map +0 -1
- package/lib/app/native-rating/get-zone.d.ts +0 -6
- package/lib/app/native-rating/get-zone.js +0 -3
- package/lib/app/native-rating/get-zone.js.map +0 -1
- package/lib/app/native-rating/implementation-type.d.ts +0 -31
- package/lib/app/native-rating/implementation-type.js +0 -8
- package/lib/app/native-rating/implementation-type.js.map +0 -1
- package/lib/app/native-rating/index.d.ts +0 -3
- package/lib/app/native-rating/index.js +0 -7
- package/lib/app/native-rating/index.js.map +0 -1
- package/lib/app/native-rating/numeric-currency.d.ts +0 -5
- package/lib/app/native-rating/numeric-currency.js +0 -3
- package/lib/app/native-rating/numeric-currency.js.map +0 -1
- package/lib/app/native-rating/rating-context.d.ts +0 -15
- package/lib/app/native-rating/rating-context.js +0 -3
- package/lib/app/native-rating/rating-context.js.map +0 -1
- package/lib/models/bill-to.d.ts +0 -14
- package/lib/models/bill-to.js +0 -14
- package/lib/models/bill-to.js.map +0 -1
- package/lib/models/billing/billing-to-party.d.ts +0 -10
- package/lib/models/billing/billing-to-party.js +0 -15
- package/lib/models/billing/billing-to-party.js.map +0 -1
- package/lib/models/cod-payment-type.d.ts +0 -9
- package/lib/models/cod-payment-type.js +0 -14
- package/lib/models/cod-payment-type.js.map +0 -1
- package/lib/models/collect-on-delivery.d.ts +0 -9
- package/lib/models/collect-on-delivery.js +0 -8
- package/lib/models/collect-on-delivery.js.map +0 -1
- package/lib/models/importer-records/importer_of_record.js.map +0 -1
- package/src/app/build-native-rating-routes.ts +0 -119
- package/src/app/carrier-app.ts +0 -222
- package/src/app/create-get-rates-handler.ts +0 -128
- package/src/app/internal/README.md +0 -1
- package/src/app/internal/branded-image.ts +0 -9
- package/src/app/internal/carrier-app-specification.ts +0 -17
- package/src/app/internal/carrier-specification.ts +0 -135
- package/src/app/internal/connect-runtime-app.ts +0 -15
- package/src/app/internal/document-template.ts +0 -7
- package/src/app/internal/index.ts +0 -3
- package/src/app/internal/metadata.ts +0 -86
- package/src/app/internal/native-rating-specification.ts +0 -5
- package/src/app/internal/route.ts +0 -31
- package/src/app/native-rating/base-rate-context.ts +0 -101
- package/src/app/native-rating/context-results.ts +0 -3
- package/src/app/native-rating/create-dynamic-carrier.ts +0 -82
- package/src/app/native-rating/get-rates.ts +0 -9
- package/src/app/native-rating/get-variables.ts +0 -8
- package/src/app/native-rating/get-zone.ts +0 -9
- package/src/app/native-rating/implementation-type.ts +0 -34
- package/src/app/native-rating/index.ts +0 -3
- package/src/app/native-rating/numeric-currency.ts +0 -5
- package/src/app/native-rating/rating-context.ts +0 -19
- package/src/models/bill-to.ts +0 -15
- package/src/models/billing/billing-to-party.ts +0 -10
- package/src/models/cod-payment-type.ts +0 -9
- package/src/models/collect-on-delivery.ts +0 -10
- /package/lib/models/importer-records/{importer_of_record.d.ts → importer-of-record.d.ts} +0 -0
- /package/src/models/importer-records/{importer_of_record.ts → importer-of-record.ts} +0 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { CurrencySchema } from './currency-schema';
|
|
3
|
+
|
|
4
|
+
export const AdvancedOptionsSchema = Joi.object({
|
|
5
|
+
contains_alcohol: Joi.boolean().optional(),
|
|
6
|
+
no_postage: Joi.boolean().optional(),
|
|
7
|
+
nonmachineable: Joi.boolean().optional(),
|
|
8
|
+
bill_duties_to_sender: Joi.boolean().optional(),
|
|
9
|
+
saturday_delivery: Joi.boolean().optional(),
|
|
10
|
+
tip: CurrencySchema.optional(),
|
|
11
|
+
}).pattern(/.*/, Joi.any());
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { CollectOnDelivery } from './collect-on-delivery';
|
|
2
1
|
import { Currency } from './currency';
|
|
3
2
|
|
|
4
3
|
/** @description Basic structure for shipping options */
|
|
@@ -15,10 +14,6 @@ export class AdvancedOptions {
|
|
|
15
14
|
saturday_delivery?: boolean;
|
|
16
15
|
/** @description Amount to be paid to the driver, used for local delivery and courier services */
|
|
17
16
|
tip?: Currency;
|
|
18
|
-
/** @description Describes whether Additional Handling is requested for the shipment */
|
|
19
|
-
additional_handling?: boolean;
|
|
20
|
-
/** @description Describes details for Collect on Delivery (COD) if requested for the shipment */
|
|
21
|
-
collect_on_delivery?: CollectOnDelivery;
|
|
22
17
|
/** @description Any other custom shipping options */
|
|
23
18
|
[key: string]: any;
|
|
24
19
|
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { CurrencySchema } from '../currency-schema';
|
|
3
|
+
|
|
4
|
+
export const CustomsChargesSchema = Joi.object({
|
|
5
|
+
freight_charge: CurrencySchema.optional(),
|
|
6
|
+
other_charge: CurrencySchema.optional(),
|
|
7
|
+
insurance_charge: CurrencySchema.optional(),
|
|
8
|
+
discount: CurrencySchema.optional(),
|
|
9
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { CurrencySchema } from '../currency-schema';
|
|
3
|
+
import { WeightDetailsSchema } from '../units/weight-details-schema';
|
|
4
|
+
|
|
5
|
+
export const CustomsItemSchema = Joi.object({
|
|
6
|
+
description: Joi.string().optional(),
|
|
7
|
+
quantity: Joi.number().optional(),
|
|
8
|
+
value: CurrencySchema.optional(),
|
|
9
|
+
country_of_origin: Joi.string().optional(),
|
|
10
|
+
harmonized_tariff_code: Joi.string().optional(),
|
|
11
|
+
sku: Joi.string().optional(),
|
|
12
|
+
sku_description: Joi.string().optional(),
|
|
13
|
+
item_weight: WeightDetailsSchema.optional(),
|
|
14
|
+
product_url: Joi.string().optional(),
|
|
15
|
+
vat_rate: Joi.number().optional(),
|
|
16
|
+
mid_code: Joi.string().optional(),
|
|
17
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { CustomsContentTypesSchema } from './customs-content-types-schema';
|
|
3
|
+
import { CustomsNonDeliverySchema } from './customs-non-delivery-schema';
|
|
4
|
+
import { CustomsItemSchema } from './customs-item-schema';
|
|
5
|
+
import { CurrencySchema } from '../currency-schema';
|
|
6
|
+
import { TermsOfTradeCodeSchema } from '../inconterms/terms-of-trade-code-schema';
|
|
7
|
+
import { ImporterOfRecordSchema } from '../importer-records/importer-of-record-schema';
|
|
8
|
+
import { CustomsChargesSchema } from './customs-charges-schema';
|
|
9
|
+
|
|
10
|
+
export const CustomsSchema = Joi.object({
|
|
11
|
+
contents: CustomsContentTypesSchema.optional(),
|
|
12
|
+
non_delivery: CustomsNonDeliverySchema.optional(),
|
|
13
|
+
customs_items: Joi.array().items(CustomsItemSchema).required(),
|
|
14
|
+
buyer_shipping_amount_paid: CurrencySchema.optional(),
|
|
15
|
+
duties_paid: CurrencySchema.optional(),
|
|
16
|
+
declaration: Joi.string().optional(),
|
|
17
|
+
termsOfTradeCode: TermsOfTradeCodeSchema.optional(),
|
|
18
|
+
importer_of_record: ImporterOfRecordSchema.optional(),
|
|
19
|
+
invoice_additional_details: CustomsChargesSchema.optional(),
|
|
20
|
+
contents_explanation: Joi.string().optional(),
|
|
21
|
+
});
|
|
@@ -3,7 +3,7 @@ import { CustomsNonDelivery } from './customs-non-delivery';
|
|
|
3
3
|
import { CustomsItem } from './customs-item';
|
|
4
4
|
import { Currency } from '../currency';
|
|
5
5
|
import { TermsOfTradeCode } from '../inconterms/terms-of-trade-code';
|
|
6
|
-
import { ImporterOfRecord } from '../importer-records/
|
|
6
|
+
import { ImporterOfRecord } from '../importer-records/importer-of-record';
|
|
7
7
|
import { CustomsCharges } from './customs-charges';
|
|
8
8
|
|
|
9
9
|
/** @description Basic structure for a customs declaration */
|
|
@@ -21,7 +21,7 @@ export class Customs {
|
|
|
21
21
|
/** @description Declaration statement to be placed on the commercial invoice */
|
|
22
22
|
declaration?: string;
|
|
23
23
|
/** @description Incoterms specify who is responsible for paying for and managing the shipment*/
|
|
24
|
-
|
|
24
|
+
termsOfTradeCode?: TermsOfTradeCode;
|
|
25
25
|
/** @description The owner or purchaser of the products being imported into a destination country.*/
|
|
26
26
|
importer_of_record?: ImporterOfRecord;
|
|
27
27
|
/** @description The charges related with customs.*/
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { TaxIdentifierSchema } from '../taxes/tax-identifier-schema';
|
|
3
|
+
|
|
4
|
+
export const ImporterOfRecordSchema = Joi.object({
|
|
5
|
+
tax_identifiers: Joi.array().items(TaxIdentifierSchema).optional(),
|
|
6
|
+
name: Joi.string().optional(),
|
|
7
|
+
company_name: Joi.string().optional(),
|
|
8
|
+
address_line1: Joi.string().required(),
|
|
9
|
+
address_line2: Joi.string().optional(),
|
|
10
|
+
city_locality: Joi.string().optional(),
|
|
11
|
+
state_province: Joi.string().optional(),
|
|
12
|
+
postal_code: Joi.string().optional(),
|
|
13
|
+
country_code: Joi.string().optional(),
|
|
14
|
+
phone: Joi.string().optional(),
|
|
15
|
+
email: Joi.string().optional(),
|
|
16
|
+
});
|
package/src/models/index.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
export * from './addresses';
|
|
2
2
|
export * from './advanced-options';
|
|
3
3
|
export * from './authorization';
|
|
4
|
-
export * from './cod-payment-type';
|
|
5
|
-
export * from './collect-on-delivery';
|
|
6
4
|
export * from './billing';
|
|
7
5
|
export * from './confirmation-types';
|
|
8
6
|
export * from './currency-schema';
|
|
@@ -32,4 +30,3 @@ export * from './time-window-schema';
|
|
|
32
30
|
export * from './time-window';
|
|
33
31
|
export * from './tracking';
|
|
34
32
|
export * from './units';
|
|
35
|
-
export * from './bill-to';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { IdentifierSchema } from '../identifier-schema';
|
|
3
|
+
import { DimensionsSchema } from '../units';
|
|
4
|
+
import { CurrencySchema } from '../currency-schema';
|
|
5
|
+
import { DimensionDetailsSchema } from '../units/dimension-details-schema';
|
|
6
|
+
import { WeightDetailsSchema } from '../units/weight-details-schema';
|
|
7
|
+
import { LabelMessageSchema } from '../labels/label-message-schema';
|
|
8
|
+
import { CustomsSchema } from '../customs/customs-schema';
|
|
9
|
+
|
|
10
|
+
export const ShippedPackageSchema = Joi.object({
|
|
11
|
+
tracking_number: Joi.string().optional(),
|
|
12
|
+
alternative_identifiers: Joi.array().items(IdentifierSchema).optional(),
|
|
13
|
+
dimension_details: DimensionDetailsSchema.optional(),
|
|
14
|
+
weight_details: WeightDetailsSchema.optional(),
|
|
15
|
+
package_code: Joi.string().optional(),
|
|
16
|
+
weight: Joi.number().optional(),
|
|
17
|
+
dimensions: DimensionsSchema.optional(),
|
|
18
|
+
insured_value: CurrencySchema.required(),
|
|
19
|
+
label_messages: LabelMessageSchema.optional(),
|
|
20
|
+
customs: CustomsSchema.optional(),
|
|
21
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { IdentifierSchema } from '../../models';
|
|
3
|
+
import { ShipToSchema } from '../addresses/ship-to-schema';
|
|
4
|
+
import { ShippedPackageSchema } from './shipped-package-schema';
|
|
5
|
+
import { AdvancedOptionsSchema } from '../advanced-options-schema';
|
|
6
|
+
import { PudoLocationSchema } from '../addresses/pudo-location-schema';
|
|
7
|
+
|
|
8
|
+
export const ShippedShipmentSchema = Joi.object({
|
|
9
|
+
tracking_number: Joi.string().optional(),
|
|
10
|
+
ship_to: ShipToSchema.optional(),
|
|
11
|
+
alternative_identifiers: Joi.array().items(IdentifierSchema).optional(),
|
|
12
|
+
service_code: Joi.string().optional(),
|
|
13
|
+
packages: Joi.array().items(ShippedPackageSchema).optional(),
|
|
14
|
+
advanced_options: AdvancedOptionsSchema.optional(),
|
|
15
|
+
pickup_location: PudoLocationSchema.optional(),
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
export const PickupShipment = ShippedShipmentSchema;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { TaxIdentifierTypeSchema } from './tax-identifier-type-schema';
|
|
3
|
+
|
|
4
|
+
export const TaxIdentifierSchema = Joi.object({
|
|
5
|
+
id: Joi.string(),
|
|
6
|
+
type: TaxIdentifierTypeSchema,
|
|
7
|
+
registration_county: Joi.string().optional(),
|
|
8
|
+
description: Joi.string().optional(),
|
|
9
|
+
});
|
|
@@ -6,10 +6,8 @@ export class TaxIdentifier {
|
|
|
6
6
|
id!: string;
|
|
7
7
|
/** @description The Tax ID type */
|
|
8
8
|
type!: TaxIdentifierType;
|
|
9
|
-
/** @deprecated This property has been deprecated, please use registration_country instead */
|
|
10
|
-
registration_county?: string;
|
|
11
9
|
/** @description The country where the Tax ID is registered with */
|
|
12
|
-
|
|
10
|
+
registration_county?: string;
|
|
13
11
|
/** @description Description of the tax ID that may give the customs agent more context */
|
|
14
12
|
description?: string;
|
|
15
13
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { DimensionsSchema } from './dimensions-schema';
|
|
3
|
+
import { DimensionUnitSchema } from './dimension-unit-schema';
|
|
4
|
+
|
|
5
|
+
export const DimensionDetailsSchema = Joi.object({
|
|
6
|
+
dimensions_in_centimeters: DimensionsSchema.optional(),
|
|
7
|
+
dimensions_in_inches: DimensionsSchema.optional(),
|
|
8
|
+
source_dimensions: DimensionsSchema.optional(),
|
|
9
|
+
source_dimension_unit: DimensionUnitSchema.required(),
|
|
10
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { WeightUnitSchema } from './weight-unit-schema';
|
|
3
|
+
|
|
4
|
+
export const WeightDetailsSchema = Joi.object({
|
|
5
|
+
weight_in_ounces: Joi.number().optional,
|
|
6
|
+
weight_in_grams: Joi.number().optional,
|
|
7
|
+
source_weight: Joi.number().optional,
|
|
8
|
+
source_weight_unit: WeightUnitSchema.required(),
|
|
9
|
+
});
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { AuthorizationSchema } from '../models/authorization-schema';
|
|
3
|
+
|
|
4
|
+
export const BaseRequestSchema = Joi.object({
|
|
5
|
+
transaction_id: Joi.string().required(),
|
|
6
|
+
authorization: AuthorizationSchema.optional(),
|
|
7
|
+
metadata: Joi.object().pattern(/.*/, [Joi.any()]).optional(),
|
|
8
|
+
});
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
import { BaseRequestSchema } from './base-request-schema';
|
|
3
|
+
import { ShippedShipmentSchema } from '../models/pickup/shipped-shipment-schema';
|
|
4
|
+
|
|
5
|
+
export const CancelNotificationRequestSchema = BaseRequestSchema.keys({
|
|
6
|
+
notification_id: Joi.string().required(),
|
|
7
|
+
shipment_information: ShippedShipmentSchema.required(),
|
|
8
|
+
});
|
|
@@ -17,7 +17,6 @@ import {
|
|
|
17
17
|
RelayPointDetails,
|
|
18
18
|
DisplayScheme,
|
|
19
19
|
Customs,
|
|
20
|
-
BillTo,
|
|
21
20
|
} from '../models';
|
|
22
21
|
|
|
23
22
|
/** @description Basic structure for a request to create a label */
|
|
@@ -55,6 +54,4 @@ export class CreateLabelRequest extends BaseRequest {
|
|
|
55
54
|
/** @description Display schemes that the label will be returned in. Label is returned by default */
|
|
56
55
|
display_schemes?: DisplayScheme[];
|
|
57
56
|
customs?: Customs;
|
|
58
|
-
/** @description Bill the shipping charges to this entity. If null, it should be assumed the "shipper" is responsible for the shipping charges. */
|
|
59
|
-
bill_shipping_to?: BillTo;
|
|
60
57
|
}
|
|
@@ -10,7 +10,6 @@ import {
|
|
|
10
10
|
PudoLocation,
|
|
11
11
|
FulfillmentPlanDetails,
|
|
12
12
|
TimeWindow,
|
|
13
|
-
BillTo,
|
|
14
13
|
} from '../models';
|
|
15
14
|
import { ShipmentItem } from '../models/shipment-item';
|
|
16
15
|
|
|
@@ -34,6 +33,4 @@ export class GetRatesRequest extends BaseRequest {
|
|
|
34
33
|
carrier_pickup_window?: TimeWindow;
|
|
35
34
|
/** Items included in the shipment */
|
|
36
35
|
items?: ShipmentItem[];
|
|
37
|
-
/** @description Bill the shipping charges to this entity. If null, it should be assumed the "shipper" is responsible for the shipping charges. */
|
|
38
|
-
bill_shipping_to?: BillTo;
|
|
39
36
|
}
|