Overview
PUT
/project/work-items/{id}/fieldsprojectSet / clear a batch of field values (+ a work_item.fields_updated activity)
Replace a record in fields by id.
Auth: bearerAuth — calls run as the authenticated user.
Parameters
- idpathstring
Request body
application/json · optional
- valuesobject[]
a batch of set/clear operations, applied in payload order; ALL entries are validated before any write, so a bad entry fails the whole batch. An empty array is a legal no-op.
Example
{
"values": [
{
"fieldId": "string",
"value": {}
}
]
}Responses
200
Field values (the reconciled form)
- fieldIdstring
- keystring
- labelstring
- type"text" | "number" | "date" | …
- valueoptionalany?
the field's stored value for this item (type matches the field's type); null when unset
Example
[
{
"fieldId": "string",
"key": "string",
"label": "string",
"type": "text",
"value": {}
}
]400
Error
- erroroptionalobject
Example
{
"error": {
"message": "string",
"code": "string"
}
}401
Error
- erroroptionalobject
Example
{
"error": {
"message": "string",
"code": "string"
}
}404
Error
- erroroptionalobject
Example
{
"error": {
"message": "string",
"code": "string"
}
}Code examples
cURL
curl -X PUT "https://api.agenticdeveloperhub.com/project/work-items/{id}/fields" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"values": [
{
"fieldId": "string",
"value": {}
}
]
}'JavaScript
const res = await fetch("https://api.agenticdeveloperhub.com/project/work-items/{id}/fields", {
method: "PUT",
headers: {
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
body: "{\n \"values\": [\n {\n \"fieldId\": \"string\",\n \"value\": {}\n }\n ]\n}",
});
const data = await res.json();