Grouped by symptom, never by module, because the person with the problem does not know which module has it. One hundred questions across ten pages, each answered with the causes in the order they usually turn out to be true.
The write used revisions, which builds a whole new revision from what the request sends: every layout area left out is empty in it. To change one area and keep the rest, use patchRevision, which copies a revision and changes only the keys you send, and name the area with areaContent(name). Send originRevision with the live revision's id: without it the copy is taken from the newest revision, which may not be the live one.
A top-level areaContent(name), outside any revision object, is no help either: it answers success and changes nothing.
HTTPA real answer on this documentation site's sandbox page
PUT /cdna-api/pages/page/1885?properties={id,activeRevision{id}}
Content-Type: application/json
{
"patchRevision": {
"originRevision": 3482,
"activeRevision": true,
"areaContent(navSection)": "devdocs"
}
}
# 200 {"id": 1885, "activeRevision": {"id": 3483}}: navSection changed, the five sections kept