Skip to content

Resource CompanyResource

CrucifiedPain edited this page Jun 26, 2026 · 10 revisions

CompanyResource (client.company)

Endpoints: • company.getById • company.getCompanies (cursor-paginated, filter by userId) • company.getRecommendedRegionIdsByItemCode • company.getProductionBonus

.collect_all()

Convenience: fetch all companies globally (or by country if passed) using parallel slicing. This is much faster than fetching sequentially.

Signature

await client.company.collect_all(oldest_date: 'datetime | str | None' = None, time_slice_days: 'int' = 30, concurrency: 'int' = 500, **kwargs: 'Any') -> 'list[Company]'

Parameters

Name Type Default
oldest_date datetime | str None
time_slice_days int 30
concurrency int 500
kwargs Any *Required*

Return Models

Company

Field Type Required Description
_id string Optional
__v integer Optional
name string Optional The official name of the country.
owner string Optional
country string Optional
region string Optional The UUID of the contested region.
type string Optional The type.
quality integer Optional The quality level (Q1-Q5) of the company determining production efficiency.
size integer Optional The size.
employees integer Optional The employees.
production number Optional The production.
wealth number Optional The wealth.
image string Optional The image.
isHiring boolean Optional The is hiring.
activeUpgradeLevels CompanyActiveUpgradeLevels Optional The active upgrade levels.
concreteInvested integer | number Optional The concrete invested.
dates CompanyDates Optional The dates.
estimatedValue integer | number Optional The total estimated market value of the company and its assets.
isFull boolean Optional The is full.
itemCode string Optional The item code.
movedUpAt string Optional The moved up at.
user string Optional The user.
workerCount integer Optional The total number of worker.
workers array[any] Optional The workers.
createdAt string Optional The timestamp when this record was created.
updatedAt string Optional The timestamp when this record was last modified.

CompanyActiveUpgradeLevels

Field Type Required Description
_id string Optional
__v integer Optional

CompanyDates

Field Type Required Description
_id string Optional
__v integer Optional

.collect_by_users()

Fetch all companies owned by a list of users. Uses native tRPC batching to group up to 50 user queries per HTTP request, making it extremely fast and rate-limit friendly.

Args: user_ids: List of user ID strings to fetch companies for. concurrency: Max concurrent requests.

Returns: A flat list of all :class:Company objects across every user.

Signature

await client.company.collect_by_users(user_ids: 'list[str]', *, concurrency: 'int' = 500) -> 'list[Company]'

Parameters

Name Type Default
user_ids list[str] *Required*
concurrency int 500

Return Models

Company

Field Type Required Description
_id string Optional
__v integer Optional
name string Optional The official name of the country.
owner string Optional
country string Optional
region string Optional The UUID of the contested region.
type string Optional The type.
quality integer Optional The quality level (Q1-Q5) of the company determining production efficiency.
size integer Optional The size.
employees integer Optional The employees.
production number Optional The production.
wealth number Optional The wealth.
image string Optional The image.
isHiring boolean Optional The is hiring.
activeUpgradeLevels CompanyActiveUpgradeLevels Optional The active upgrade levels.
concreteInvested integer | number Optional The concrete invested.
dates CompanyDates Optional The dates.
estimatedValue integer | number Optional The total estimated market value of the company and its assets.
isFull boolean Optional The is full.
itemCode string Optional The item code.
movedUpAt string Optional The moved up at.
user string Optional The user.
workerCount integer Optional The total number of worker.
workers array[any] Optional The workers.
createdAt string Optional The timestamp when this record was created.
updatedAt string Optional The timestamp when this record was last modified.

CompanyActiveUpgradeLevels

Field Type Required Description
_id string Optional
__v integer Optional

CompanyDates

Field Type Required Description
_id string Optional
__v integer Optional

.get()

Get a single company by ID.

Signature

await client.company.get(company_id: 'str') -> 'Company'

Parameters

Name Type Default
company_id str *Required*

Return Models

Company

Field Type Required Description
_id string Optional
__v integer Optional
name string Optional The official name of the country.
owner string Optional
country string Optional
region string Optional The UUID of the contested region.
type string Optional The type.
quality integer Optional The quality level (Q1-Q5) of the company determining production efficiency.
size integer Optional The size.
employees integer Optional The employees.
production number Optional The production.
wealth number Optional The wealth.
image string Optional The image.
isHiring boolean Optional The is hiring.
activeUpgradeLevels CompanyActiveUpgradeLevels Optional The active upgrade levels.
concreteInvested integer | number Optional The concrete invested.
dates CompanyDates Optional The dates.
estimatedValue integer | number Optional The total estimated market value of the company and its assets.
isFull boolean Optional The is full.
itemCode string Optional The item code.
movedUpAt string Optional The moved up at.
user string Optional The user.
workerCount integer Optional The total number of worker.
workers array[any] Optional The workers.
createdAt string Optional The timestamp when this record was created.
updatedAt string Optional The timestamp when this record was last modified.

CompanyActiveUpgradeLevels

Field Type Required Description
_id string Optional
__v integer Optional

CompanyDates

Field Type Required Description
_id string Optional
__v integer Optional

.get_by_user()

Convenience: fetch all companies owned by a user (collects all pages).

Signature

await client.company.get_by_user(user_id: 'str', **kwargs: 'Any') -> 'list[Company]'

Parameters

Name Type Default
user_id str *Required*
kwargs Any *Required*

Return Models

Company

Field Type Required Description
_id string Optional
__v integer Optional
name string Optional The official name of the country.
owner string Optional
country string Optional
region string Optional The UUID of the contested region.
type string Optional The type.
quality integer Optional The quality level (Q1-Q5) of the company determining production efficiency.
size integer Optional The size.
employees integer Optional The employees.
production number Optional The production.
wealth number Optional The wealth.
image string Optional The image.
isHiring boolean Optional The is hiring.
activeUpgradeLevels CompanyActiveUpgradeLevels Optional The active upgrade levels.
concreteInvested integer | number Optional The concrete invested.
dates CompanyDates Optional The dates.
estimatedValue integer | number Optional The total estimated market value of the company and its assets.
isFull boolean Optional The is full.
itemCode string Optional The item code.
movedUpAt string Optional The moved up at.
user string Optional The user.
workerCount integer Optional The total number of worker.
workers array[any] Optional The workers.
createdAt string Optional The timestamp when this record was created.
updatedAt string Optional The timestamp when this record was last modified.

CompanyActiveUpgradeLevels

Field Type Required Description
_id string Optional
__v integer Optional

CompanyDates

Field Type Required Description
_id string Optional
__v integer Optional

.get_companies()

Get companies, optionally filtered by owner user ID (cursor-paginated).

Signature

await client.company.get_companies(*, user_id: 'str | None' = None, per_page: 'int' = 10, cursor: 'str | None' = None, auto_items: 'bool' = False, max_pages: 'int | float' = inf, cursor_end: 'str | None' = None) -> 'CursorPage[Company] | AsyncIterator[Company]'

Parameters

Name Type Default
user_id str None
per_page int 10
cursor str None
auto_items bool False
max_pages int | float inf
cursor_end str None

Return Models

Company

Field Type Required Description
_id string Optional
__v integer Optional
name string Optional The official name of the country.
owner string Optional
country string Optional
region string Optional The UUID of the contested region.
type string Optional The type.
quality integer Optional The quality level (Q1-Q5) of the company determining production efficiency.
size integer Optional The size.
employees integer Optional The employees.
production number Optional The production.
wealth number Optional The wealth.
image string Optional The image.
isHiring boolean Optional The is hiring.
activeUpgradeLevels CompanyActiveUpgradeLevels Optional The active upgrade levels.
concreteInvested integer | number Optional The concrete invested.
dates CompanyDates Optional The dates.
estimatedValue integer | number Optional The total estimated market value of the company and its assets.
isFull boolean Optional The is full.
itemCode string Optional The item code.
movedUpAt string Optional The moved up at.
user string Optional The user.
workerCount integer Optional The total number of worker.
workers array[any] Optional The workers.
createdAt string Optional The timestamp when this record was created.
updatedAt string Optional The timestamp when this record was last modified.

CompanyActiveUpgradeLevels

Field Type Required Description
_id string Optional
__v integer Optional

CompanyDates

Field Type Required Description
_id string Optional
__v integer Optional

CursorPage[Company]

Field Type Required Description
_id string Optional
__v integer Optional
items array[Company] Required
nextCursor string Optional
hasMore boolean Optional

.get_many()

Fetch multiple companies by ID concurrently using the auto-batcher.

Signature

await client.company.get_many(company_ids: 'list[str]', *, concurrency: 'int' = 500) -> 'list[Company | None]'

Parameters

Name Type Default
company_ids list[str] *Required*
concurrency int 500

Return Models

Company

Field Type Required Description
_id string Optional
__v integer Optional
name string Optional The official name of the country.
owner string Optional
country string Optional
region string Optional The UUID of the contested region.
type string Optional The type.
quality integer Optional The quality level (Q1-Q5) of the company determining production efficiency.
size integer Optional The size.
employees integer Optional The employees.
production number Optional The production.
wealth number Optional The wealth.
image string Optional The image.
isHiring boolean Optional The is hiring.
activeUpgradeLevels CompanyActiveUpgradeLevels Optional The active upgrade levels.
concreteInvested integer | number Optional The concrete invested.
dates CompanyDates Optional The dates.
estimatedValue integer | number Optional The total estimated market value of the company and its assets.
isFull boolean Optional The is full.
itemCode string Optional The item code.
movedUpAt string Optional The moved up at.
user string Optional The user.
workerCount integer Optional The total number of worker.
workers array[any] Optional The workers.
createdAt string Optional The timestamp when this record was created.
updatedAt string Optional The timestamp when this record was last modified.

CompanyActiveUpgradeLevels

Field Type Required Description
_id string Optional
__v integer Optional

CompanyDates

Field Type Required Description
_id string Optional
__v integer Optional

.get_production_bonus()

Get the full production bonus breakdown for a company.

Returns a :class:CompanyProductionBonus with strategic_bonus, deposit_bonus, ethic_specialization_bonus, ethic_deposit_bonus, and total.

Signature

await client.company.get_production_bonus(company_id: 'str') -> 'CompanyProductionBonus'

Parameters

Name Type Default
company_id str *Required*

.get_recommended_regions()

Get recommended regions for producing a given item, ranked by total bonus.

Args: item_code: Item code to check (e.g. "iron", "weapon_q1"). include_deposit: Whether to include deposit bonuses in the ranking.

Returns: A list of :class:RecommendedRegion objects sorted by bonus (best first).

Signature

await client.company.get_recommended_regions(item_code: 'str', *, include_deposit: 'bool' = True) -> 'list[RecommendedRegion]'

Parameters

Name Type Default
item_code str *Required*
include_deposit bool True

.invalidate_cache()

Clear the SWR cache for all resources.

Signature

await client.company.invalidate_cache() -> 'None'

Clone this wiki locally