Company Models

Company models for the ACPortal API.

class ab.api.models.companies.CarrierAccountSearchParams(*, currentCompanyId=None, query=None)[source]

Bases: RequestModel

Query parameters for GET /companies/search/carrier-accounts.

Parameters:
  • currentCompanyId (str | None)

  • query (str | None)

current_company_id: str | None
query: 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.companies.SuggestCarriersParams(*, trackingNumber=None)[source]

Bases: RequestModel

Query parameters for GET /companies/suggest-carriers.

Parameters:

trackingNumber (str | None)

tracking_number: 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.companies.GeoSettingsParams(*, Latitude=None, Longitude=None, milesRadius=None)[source]

Bases: RequestModel

Query parameters for GET /companies/geosettings.

Parameters:
  • Latitude (float | None)

  • Longitude (float | None)

  • milesRadius (float | None)

latitude: float | None
longitude: float | None
miles_radius: 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.companies.InheritFromParams(*, inheritFrom=None)[source]

Bases: RequestModel

Query parameters for inherited packaging endpoints.

Parameters:

inheritFrom (str | None)

inherit_from: 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.companies.CompanySimple(*, id=None, name=None, code=None, companyType=None, parentCompanyId=None, companyName=None, typeId=None, **extra_data)[source]

Bases: ResponseModel

Lightweight company record — GET /companies/{id}.

Parameters:
  • id (str | None)

  • name (str | None)

  • code (str | None)

  • companyType (str | None)

  • parentCompanyId (str | None)

  • companyName (str | None)

  • typeId (str | None)

  • extra_data (Any)

id: str | None
name: str | None
code: str | None
company_type: str | None
parent_company_id: str | None
company_name: str | None
type_id: 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.companies.CompanyDetailsInfo(*, displayId=None, name=None, taxId=None, code=None, parentId=None, franchiseeId=None, companyTypeId=None, industryTypeId=None, cellPhone=None, phone=None, fax=None, email=None, website=None, isActive=None, isHidden=None, isGlobal=None, isNotUsed=None, isPreferred=None, payerContactId=None, payerContactName=None, **extra_data)[source]

Bases: ResponseModel

Nested details object within CompanyDetails.

Parameters:
  • displayId (str | None)

  • name (str | None)

  • taxId (str | None)

  • code (str | None)

  • parentId (str | None)

  • franchiseeId (str | None)

  • companyTypeId (str | None)

  • industryTypeId (str | None)

  • cellPhone (str | None)

  • phone (str | None)

  • fax (str | None)

  • email (str | None)

  • website (str | None)

  • isActive (bool | None)

  • isHidden (bool | None)

  • isGlobal (bool | None)

  • isNotUsed (bool | None)

  • isPreferred (bool | None)

  • payerContactId (int | None)

  • payerContactName (str | None)

  • extra_data (Any)

display_id: str | None
name: str | None
tax_id: str | None
code: str | None
parent_id: str | None
franchisee_id: str | None
company_type_id: str | None
industry_type_id: str | None
cell_phone: str | None
phone: str | None
fax: str | None
email: str | None
website: str | None
is_active: bool | None
is_hidden: bool | None
is_global: bool | None
is_not_used: bool | None
is_preferred: bool | None
payer_contact_id: int | None
payer_contact_name: 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.companies.FileInfo(*, filePath=None, newFile=None, **extra_data)[source]

Bases: ResponseModel

File reference for logos and images.

Parameters:
  • filePath (str | None)

  • newFile (str | None)

  • extra_data (Any)

file_path: str | None
new_file: 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.companies.CompanyPreferences(*, companyHeaderLogo=None, thumbnailLogo=None, letterHeadLogo=None, mapsMarker=None, isQbUser=None, skipIntacct=None, pricingToUse=None, pzCode=None, insuranceTypeId=None, franchiseeMaturityTypeId=None, isCompanyUsedAsCarrierSource=None, carrierAccountsSourceCompanyId=None, carrierAccountsSourceCompanyName=None, accountManagerFranchiseeId=None, accountManagerFranchiseeName=None, autoPriceAPIEnableEmails=None, autoPriceAPIEnableSMSs=None, copyMaterials=None, **extra_data)[source]

Bases: ResponseModel

Company preferences and logo settings.

Parameters:
  • companyHeaderLogo (FileInfo | None)

  • thumbnailLogo (FileInfo | None)

  • letterHeadLogo (FileInfo | None)

  • mapsMarker (FileInfo | None)

  • isQbUser (bool | None)

  • skipIntacct (bool | None)

  • pricingToUse (str | None)

  • pzCode (str | None)

  • insuranceTypeId (str | None)

  • franchiseeMaturityTypeId (str | None)

  • isCompanyUsedAsCarrierSource (bool | None)

  • carrierAccountsSourceCompanyId (str | None)

  • carrierAccountsSourceCompanyName (str | None)

  • accountManagerFranchiseeId (str | None)

  • accountManagerFranchiseeName (str | None)

  • autoPriceAPIEnableEmails (bool | None)

  • autoPriceAPIEnableSMSs (bool | None)

  • copyMaterials (int | None)

  • extra_data (Any)

maps_marker: FileInfo | None
is_qb_user: bool | None
skip_intacct: bool | None
pricing_to_use: str | None
pz_code: str | None
insurance_type_id: str | None
franchisee_maturity_type_id: str | None
is_company_used_as_carrier_source: bool | None
carrier_accounts_source_company_id: str | None
carrier_accounts_source_company_name: str | None
account_manager_franchisee_id: str | None
account_manager_franchisee_name: str | None
auto_price_api_enable_emails: bool | None
auto_price_api_enable_smss: bool | None
copy_materials: int | 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.companies.FedExAccount(*, restApiAccounts=None, **extra_data)[source]

Bases: ResponseModel

FedEx carrier account settings.

Parameters:
  • restApiAccounts (list | None)

  • extra_data (Any)

rest_api_accounts: list | 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.companies.UPSAccount(*, shipperNumber=None, clientId=None, clientSecret=None, **extra_data)[source]

Bases: ResponseModel

UPS carrier account settings.

Parameters:
  • shipperNumber (str | None)

  • clientId (str | None)

  • clientSecret (str | None)

  • extra_data (Any)

shipper_number: str | None
client_id: str | None
client_secret: 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.companies.RoadRunnerAccount(*, userName=None, password=None, appId=None, apiKey=None, **extra_data)[source]

Bases: ResponseModel

RoadRunner carrier account settings.

Parameters:
  • userName (str | None)

  • password (str | None)

  • appId (str | None)

  • apiKey (str | None)

  • extra_data (Any)

user_name: str | None
password: str | None
app_id: str | None
api_key: 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.companies.MaerskAccount(*, locationId=None, tariffHeaderId=None, userName=None, password=None, addressId=None, controlStation=None, **extra_data)[source]

Bases: ResponseModel

Maersk carrier account settings.

Parameters:
  • locationId (int | None)

  • tariffHeaderId (int | None)

  • userName (str | None)

  • password (str | None)

  • addressId (int | None)

  • controlStation (str | None)

  • extra_data (Any)

location_id: int | None
tariff_header_id: int | None
user_name: str | None
password: str | None
address_id: int | None
control_station: 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.companies.TeamWWAccount(*, apiKey=None, **extra_data)[source]

Bases: ResponseModel

TeamWW carrier account settings.

Parameters:
  • apiKey (str | None)

  • extra_data (Any)

api_key: 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.companies.EstesAccount(*, userName=None, password=None, account=None, **extra_data)[source]

Bases: ResponseModel

Estes carrier account settings.

Parameters:
  • userName (str | None)

  • password (str | None)

  • account (str | None)

  • extra_data (Any)

user_name: str | None
password: str | None
account: 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.companies.ForwardAirAccount(*, userName=None, password=None, customerId=None, billTo=None, shipperNumber=None, **extra_data)[source]

Bases: ResponseModel

Forward Air carrier account settings.

Parameters:
  • userName (str | None)

  • password (str | None)

  • customerId (str | None)

  • billTo (str | None)

  • shipperNumber (str | None)

  • extra_data (Any)

user_name: str | None
password: str | None
customer_id: str | None
bill_to: str | None
shipper_number: 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.companies.BTXAccount(*, apiKey=None, **extra_data)[source]

Bases: ResponseModel

BTX carrier account settings.

Parameters:
  • apiKey (str | None)

  • extra_data (Any)

api_key: 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.companies.GlobalTranzAccount(*, accessKey=None, userName=None, password=None, **extra_data)[source]

Bases: ResponseModel

GlobalTranz carrier account settings.

Parameters:
  • accessKey (str | None)

  • userName (str | None)

  • password (str | None)

  • extra_data (Any)

access_key: str | None
user_name: str | None
password: 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.companies.USPSAccount(*, accountNumber=None, customerRegistrationId=None, mailerId=None, mailerIdCode=None, clientId=None, clientSecret=None, **extra_data)[source]

Bases: ResponseModel

USPS carrier account settings.

Parameters:
  • accountNumber (str | None)

  • customerRegistrationId (str | None)

  • mailerId (str | None)

  • mailerIdCode (str | None)

  • clientId (str | None)

  • clientSecret (str | None)

  • extra_data (Any)

account_number: str | None
customer_registration_id: str | None
mailer_id: str | None
mailer_id_code: str | None
client_id: str | None
client_secret: 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.companies.AccountInformation(*, lmiUserName=None, lmiClientCode=None, useFlatRates=None, fedEx=None, ups=None, roadRunner=None, maersk=None, teamWW=None, estes=None, forwardAir=None, btx=None, globalTranz=None, usps=None, **extra_data)[source]

Bases: ResponseModel

Company account information for all carriers.

Parameters:
lmi_user_name: str | None
lmi_client_code: str | None
use_flat_rates: bool | None
fed_ex: FedExAccount | None
ups: UPSAccount | None
road_runner: RoadRunnerAccount | None
maersk: MaerskAccount | None
team_ww: TeamWWAccount | None
estes: EstesAccount | None
forward_air: ForwardAirAccount | None
btx: BTXAccount | None
global_tranz: GlobalTranzAccount | None
usps: USPSAccount | 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.companies.TransportationCharge(*, baseTripFee=None, baseTripMile=None, extraFee=None, fuelSurcharge=None, **extra_data)[source]

Bases: ResponseModel

Transportation charge settings.

Parameters:
  • baseTripFee (float | None)

  • baseTripMile (float | None)

  • extraFee (float | None)

  • fuelSurcharge (float | None)

  • extra_data (Any)

base_trip_fee: float | None
base_trip_mile: float | None
extra_fee: float | None
fuel_surcharge: 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.companies.MarkupTier(*, wholeSale=None, base=None, medium=None, high=None, **extra_data)[source]

Bases: ResponseModel

Markup tier with wholesale/base/medium/high levels.

Parameters:
whole_sale: float | None
base: float | None
medium: float | None
high: 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.companies.LaborCharge(*, cost=None, charge=None, **extra_data)[source]

Bases: ResponseModel

Labor charge cost/charge settings.

Parameters:
cost: float | None
charge: 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.companies.AccessorialCharge(*, stairs=None, elevator=None, longCarry=None, certificateOfInsurance=None, deInstallation=None, disassembly=None, timeSpecific=None, saturday=None, **extra_data)[source]

Bases: ResponseModel

Accessorial charge settings.

Parameters:
  • stairs (float | None)

  • elevator (float | None)

  • longCarry (float | None)

  • certificateOfInsurance (float | None)

  • deInstallation (float | None)

  • disassembly (float | None)

  • timeSpecific (float | None)

  • saturday (float | None)

  • extra_data (Any)

stairs: float | None
elevator: float | None
long_carry: float | None
certificate_of_insurance: float | None
de_installation: float | None
disassembly: float | None
time_specific: float | None
saturday: 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.companies.Royalties(*, franchisee=None, national=None, local=None, **extra_data)[source]

Bases: ResponseModel

Royalty percentage settings.

Parameters:
franchisee: float | None
national: float | None
local: 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.companies.PaymentSettings(*, creditCardSurcharge=None, stripeConnected=None, **extra_data)[source]

Bases: ResponseModel

Payment settings.

Parameters:
  • creditCardSurcharge (float | None)

  • stripeConnected (bool | None)

  • extra_data (Any)

credit_card_surcharge: float | None
stripe_connected: bool | 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.companies.CompanyPricing(*, transportationCharge=None, transportationMarkups=None, carrierFreightMarkups=None, carrierOtherMarkups=None, materialMarkups=None, laborCharge=None, accesorialCharge=None, royalties=None, paymentSettings=None, **extra_data)[source]

Bases: ResponseModel

Company pricing configuration.

Parameters:
transportation_charge: TransportationCharge | None
transportation_markups: MarkupTier | None
carrier_freight_markups: MarkupTier | None
carrier_other_markups: MarkupTier | None
material_markups: MarkupTier | None
labor_charge: LaborCharge | None
accesorial_charge: AccessorialCharge | None
royalties: Royalties | None
payment_settings: PaymentSettings | 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.companies.InsuranceOption(*, insuranceSlabId=None, option=None, sellPrice=None, **extra_data)[source]

Bases: ResponseModel

Insurance option for a service type.

Parameters:
  • insuranceSlabId (str | None)

  • option (int | None)

  • sellPrice (float | None)

  • extra_data (Any)

insurance_slab_id: str | None
option: int | None
sell_price: 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.companies.CompanyInsurance(*, isp=None, nsp=None, ltl=None, **extra_data)[source]

Bases: ResponseModel

Company insurance configuration.

Parameters:
isp: InsuranceOption | None
nsp: InsuranceOption | None
ltl: InsuranceOption | 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.companies.TariffGroup(*, groupId=None, from_value=None, to=None, toCurb=None, intoGarage=None, roomOfChoice=None, whiteGlove=None, deleteGroup=None, **extra_data)[source]

Bases: ResponseModel

Final mile tariff group.

Parameters:
  • groupId (str | None)

  • from_value (float | None)

  • to (float | None)

  • toCurb (float | None)

  • intoGarage (float | None)

  • roomOfChoice (float | None)

  • whiteGlove (float | None)

  • deleteGroup (bool | None)

  • extra_data (Any)

group_id: str | None
from_value: float | None
to: float | None
to_curb: float | None
into_garage: float | None
room_of_choice: float | None
white_glove: float | None
delete_group: bool | 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.companies.TaxCategory(*, isTaxable=None, taxPercent=None, **extra_data)[source]

Bases: ResponseModel

Tax category settings.

Parameters:
  • isTaxable (bool | None)

  • taxPercent (float | None)

  • extra_data (Any)

is_taxable: bool | None
tax_percent: 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.companies.CompanyTaxes(*, deliveryService=None, insurance=None, pickupService=None, services=None, transportationService=None, packagingMaterial=None, packagingLabor=None, **extra_data)[source]

Bases: ResponseModel

Company tax configuration.

Parameters:
delivery_service: TaxCategory | None
insurance: TaxCategory | None
pickup_service: TaxCategory | None
services: TaxCategory | None
transportation_service: TaxCategory | None
packaging_material: TaxCategory | None
packaging_labor: TaxCategory | 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.companies.OverridableField(*, defaultValue=None, overrideValue=None, forceEmpty=None, value=None, **extra_data)[source]

Bases: ResponseModel

Overridable field wrapper — models C# Overridable<T>.

Parameters:
  • defaultValue (str | None)

  • overrideValue (str | None)

  • forceEmpty (bool | None)

  • value (str | None)

  • extra_data (Any)

default_value: str | None
override_value: str | None
force_empty: bool | None
value: 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.companies.CompanyInfo(*, companyId=None, companyTypeId=None, companyDisplayId=None, companyName=None, companyCode=None, companyEmail=None, companyPhone=None, thumbnailLogo=None, companyLogo=None, mapsMarkerImage=None, mainAddress=None, isThirdParty=None, isActive=None, isHidden=None, **extra_data)[source]

Bases: ResponseModel

Company info summary — nested in CompanyDetails.companyInfo.

Parameters:
  • companyId (str | None)

  • companyTypeId (str | None)

  • companyDisplayId (str | None)

  • companyName (str | None)

  • companyCode (str | None)

  • companyEmail (str | None)

  • companyPhone (str | None)

  • thumbnailLogo (str | None)

  • companyLogo (str | None)

  • mapsMarkerImage (str | None)

  • mainAddress (CompanyAddress | None)

  • isThirdParty (bool | None)

  • isActive (bool | None)

  • isHidden (bool | None)

  • extra_data (Any)

company_id: str | None
company_type_id: str | None
company_display_id: str | None
company_name: str | None
company_code: str | None
company_email: str | None
company_phone: str | None
maps_marker_image: str | None
main_address: CompanyAddress | None
is_third_party: bool | None
is_active: bool | None
is_hidden: bool | 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.companies.AddressData(*, company=None, firstLastName=None, addressLine1=None, addressLine2=None, contactBOLNote=None, city=None, state=None, stateCode=None, zipCode=None, countryName=None, propertyType=None, fullCityLine=None, phone=None, cellPhone=None, fax=None, email=None, addressLine2Visible=None, companyVisible=None, countryNameVisible=None, phoneVisible=None, emailVisible=None, fullAddressLine=None, fullAddress=None, countryId=None, **extra_data)[source]

Bases: ResponseModel

Flat address data — nested in CompanyDetails.addressData.

Parameters:
  • company (str | None)

  • firstLastName (str | None)

  • addressLine1 (str | None)

  • addressLine2 (str | None)

  • contactBOLNote (str | None)

  • city (str | None)

  • state (str | None)

  • stateCode (str | None)

  • zipCode (str | None)

  • countryName (str | None)

  • propertyType (str | None)

  • fullCityLine (str | None)

  • phone (str | None)

  • cellPhone (str | None)

  • fax (str | None)

  • email (str | None)

  • addressLine2Visible (bool | None)

  • companyVisible (bool | None)

  • countryNameVisible (bool | None)

  • phoneVisible (bool | None)

  • emailVisible (bool | None)

  • fullAddressLine (str | None)

  • fullAddress (str | None)

  • countryId (str | None)

  • extra_data (Any)

company: str | None
first_last_name: str | None
address_line1: str | None
address_line2: str | None
contact_bol_note: str | None
city: str | None
state: str | None
state_code: str | None
zip_code: str | None
country_name: str | None
property_type: str | None
full_city_line: str | None
phone: str | None
cell_phone: str | None
fax: str | None
email: str | None
address_line2_visible: bool | None
company_visible: bool | None
country_name_visible: bool | None
phone_visible: bool | None
email_visible: bool | None
full_address_line: str | None
full_address: str | None
country_id: 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.companies.OverridableAddressData(*, company=None, firstLastName=None, addressLine1=None, addressLine2=None, city=None, state=None, zipCode=None, phone=None, email=None, fullAddressLine=None, fullAddress=None, fullCityLine=None, **extra_data)[source]

Bases: ResponseModel

Overridable address data — fields wrapped in OverridableField.

Parameters:
company: OverridableField | None
first_last_name: OverridableField | None
address_line1: OverridableField | None
address_line2: OverridableField | None
city: OverridableField | None
state: OverridableField | None
zip_code: OverridableField | None
phone: OverridableField | None
email: OverridableField | None
full_address_line: str | None
full_address: OverridableField | None
full_city_line: OverridableField | 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.companies.CompanyInsurancePricing(*, insuranceSlabID=None, deductibleAmount=None, rate=None, companyId=None, isActive=None, transpTypeID=None, companyName=None, createdby=None, modifiedby=None, revision=None, insuranceType=None, wholeSaleMarkup=None, baseMarkup=None, mediumMarkup=None, highMarkup=None, **extra_data)[source]

Bases: ResponseModel

Company insurance pricing — nested in CompanyDetails.

Parameters:
  • insuranceSlabID (str | None)

  • deductibleAmount (float | None)

  • rate (float | None)

  • companyId (str | None)

  • isActive (bool | None)

  • transpTypeID (str | None)

  • companyName (str | None)

  • createdby (str | None)

  • modifiedby (str | None)

  • revision (int | None)

  • insuranceType (str | None)

  • wholeSaleMarkup (float | None)

  • baseMarkup (float | None)

  • mediumMarkup (float | None)

  • highMarkup (float | None)

  • extra_data (Any)

insurance_slab_id: str | None
deductible_amount: float | None
rate: float | None
company_id: str | None
is_active: bool | None
transp_type_id: str | None
company_name: str | None
created_by: str | None
modified_by: str | None
revision: int | None
insurance_type: str | None
whole_sale_markup: float | None
base_markup: float | None
medium_markup: float | None
high_markup: 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.companies.CompanyServicePricing(*, servicePricingId=None, userID=None, companyID=None, serviceCategoryID=None, categoryValue=None, wholeSaleMarkup=None, baseMarkup=None, mediumMarkup=None, highMarkup=None, isActive=None, isTaxable=None, taxPercent=None, createdBy=None, modifiedBy=None, createdDate=None, modifiedDate=None, companyCode=None, serviceCategoryName=None, companyName=None, companyTypeId=None, parentCategoryID=None, zipCode=None, **extra_data)[source]

Bases: ResponseModel

Company service pricing — nested in CompanyDetails.

Parameters:
  • servicePricingId (str | None)

  • userID (str | None)

  • companyID (str | None)

  • serviceCategoryID (str | None)

  • categoryValue (float | None)

  • wholeSaleMarkup (float | None)

  • baseMarkup (float | None)

  • mediumMarkup (float | None)

  • highMarkup (float | None)

  • isActive (bool | None)

  • isTaxable (bool | None)

  • taxPercent (float | None)

  • createdBy (str | None)

  • modifiedBy (str | None)

  • createdDate (str | None)

  • modifiedDate (str | None)

  • companyCode (str | None)

  • serviceCategoryName (str | None)

  • companyName (str | None)

  • companyTypeId (str | None)

  • parentCategoryID (str | None)

  • zipCode (str | None)

  • extra_data (Any)

service_pricing_id: str | None
user_id: str | None
company_id: str | None
service_category_id: str | None
category_value: float | None
whole_sale_markup: float | None
base_markup: float | None
medium_markup: float | None
high_markup: float | None
is_active: bool | None
is_taxable: bool | None
tax_percent: float | None
created_by: str | None
modified_by: str | None
created_date: str | None
modified_date: str | None
company_code: str | None
service_category_name: str | None
company_name: str | None
company_type_id: str | None
parent_category_id: str | None
zip_code: 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.companies.CompanyTaxPricing(*, jobID=None, serviceCategoryID=None, taxSlabID=None, isTaxable=None, taxPercent=None, companyID=None, serviceCategotyName=None, companyName=None, isActive=None, **extra_data)[source]

Bases: ResponseModel

Company tax pricing — nested in CompanyDetails.

Parameters:
  • jobID (str | None)

  • serviceCategoryID (str | None)

  • taxSlabID (str | None)

  • isTaxable (bool | None)

  • taxPercent (float | None)

  • companyID (str | None)

  • serviceCategotyName (str | None)

  • companyName (str | None)

  • isActive (bool | None)

  • extra_data (Any)

job_id: str | None
service_category_id: str | None
tax_slab_id: str | None
is_taxable: bool | None
tax_percent: float | None
company_id: str | None
service_category_name: str | None
company_name: str | None
is_active: bool | 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.companies.CompanyDetails(*, id=None, details=None, preferences=None, capabilities=None, settings=None, addresses=None, contacts=None, address=None, accountInformation=None, pricing=None, insurance=None, finalMileTariff=None, taxes=None, readOnlyAccess=None, userId=None, companyName=None, contactName=None, contactPhone=None, companyType=None, parcelOnly=None, isThirdParty=None, companyCode=None, parentCompanyName=None, companyTypeID=None, parentCompanyID=None, companyPhone=None, companyEmail=None, companyFax=None, companyWebSite=None, industryType=None, industryTypeName=None, taxId=None, customerCell=None, companyCell=None, pzCode=None, referralCode=None, companyLogo=None, letterHeadLogo=None, thumbnailLogo=None, mapsMarkerImage=None, colorTheme=None, franchiseeMaturityType=None, pricingToUse=None, totalRows=None, companyInsurancePricing=None, companyServicePricing=None, companyTaxPricing=None, wholeSaleMarkup=None, baseMarkup=None, mediumMarkup=None, highMarkup=None, miles=None, insuranceType=None, isGlobal=None, isQbUser=None, skipIntacct=None, isAccess=None, companyDisplayID=None, depth=None, franchiseeName=None, isPrefered=None, createdUser=None, mappingLocations=None, locationCount=None, baseParent=None, copyMaterialFrom=None, isHide=None, isDontUse=None, mainAddress=None, accountManagerFranchiseeId=None, accountManagerFranchiseeName=None, carrierAccountsSourceCompanyId=None, carrierAccountsSourceCompanyName=None, autoPriceAPIEnableEmails=None, autoPriceAPIEnableSMSs=None, commercialCapabilities=None, primaryContactId=None, payerContactId=None, payerContactName=None, totalJobs=None, totalJobsRevenue=None, totalSales=None, totalSalesRevenue=None, isReadonly=None, addressData=None, overridableAddressData=None, companyInfo=None, companyID=None, addressID=None, address1=None, address2=None, city=None, state=None, stateCode=None, countryName=None, countryCode=None, countryID=None, zipCode=None, isActive=None, createdDate=None, createdBy=None, modifiedDate=None, modifiedBy=None, latitude=None, longitude=None, result=None, addressMappingID=None, contactID=None, userID=None, primaryCustomerName=None, contactInfo=None, **extra_data)[source]

Bases: ResponseModel

Full company details — GET /companies/{id}/fulldetails and /details.

The fulldetails endpoint nests data under details and preferences; the details endpoint returns a flat structure with all fields at the top level. This model accepts both shapes.

capabilities is an integer bitmask (not a dict as swagger implies).

Parameters:
  • id (str | None)

  • details (CompanyDetailsInfo | None)

  • preferences (CompanyPreferences | None)

  • capabilities (int | dict | None)

  • settings (dict | None)

  • addresses (List[dict] | None)

  • contacts (List[dict] | None)

  • address (CompanyAddress | None)

  • accountInformation (AccountInformation | None)

  • pricing (CompanyPricing | None)

  • insurance (CompanyInsurance | None)

  • finalMileTariff (List[TariffGroup] | None)

  • taxes (CompanyTaxes | None)

  • readOnlyAccess (bool | None)

  • userId (str | None)

  • companyName (str | None)

  • contactName (str | None)

  • contactPhone (str | None)

  • companyType (str | None)

  • parcelOnly (bool | None)

  • isThirdParty (bool | None)

  • companyCode (str | None)

  • parentCompanyName (str | None)

  • companyTypeID (str | None)

  • parentCompanyID (str | None)

  • companyPhone (str | None)

  • companyEmail (str | None)

  • companyFax (str | None)

  • companyWebSite (str | None)

  • industryType (str | None)

  • industryTypeName (str | None)

  • taxId (str | None)

  • customerCell (str | None)

  • companyCell (str | None)

  • pzCode (str | None)

  • referralCode (str | None)

  • companyLogo (str | None)

  • letterHeadLogo (str | None)

  • thumbnailLogo (str | None)

  • mapsMarkerImage (str | None)

  • colorTheme (str | None)

  • franchiseeMaturityType (str | None)

  • pricingToUse (str | None)

  • totalRows (int | None)

  • companyInsurancePricing (CompanyInsurancePricing | None)

  • companyServicePricing (CompanyServicePricing | None)

  • companyTaxPricing (CompanyTaxPricing | None)

  • wholeSaleMarkup (float | None)

  • baseMarkup (float | None)

  • mediumMarkup (float | None)

  • highMarkup (float | None)

  • miles (float | None)

  • insuranceType (str | None)

  • isGlobal (bool | None)

  • isQbUser (bool | None)

  • skipIntacct (bool | None)

  • isAccess (str | None)

  • companyDisplayID (str | None)

  • depth (int | None)

  • franchiseeName (str | None)

  • isPrefered (bool | None)

  • createdUser (str | None)

  • mappingLocations (str | None)

  • locationCount (str | None)

  • baseParent (str | None)

  • copyMaterialFrom (str | None)

  • isHide (bool | None)

  • isDontUse (bool | None)

  • mainAddress (CompanyAddress | None)

  • accountManagerFranchiseeId (str | None)

  • accountManagerFranchiseeName (str | None)

  • carrierAccountsSourceCompanyId (str | None)

  • carrierAccountsSourceCompanyName (str | None)

  • autoPriceAPIEnableEmails (bool | None)

  • autoPriceAPIEnableSMSs (bool | None)

  • commercialCapabilities (int | None)

  • primaryContactId (int | None)

  • payerContactId (int | None)

  • payerContactName (str | None)

  • totalJobs (int | None)

  • totalJobsRevenue (float | None)

  • totalSales (int | None)

  • totalSalesRevenue (float | None)

  • isReadonly (bool | None)

  • addressData (AddressData | None)

  • overridableAddressData (OverridableAddressData | None)

  • companyInfo (CompanyInfo | None)

  • companyID (str | None)

  • addressID (str | None)

  • address1 (str | None)

  • address2 (str | None)

  • city (str | None)

  • state (str | None)

  • stateCode (str | None)

  • countryName (str | None)

  • countryCode (str | None)

  • countryID (str | None)

  • zipCode (str | None)

  • isActive (bool | None)

  • createdDate (str | None)

  • createdBy (str | None)

  • modifiedDate (str | None)

  • modifiedBy (str | None)

  • latitude (str | None)

  • longitude (str | None)

  • result (str | None)

  • addressMappingID (str | None)

  • contactID (str | None)

  • userID (str | None)

  • primaryCustomerName (str | None)

  • contactInfo (dict | None)

  • extra_data (Any)

id: str | None
details: CompanyDetailsInfo | None
preferences: CompanyPreferences | None
capabilities: int | dict | None
settings: dict | None
addresses: List[dict] | None
contacts: List[dict] | None
address: CompanyAddress | None
account_information: AccountInformation | None
pricing: CompanyPricing | None
insurance: CompanyInsurance | None
final_mile_tariff: List[TariffGroup] | None
taxes: CompanyTaxes | None
read_only_access: bool | None
user_id: str | None
company_name: str | None
contact_name: str | None
contact_phone: str | None
company_type: str | None
parcel_only: bool | None
is_third_party: bool | None
company_code: str | None
parent_company_name: str | None
company_type_id: str | None
parent_company_id: str | None
company_phone: str | None
company_email: str | None
company_fax: str | None
company_web_site: str | None
industry_type: str | None
industry_type_name: str | None
tax_id: str | None
customer_cell: str | None
company_cell: str | None
pz_code: str | None
referral_code: str | None
maps_marker_image: str | None
color_theme: str | None
franchisee_maturity_type: str | None
pricing_to_use: str | None
total_rows: int | None
company_insurance_pricing: CompanyInsurancePricing | None
company_service_pricing: CompanyServicePricing | None
company_tax_pricing: CompanyTaxPricing | None
whole_sale_markup: float | None
base_markup: float | None
medium_markup: float | None
high_markup: float | None
miles: float | None
insurance_type: str | None
is_global: bool | None
is_qb_user: bool | None
skip_intacct: bool | None
is_access: str | None
company_display_id: str | None
depth: int | None
franchisee_name: str | None
is_prefered: bool | None
created_user: str | None
mapping_locations: str | None
location_count: str | None
base_parent: str | None
copy_material_from: str | None
is_hide: bool | None
is_dont_use: bool | None
main_address: CompanyAddress | None
account_manager_franchisee_id: str | None
account_manager_franchisee_name: str | None
carrier_accounts_source_company_id: str | None
carrier_accounts_source_company_name: str | None
auto_price_api_enable_emails: bool | None
auto_price_api_enable_smss: bool | None
commercial_capabilities: int | None
primary_contact_id: int | None
payer_contact_id: int | None
payer_contact_name: str | None
total_jobs: int | None
total_jobs_revenue: float | None
total_sales: int | None
total_sales_revenue: float | None
is_readonly: bool | None
address_data: AddressData | None
overridable_address_data: OverridableAddressData | None
company_info: CompanyInfo | None
company_id_flat: str | None
address_id_flat: str | None
address1: str | None
address2: str | None
city: str | None
state: str | None
state_code: str | None
country_name: str | None
country_code: str | None
country_id_flat: str | None
zip_code: str | None
is_active: bool | None
created_date: str | None
created_by: str | None
modified_date: str | None
modified_by: str | None
latitude: str | None
longitude: str | None
result: str | None
address_mapping_id: str | None
contact_id_flat: str | None
user_id_flat: str | None
primary_customer_name: str | None
contact_info: 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.companies.SearchCompanyResponse(*, id=None, code=None, companyName=None, name=None, typeId=None, parentCompanyId=None, companyType=None, **extra_data)[source]

Bases: ResponseModel

Single result from GET /companies/availableByCurrentUser.

The live API returns companyName and name (both present), plus typeId and parentCompanyId.

Parameters:
  • id (str | None)

  • code (str | None)

  • companyName (str | None)

  • name (str | None)

  • typeId (str | None)

  • parentCompanyId (str | None)

  • companyType (str | None)

  • extra_data (Any)

id: str | None
code: str | None
company_name: str | None
name: str | None
type_id: str | None
parent_company_id: str | None
company_type: 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.companies.CompanySearchRequest(*, searchText=None, page=None, pageSize=None, filters=None)[source]

Bases: PaginatedRequestMixin, SearchableRequestMixin

Body for POST /companies/search/v2.

Parameters:
  • searchText (str | None)

  • page (int | None)

  • pageSize (int | None)

  • filters (dict | None)

filters: 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.companies.CompanyBrand(*, id=None, name=None, parentId=None, **extra_data)[source]

Bases: ResponseModel

Brand record — GET /companies/brands.

Parameters:
  • id (str | None)

  • name (str | None)

  • parentId (str | None)

  • extra_data (Any)

id: str | None
name: str | None
parent_id: 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.companies.BrandTree(*, id=None, name=None, children=None, **extra_data)[source]

Bases: ResponseModel

Hierarchical brand tree — GET /companies/brandstree.

Parameters:
id: str | None
name: str | None
children: 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.companies.GeoSettings(*, companyId=None, serviceAreas=None, restrictions=None, **extra_data)[source]

Bases: ResponseModel

Geographic settings — GET /companies/{companyId}/geosettings.

Parameters:
company_id: str | None
service_areas: List[dict] | None
restrictions: 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.companies.GeoSettingsSaveRequest(*, serviceAreas=None, restrictions=None)[source]

Bases: RequestModel

Body for POST /companies/{companyId}/geosettings.

Parameters:
service_areas: List[dict] | None
restrictions: List[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.companies.CarrierAccount(*, id=None, carrierName=None, accountNumber=None, **extra_data)[source]

Bases: ResponseModel

Carrier account — GET /companies/{companyId}/carrierAcounts.

Parameters:
  • id (str | None)

  • carrierName (str | None)

  • accountNumber (str | None)

  • extra_data (Any)

id: str | None
carrier_name: str | None
account_number: 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.companies.CarrierAccountSaveRequest(*, carrierName=None, accountNumber=None)[source]

Bases: RequestModel

Body for POST /companies/{companyId}/carrierAcounts.

Parameters:
  • carrierName (str | None)

  • accountNumber (str | None)

carrier_name: str | None
account_number: 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.companies.PackagingSettings(*, companyId=None, settings=None, **extra_data)[source]

Bases: ResponseModel

Packaging config — GET /companies/{companyId}/packagingsettings.

Parameters:
  • companyId (str | None)

  • settings (dict | None)

  • extra_data (Any)

company_id: str | None
settings: 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.companies.PackagingLabor(*, companyId=None, laborRates=None, **extra_data)[source]

Bases: ResponseModel

Packaging labor config — GET /companies/{companyId}/packaginglabor.

Parameters:
  • companyId (str | None)

  • laborRates (List[dict] | None)

  • extra_data (Any)

company_id: str | None
labor_rates: 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.companies.PackagingTariff(*, tariffId=None, rates=None, **extra_data)[source]

Bases: ResponseModel

Inherited packaging tariff — GET /companies/{companyId}/inheritedPackagingTariffs.

Parameters:
tariff_id: str | None
rates: 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.companies.PackagingSettingsSaveRequest(*, settings=None)[source]

Bases: RequestModel

Body for POST /companies/{companyId}/packagingsettings.

Parameters:

settings (dict | None)

settings: 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.companies.PackagingLaborSaveRequest(*, laborRates=None)[source]

Bases: RequestModel

Body for POST /companies/{companyId}/packaginglabor.

Parameters:

laborRates (List[dict] | None)

labor_rates: List[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].