SG Ground Truth

PUT /entity/<type>/<id>

put_entity_type_id

Updates and returns the whole record, 77 attribute keys for a Shot. A key left out of the body is unchanged rather than cleared, and an empty body is a 200 no-op.

API

Params

part value
body only the keys to change
?fields accepted and ignored

Sample requests

ID = 7650
r = c.put(f"/entity/shots/{ID}", json={"description": "written by probe 041"})
print(r.status_code, len(r.json()["data"]["attributes"]))
# 200 77, the whole record, not the change

A second write that names only code:

r = c.put(f"/entity/shots/{ID}", json={"code": "sh010_renamed"})
r.json()["data"]["attributes"]["description"]
# 'written by probe 041', untouched, not cleared

An id that is not there:

{"errors": [{"status": 404, "code": 104, "title": "Not Found",
             "detail": "Entity of type [Shot] with id=999999999 does not exist."}]}

Response codes

status when
200 updated, or nothing sent
404 Entity of type [Shot] with id=999999999 does not exist., code 104

Edge cases

you send result
{"description": "x"} set
a body omitting description unchanged, not cleared
{} 200, nothing happens
null for a clearable field cleared
  • There is no PATCH. PUT here is already a partial update, which is the opposite of what the verb usually means: it does not replace the record with the body.
  • Clearing is per data type, not universal. "" on a text field stores null; null on a color field is refused outright; a bare list on a multi_entity replaces every link.

Every entry on this site is the output of a probe in probes/. The corpus is generated by running those probes against a live Flow Production Tracking site, not written from memory.

Not affiliated with or endorsed by Autodesk. Flow Production Tracking is their product; this is an independent record of how its REST API answers.