Dashboard Models

Dashboard models for the ACPortal API.

class ab.api.models.dashboard.DashboardParams(*, viewId=None, companyId=None)[source]

Bases: RequestModel

Query parameters for GET /dashboard.

Parameters:
  • viewId (int | None)

  • companyId (str | None)

view_id: int | None
company_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.dashboard.DashboardCompanyParams(*, companyId=None)[source]

Bases: RequestModel

Query parameters for GET /dashboard/gridviews (company filter).

Parameters:

companyId (str | None)

company_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.dashboard.DashboardCompanyRequest(*, companyId=None)[source]

Bases: RequestModel

Body for POST /dashboard/{inbound,inhouse,outbound,…} endpoints.

Parameters:

companyId (str | None)

company_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.dashboard.DashboardItem(*, location=None, jobDisplayID=None, pickup=None, customer=None, packer=None, priority=None, next=None, pause=None, labels=None, opsForm=None, step=None, shipBy=None, expedite=None, note=None, carrier=None, labor=None, actual=None, item_Count=None, **extra_data)[source]

Bases: ResponseModel

Row in the dashboard data grid — element of DashboardSummary.data.

Parameters:
  • location (str | None)

  • jobDisplayID (int | None)

  • pickup (str | None)

  • customer (str | None)

  • packer (str | None)

  • priority (int | None)

  • next (str | None)

  • pause (int | None)

  • labels (str | None)

  • opsForm (str | None)

  • step (int | None)

  • shipBy (datetime | None)

  • expedite (str | None)

  • note (str | None)

  • carrier (str | None)

  • labor (float | None)

  • actual (float | None)

  • item_Count (int | None)

  • extra_data (Any)

location: str | None
job_display_id: int | None
pickup: str | None
customer: str | None
packer: str | None
priority: int | None
next: str | None
pause: int | None
labels: str | None
ops_form: str | None
step: int | None
ship_by: datetime | None
expedite: str | None
note: str | None
carrier: str | None
labor: float | None
actual: float | None
item_count: int | None
cli_format()[source]

One-line pretty row used by the CLI and examples (vs. JSON).

Return type:

str

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.dashboard.DashboardSummary(*, inboundCount=None, outboundCount=None, inHouseCount=None, localDeliveriesCount=None, recentEstimatesCount=None, data=None, **extra_data)[source]

Bases: ResponseModel

Aggregated dashboard data — GET /dashboard.

Parameters:
  • inboundCount (int | None)

  • outboundCount (int | None)

  • inHouseCount (int | None)

  • localDeliveriesCount (int | None)

  • recentEstimatesCount (int | None)

  • data (List[DashboardItem] | None)

  • extra_data (Any)

inbound_count: int | None
outbound_count: int | None
in_house_count: int | None
local_deliveries_count: int | None
recent_estimates_count: int | None
data: List[DashboardItem] | None
cli_format()[source]

Pretty summary line + one line per row (vs. JSON).

data is the active grid view’s rows; counts are populated only when the API includes them. The header surfaces both so it’s clear which fields were returned.

Return type:

str

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.dashboard.GridViewState(*, id=None, columns=None, filters=None, sortOrder=None, **extra_data)[source]

Bases: ResponseModel

Saved grid view state — GET/POST /dashboard/gridviewstate/{id}.

Parameters:
id: str | None
columns: List[dict] | None
filters: List[dict] | None
sort_order: 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.dashboard.GridViewInfo(*, id=None, name=None, dataKey=None, isActive=None, storedProcedure=None, columnsSpecification=None, spColumns=None, **extra_data)[source]

Bases: ResponseModel

Grid view metadata — GET /dashboard/gridviews.

Shape matches the swagger GridViewDetails component. id is the forward reference consumed by DashboardParams.view_id when calling GET /dashboard.

Parameters:
  • id (int | None)

  • name (str | None)

  • dataKey (str | None)

  • isActive (bool | None)

  • storedProcedure (str | None)

  • columnsSpecification (str | None)

  • spColumns (List[dict] | None)

  • extra_data (Any)

id: int | None
name: str | None
data_key: str | None
is_active: bool | None
stored_procedure: str | None
columns_specification: str | None
sp_columns: List[dict] | None
cli_format()[source]

One-line pretty row used by the CLI and examples (vs. JSON).

Return type:

str

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].