Overview
PUT/project/work-items/{id}/fieldsproject

Set / 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();