AutoPrice Models

AutoPrice models for the ABC API.

class ab.api.models.autoprice.QuickQuotePriceBreakdown(*, Pickup=None, Packaging=None, Transportation=None, Insurance=None, Delivery=None, Miscellaneous=None, **extra_data)[source]

Bases: ResponseModel

Price breakdown within a quick quote result.

Parameters:
  • Pickup (float | None)

  • Packaging (float | None)

  • Transportation (float | None)

  • Insurance (float | None)

  • Delivery (float | None)

  • Miscellaneous (float | None)

  • extra_data (Any)

pickup: float | None
packaging: float | None
transportation: float | None
insurance: float | None
delivery: float | None
miscellaneous: float | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'allow', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuickQuoteResult(*, QuoteCertified=None, TotalAmount=None, Warnings=None, PriceBreakdown=None, RequestErrors=None, **extra_data)[source]

Bases: ResponseModel

Inner result from POST /autoprice/quickquote.

Parameters:
quote_certified: bool | None
total_amount: float | None
warnings: List[str] | None
price_breakdown: QuickQuotePriceBreakdown | None
request_errors: List[str] | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'allow', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuickQuoteResponse(*, SubmitQuickQuoteRequestPOSTResult=None, **extra_data)[source]

Bases: ResponseModel

Response from POST /autoprice/quickquote.

Live API wraps the result under SubmitQuickQuoteRequestPOSTResult.

Parameters:
result: QuickQuoteResult | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'allow', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestResponse(*, quoteId=None, status=None, results=None, **extra_data)[source]

Bases: ResponseModel

Response from POST /autoprice/v2/quoterequest.

Parameters:
  • quoteId (str | None)

  • status (str | None)

  • results (List[dict] | None)

  • extra_data (Any)

quote_id: str | None
status: str | None
results: List[dict] | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'allow', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestJobInfo(*, companyCode=None, ownerCode=None, jobSellPrice=None, customerComments=None, jobType=None, shipOutDate=None, residenceDelivery=None, packAgent=None, otherRefNo=None, isExpedited=None, useOnlyOwnerTariffs=None, settingsKey=None, doNotTip=None)[source]

Bases: RequestModel

Job metadata for AutoPrice quote requests.

Parameters:
  • companyCode (str | None)

  • ownerCode (str | None)

  • jobSellPrice (str | None)

  • customerComments (str | None)

  • jobType (str | None)

  • shipOutDate (str | None)

  • residenceDelivery (bool | None)

  • packAgent (str | None)

  • otherRefNo (str | None)

  • isExpedited (bool | None)

  • useOnlyOwnerTariffs (bool | None)

  • settingsKey (str | None)

  • doNotTip (bool | None)

company_code: str | None
owner_code: str | None
job_sell_price: str | None
customer_comments: str | None
job_type: str | None
ship_out_date: str | None
residence_delivery: bool | None
pack_agent: str | None
other_ref_no: str | None
is_expedited: bool | None
use_only_owner_tariffs: bool | None
settings_key: str | None
do_not_tip: bool | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestReferrerInfo(*, referrerPage=None, entryUrl=None, submissionPage=None, howHeard=None)[source]

Bases: RequestModel

Referrer metadata for AutoPrice quote requests.

Parameters:
  • referrerPage (str | None)

  • entryUrl (str | None)

  • submissionPage (str | None)

  • howHeard (str | None)

referrer_page: str | None
entry_url: str | None
submission_page: str | None
how_heard: str | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestContactInfo(*, company=None, companyDisplayId=None, fullName=None, contactDisplayId=None, phone=None, email=None, address1=None, address2=None, propertyTypeParam=None, propertyType=None, city=None, state=None, zipCode=None, countryCode=None, contactDetails=None)[source]

Bases: RequestModel

Contact/address section for AutoPrice quote requests.

Parameters:
  • company (str | None)

  • companyDisplayId (str | None)

  • fullName (str | None)

  • contactDisplayId (str | None)

  • phone (str | None)

  • email (str | None)

  • address1 (str | None)

  • address2 (str | None)

  • propertyTypeParam (str | None)

  • propertyType (int | None)

  • city (str | None)

  • state (str | None)

  • zipCode (str | None)

  • countryCode (str | None)

  • contactDetails (dict | None)

company: str | None
company_display_id: str | None
full_name: str | None
contact_display_id: str | None
phone: str | None
email: str | None
address1: str | None
address2: str | None
property_type_param: str | None
property_type: int | None
city: str | None
state: str | None
zip_code: str | None
country_code: str | None
contact_details: dict | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestLaborInfo(*, type=None, hours=None, parsedHours=None, parsedType=None)[source]

Bases: RequestModel

Labor options for legacy AutoPrice service requests.

Parameters:
  • type (str | None)

  • hours (str | None)

  • parsedHours (float | None)

  • parsedType (int | None)

type: str | None
hours: str | None
parsed_hours: float | None
parsed_type: int | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestServiceInfo(*, agentCode=None, date=None, feeOverrideAmount=None, accessorials=None, labor=None, doneBy=None)[source]

Bases: RequestModel

Pickup or delivery service options for AutoPrice quote requests.

Parameters:
agent_code: str | None
date: str | None
fee_override_amount: str | None
accessorials: List[str] | None
labor: QuoteRequestLaborInfo | None
done_by: str | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestContainerInfo(*, code=None, description=None, length=None, width=None, height=None, weight=None, cost=None, sell=None)[source]

Bases: RequestModel

Extra package/container details for AutoPrice quote requests.

Parameters:
code: str | None
description: str | None
length: float | None
width: float | None
height: float | None
weight: float | None
cost: float | None
sell: float | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestPackServiceInfo(*, extraContainers=None)[source]

Bases: RequestModel

Packaging service options for AutoPrice quote requests.

Parameters:

extraContainers (List[QuoteRequestContainerInfo] | None)

extra_containers: List[QuoteRequestContainerInfo] | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestLimitCarrierToSetting(*, carrierCodes=None, carrierApis=None, isEmpty=None, isExcluded=None, usedFor=None)[source]

Bases: RequestModel

Carrier limiting settings for AutoPrice quote requests.

Parameters:
  • carrierCodes (List[str] | None)

  • carrierApis (List[int] | None)

  • isEmpty (bool | None)

  • isExcluded (bool | None)

  • usedFor (str | None)

carrier_codes: List[str] | None
carrier_apis: List[int] | None
is_empty: bool | None
is_excluded: bool | None
used_for: str | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestCarrierServiceInfo(*, accessorials=None, limitCarriersTo=None)[source]

Bases: RequestModel

Carrier service options for AutoPrice quote requests.

Parameters:
accessorials: List[str] | None
limit_carriers_to: List[QuoteRequestLimitCarrierToSetting] | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestItem(*, length=None, width=None, height=None, weight=None, value=None, laborHours=None, cpack=None, description=None, itemId=None, notedConditions=None, itemNotes=None, customerItemId=None, forceCrate=None, qty=None, quantity=None, doNotTip=None, commodityId=None)[source]

Bases: RequestModel

Item line for AutoPrice quote requests.

Parameters:
  • length (str | float | None)

  • width (str | float | None)

  • height (str | float | None)

  • weight (str | float | None)

  • value (str | float | None)

  • laborHours (str | float | None)

  • cpack (str | None)

  • description (str | None)

  • itemId (str | None)

  • notedConditions (str | None)

  • itemNotes (str | None)

  • customerItemId (str | None)

  • forceCrate (bool | None)

  • qty (str | None)

  • quantity (int | None)

  • doNotTip (bool | None)

  • commodityId (str | None)

length: str | float | None
width: str | float | None
height: str | float | None
weight: str | float | None
value: str | float | None
labor_hours: str | float | None
cpack: str | None
description: str | None
item_id: str | None
noted_conditions: str | None
item_notes: str | None
customer_item_id: str | None
force_crate: bool | None
qty: str | None
quantity: int | None
do_not_tip: bool | None
commodity_id: str | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ab.api.models.autoprice.QuoteRequestModel(*, accessKey=None, jobInfo=None, referrerInfo=None, customer=None, pickup=None, delivery=None, pickupService=None, deliveryService=None, carrierServices=None, packService=None, carrierService=None, items=None)[source]

Bases: RequestModel

Body for POST /autoprice/quickquote and /autoprice/v2/quoterequest.

Parameters:
access_key: str | None
job_info: QuoteRequestJobInfo | None
referrer_info: QuoteRequestReferrerInfo | None
customer: QuoteRequestContactInfo | None
pickup: QuoteRequestContactInfo | None
delivery: QuoteRequestContactInfo | None
pickup_service: QuoteRequestServiceInfo | None
delivery_service: QuoteRequestServiceInfo | None
carrier_services: List[str] | None
pack_service: QuoteRequestPackServiceInfo | None
carrier_service: QuoteRequestCarrierServiceInfo | None
items: List[QuoteRequestItem] | None
model_config = {'alias_generator': <function _to_camel>, 'extra': 'forbid', 'populate_by_name': True, 'str_strip_whitespace': True, 'use_enum_values': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].