Overview
Targets define the configuration for stimulus generation (stim) and trajectory generation (rollout). They are composed from a base template plus per-target overrides.
Related Endpoints:
Endpoints
List Targets
List all targets in a repository.
Endpoint: GET /v1/repo/{repo_name}/targets
Request:
curl -X GET "https://bapi.bread.com.ai/v1/repo/my_repo/targets" \
-H "Authorization: Bearer $BREAD_API_KEY"
Response: 200 OK
{
"targets": ["target_1", "target_2", "coding_target"]
}
Get Target
Get target definition and metadata.
Endpoint: GET /v1/repo/{repo_name}/targets/{target_name}
Request:
curl -X GET "https://bapi.bread.com.ai/v1/repo/my_repo/targets/coding_target" \
-H "Authorization: Bearer $BREAD_API_KEY"
Response: 200 OK
{
"target_name": "coding_target",
"config": {
"model_name": "Qwen/Qwen3-32B",
"teacher_prompt": "system_prompt_coding",
"student_prompt": "user_prompt_python",
"generators": [],
"max_tokens": 150,
"temperature": 1.0
}
}
Create or Update Target
Create or update a target. Targets are composed from a base template plus per-target overrides.
Endpoint: POST /v1/repo/{repo_name}/targets
Request:
curl -X POST "https://bapi.bread.com.ai/v1/repo/my_repo/targets" \
-H "Authorization: Bearer $BREAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target_name": "coding_target",
"template": "default",
"overrides": {
"model_name": "Qwen/Qwen3-32B",
"teacher_prompt": "system_prompt_coding",
"student_prompt": "user_prompt_python",
"generators": [
{
"type": "oneshot_qs",
"model": "claude-sonnet-4-5-20250929",
"numq": 10,
"temperature": 1.0
}
],
"max_tokens": 150,
"temperature": 1.0
}
}'
Template name: "default" or name of existing target
Returns: TargetResponse
Batch Create or Update Targets
Create or update multiple targets in a single request.
Endpoint: POST /v1/repo/{repo_name}/targets/batch
Request:
curl -X POST "https://bapi.bread.com.ai/v1/repo/my_repo/targets/batch" \
-H "Authorization: Bearer $BREAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"targets": [
{
"target_name": "target_alpha",
"template": "default",
"overrides": {"model_name": "Qwen/Qwen3-32B"}
},
{
"target_name": "target_beta",
"template": "target_alpha",
"overrides": {"temperature": 0.7}
}
]
}'
Create or Update Target (Deprecated)
Deprecated: Use POST /v1/repo/{repo_name}/targets instead. This endpoint will be removed in a future version.
Endpoint: PUT /v1/repo/{repo_name}/targets/{target_name}
Request:
curl -X PUT "https://bapi.bread.com.ai/v1/repo/my_repo/targets/coding_target" \
-H "Authorization: Bearer $BREAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"template": "default",
"overrides": {
"model_name": "Qwen/Qwen3-32B",
"teacher_prompt": "system_prompt_coding",
"student_prompt": "user_prompt_python"
}
}'
Batch Create or Update Targets (Deprecated)
Deprecated: Use POST /v1/repo/{repo_name}/targets/batch instead. This endpoint will be removed in a future version.
Endpoint: PUT /v1/repo/{repo_name}/targets/batch
Request:
curl -X PUT "https://bapi.bread.com.ai/v1/repo/my_repo/targets/batch" \
-H "Authorization: Bearer $BREAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"targets": [
{
"target_name": "target_alpha",
"template": "default",
"overrides": {"model_name": "Qwen/Qwen3-32B"}
}
]
}'
Delete Target
Delete a target from the repository.
Endpoint: DELETE /v1/repo/{repo_name}/targets/{target_name}
Request:
curl -X DELETE "https://bapi.bread.com.ai/v1/repo/my_repo/targets/old_target" \
-H "Authorization: Bearer $BREAD_API_KEY"
Configuration Fields
See Target Configuration Reference for detailed documentation of all configuration fields.
Key Fields
Base model for rollout (required for rollout jobs)
Teacher prompt name - prompt that defines the target behavior being baked into the model.Deprecated: The u field is deprecated in favor of teacher_prompt. Please use teacher_prompt instead.
Student prompt name - simplified prompt given at inference. After baking, this triggers the teacher behavior. Can be empty ("") for always-on behavior.Deprecated: The v field is deprecated in favor of student_prompt. Please use student_prompt instead.
Maximum tokens to generate
Generation temperature (0.0-2.0)
Number of trajectories per stimulus
Maximum concurrent requests
Examples
Simple Target with Hardcoded Questions
curl -X POST "https://bapi.bread.com.ai/v1/repo/my_repo/targets" \
-H "Authorization: Bearer $BREAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target_name": "simple_target",
"template": "default",
"overrides": {
"generators": [
{
"type": "hardcoded",
"numq": 3,
"questions": [
"Write a Python function to sort a list",
"Create a REST API endpoint",
"Implement a binary tree"
]
}
],
"model_name": "Qwen/Qwen3-32B",
"teacher_prompt": "system_prompt",
"student_prompt": "user_prompt"
}
}'
Target with AI-Generated Questions
curl -X POST "https://bapi.bread.com.ai/v1/repo/my_repo/targets" \
-H "Authorization: Bearer $BREAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target_name": "ai_generated_target",
"template": "default",
"overrides": {
"generators": [
{
"type": "oneshot_qs",
"model": "claude-sonnet-4-5-20250929",
"numq": 50,
"temperature": 1.0
}
],
"model_name": "Qwen/Qwen3-32B",
"max_tokens": 200,
"temperature": 0.9,
"teacher_prompt": "system_coding",
"student_prompt": "user_task"
}
}'
The student prompt can be empty ("") for zero-token, always-on behavior. This proves the expertise is truly baked into the model weights!
Target Lifecycle
Create Target
Configure target with generators, prompts, and model settings
Run Stim
Generate stimuli (questions/tasks) using the target configuration
Run Rollout
Generate trajectories (model responses) for the stimuli
Use in Bake
Reference the target’s rollout data in a bake for model training
Next Steps