Skip to content

Targets & Challenges

List targets with optional filters. Returns paginated results.

async def list_targets(
status: Optional[str] = None,
epoch: Optional[int] = None,
limit: Optional[int] = None,
read_mask: Optional[str] = None,
) -> ListTargetsResponse
ParameterTypeRequiredDefaultDescription
statusstrNoNoneFilter: "open", "filled", or "claimed"
epochintNoNoneFilter by generation epoch
limitintNoNoneMaximum results per page
read_maskstrNoNoneField mask for partial responses

Returns: ListTargetsResponse

response = await client.list_targets(status="open", limit=10)
for target in response.targets:
print(f"{target.id}: threshold={target.distance_threshold}")

Get a flat list of targets (unwrapped from pagination).

async def get_targets(
status: Optional[str] = None,
epoch: Optional[int] = None,
limit: Optional[int] = None,
) -> list[Target]
ParameterTypeRequiredDefaultDescription
statusstrNoNoneFilter: "open", "filled", or "claimed"
epochintNoNoneFilter by generation epoch
limitintNoNoneMaximum results

Returns: list[Target]

Fetch weight manifests for models. Accepts either a list of model IDs or a Target object (uses its model_ids).

async def get_model_manifests(
model_ids_or_target: Union[list[str], Target],
) -> list[ModelManifest]
ParameterTypeRequiredDefaultDescription
model_ids_or_targetlist[str] | TargetYesModel IDs or a Target object

Returns: list[ModelManifest]

targets = await client.get_targets(status="open", limit=1)
manifests = await client.get_model_manifests(targets[0])
for m in manifests:
print(f"URL: {m.url}, size: {m.size}")

Get details of a specific challenge.

async def get_challenge(challenge_id: str) -> ChallengeInfo
ParameterTypeRequiredDefaultDescription
challenge_idstrYesChallenge object ID

Returns: ChallengeInfo

List challenges with optional filters.

async def list_challenges(
target_id: Optional[str] = None,
status: Optional[str] = None,
epoch: Optional[int] = None,
limit: Optional[int] = None,
) -> ListChallengesResponse
ParameterTypeRequiredDefaultDescription
target_idstrNoNoneFilter by target ID
statusstrNoNoneFilter by challenge status
epochintNoNoneFilter by epoch
limitintNoNoneMaximum results

Returns: ListChallengesResponse