Endpoints for form management and record submission
Hydrobit API (2.0.0)
Comprehensive API documentation for the Hydrobit platform.
This API enables management of forms, records, workers, projects, and related data within Hydrobit.
Request
Creates a new production record to add units to an open session.
Requires JWT token authentication in the Authorization header.
Key features:
- Only the session owner can create records
- Session must be open
- Supports idempotency via clientEventId and optional idempotencyKey
- Optimized for high-performance processing
Timestamp when the record was created (ISO 8601 UTC)
Unique client-side event identifier for idempotency
- Mock serverhttps://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records
- Production serverhttps://api.hydrobit.ag/api/control/production/records
- IoT serverhttps://iot.hydrobit.ag/api/control/production/records
- MQTT over WebSocket endpointwss://iot.hydrobit.ag/api/control/production/records
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"auth0Id": "user_123456789",
"sessionId": "6507f1e3c9d8e2a4b1f9c3d5",
"workerId": "JS0315",
"worker_name": "John Smith",
"recordedAtUtc": "2025-10-19T14:30:00.000Z",
"clientEventId": "evt_1234567890abcdef"
}'{ "status": "success", "data": { "payloadPreview": { … }, "idempotent": true } }
User identifier (internal use, derived from JWT token)
Array of production records to create
Timestamp when the record was created (ISO 8601 UTC)
Idempotency key for deduplication
- Mock serverhttps://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records/bulk
- Production serverhttps://api.hydrobit.ag/api/control/production/records/bulk
- IoT serverhttps://iot.hydrobit.ag/api/control/production/records/bulk
- MQTT over WebSocket endpointwss://iot.hydrobit.ag/api/control/production/records/bulk
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records/bulk \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"auth0Id": "user_123456789",
"records": [
{
"sessionId": "6507f1e3c9d8e2a4b1f9c3d5",
"workerId": "JS0315",
"worker_name": "John Smith",
"units": 5,
"recordedAtUtc": "2025-10-19T14:30:00.000Z",
"clientEventId": "evt_1234567890abcdef"
},
{
"sessionId": "6507f1e3c9d8e2a4b1f9c3d5",
"workerId": "JS0315",
"worker_name": "John Smith",
"units": 3,
"recordedAtUtc": "2025-10-19T15:00:00.000Z",
"clientEventId": "evt_9876543210fedcba"
}
]
}'{ "status": "success", "results": [ { … } ], "summary": { "ok": 2, "duplicated": 0, "failed": 0 } }
- Mock serverhttps://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records/check-idempotency
- Production serverhttps://api.hydrobit.ag/api/control/production/records/check-idempotency
- IoT serverhttps://iot.hydrobit.ag/api/control/production/records/check-idempotency
- MQTT over WebSocket endpointwss://iot.hydrobit.ag/api/control/production/records/check-idempotency
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X HEAD \
'https://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records/check-idempotency?key=client%3A6507f1e3c9d8e2a4b1f9c3d5%3AJS0315%3Aevt_1234567890abcdef' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'- Mock serverhttps://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records/{recordId}
- Production serverhttps://api.hydrobit.ag/api/control/production/records/{recordId}
- IoT serverhttps://iot.hydrobit.ag/api/control/production/records/{recordId}
- MQTT over WebSocket endpointwss://iot.hydrobit.ag/api/control/production/records/{recordId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
https://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records/rec_1234567890abcdef \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'{ "status": "success", "data": { "recordId": "rec_1234567890abcdef", "sessionId": "6507f1e3c9d8e2a4b1f9c3d5", "workerId": "JS0315", "units": 5, "state": "inserted" } }
Request
Voids (cancels) a production record by creating a counter-movement with negative units.
Requires JWT token authentication in the Authorization header.
Only the session owner can void records. Session must be open. Supports idempotency - voiding the same record multiple times is safe.
User identifier (internal use, derived from JWT token)
- Mock serverhttps://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records/{recordId}/void
- Production serverhttps://api.hydrobit.ag/api/control/production/records/{recordId}/void
- IoT serverhttps://iot.hydrobit.ag/api/control/production/records/{recordId}/void
- MQTT over WebSocket endpointwss://iot.hydrobit.ag/api/control/production/records/{recordId}/void
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://docs.hydrobit.ag/_mock/spec/openapi/api/control/production/records/rec_1234567890abcdef/void \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"auth0Id": "user_123456789",
"reason": "Duplicate entry"
}'{ "status": "success", "data": { "payloadPreview": { … } } }