v2 Reference (Preview)Units
Update unit
Update unit properties including serial number, part number, revision, batch. The current serial number is specified in the URL path. Serial numbers are matched case-insensitively (e.g., "UNIT-001" and "unit-001" are considered the same).
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 have full access to units |
| Station | Full | Stations can access units |
Endpoint
PATCH
/v2/units/{serial_number}AuthorizationBearer <token>
API key for authentication. Use format: Bearer YOUR_API_KEY
In: header
Path Parameters
serial_numberstring
Serial number of the unit to update.
Match
^[a-zA-Z0-9_.:+-]+$Length
1 <= length <= 60new_serial_number?string
New serial number for the unit.
Match
^[a-zA-Z0-9_.:+-]+$Length
1 <= length <= 60part_number?string
New part number for the unit.
Match
^[a-zA-Z0-9_.:+-]+$Length
1 <= length <= 60revision_number?string
New revision number for the unit.
Match
^[a-zA-Z0-9_.:+-]+$Length
1 <= length <= 60batch_number?string | null
New batch number for the unit. Set to null to remove batch.
Match
^[a-zA-Z0-9_.:+-]+$Length
1 <= length <= 60Response Body
from tofupilot.v2 import TofuPilot
# Initialize the TofuPilot client
client = TofuPilot()
# Execute the operation
result = client.units.update(
serial_number="UNIT-12345"
)
# Handle response
print(result){
"id": "550e8400-e29b-41d4-a716-446655440000"
}{
"message": "Not found",
"code": "NOT_FOUND",
"issues": []
}{
"message": "Conflict",
"code": "CONFLICT",
"issues": []
}{
"message": "Internal server error",
"code": "INTERNAL_SERVER_ERROR",
"issues": []
}How is this guide?