Create unit
Create a new unit with a serial number and link it to a revision by part number and revision number. Units are typically created automatically during run creation, but this endpoint allows direct unit creation when needed.
API v2 Preview
The TofuPilot API v2.0 is currently in public preview and is subject to change as we stabilize until release (planned for Oct 2025).
Access
| API Key | Access Level | Description |
|---|---|---|
| User | Full | Users can create units |
| Station | Full | Stations can create units |
Endpoint
/v2/unitsAPI key for authentication. Use format: Bearer YOUR_API_KEY
In: header
Unique serial number identifier for the unit. Must be unique within the organization.
^[a-zA-Z0-9_-]+$1 <= length <= 60Component part number that defines what type of unit this is. If the part does not exist, it will be created.
^[a-zA-Z0-9_-]+$1 <= length <= 60Hardware revision identifier for the specific version of the part. If the revision does not exist, it will be created.
^[a-zA-Z0-9_.-]+$1 <= length <= 60Response Body
from tofupilot.v2 import TofuPilot
# Initialize the TofuPilot client
client = TofuPilot()
# Execute the operation
result = client.units.create(
serial_number="SN-001234",
part_number="PCB-V1.2",
revision_number="REV-1.0"
)
# Handle response
print(result){
"id": "550e8400-e29b-41d4-a716-446655440000"
}{
"code": "NOT_FOUND",
"message": "Operator with email {operated_by} does not exist. Create the user first in the app.; Procedure with ID {id} does not exist. Create the procedure first in the app.",
"issues": []
}{
"code": "CONFLICT",
"message": "A version with this tag already exists for the procedure",
"issues": []
}{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}How is this guide?