Upsert registry notes
Up to 200 notes and operating-reality findings on an organization or its components.
POST
/api/v1/admin/registry/notesAdminAuthentication
Authorization: Bearer sa_… from a System Atlas admin. Any other key gets 403. Counts against the upload rate limit.
Parameters
Body
- organizationstringrequired
The organization's domain or website, as given to registry_upsert_organization
min 3 charsmax 300 chars - notesobject[]requiredmin 1 itemmax 200 items
- notes[].componentstringoptional
Component id, clientId or label; omit for a company-level note
min 1 charmax 200 chars - notes[].bodystringrequiredmin 1 charmax 4000 chars
- notes[].kindenumoptionaldefault "comment"
comment, or the operating reality it records
commentworkaroundinformal_channelbottleneckdependencytacit_rulemanual_handoff - notes[].sourceobjectoptional
- notes[].source.urlstringrequired
Public web address the finding rests on
min 1 charmax 500 chars - notes[].source.kindenumoptionaldefault "website"websitecareersjob_postpressreviewfilingregistry
- notes[].source.titlestringoptionalmax 200 chars
Request
curl -X POST "https://systematlas.org/api/v1/admin/registry/notes" \
-H "Authorization: Bearer sa_…" \
-H "content-type: application/json" \
-d '{"organization":"acmebuilders.example","notes":[{"component":"estimating","kind":"manual_handoff","body":"Estimates are re-keyed into the accounting system.","source":{"url":"https://acmebuilders.example/careers/estimator","kind":"job_post"}}]}'Response
200 with the result in data (abbreviated here). Errors are listed in Errors and limits.
Response
{
"data": {
"organization": {
"domain": "acmebuilders.example"
},
"results": [
{
"component": "estimating",
"noteId": "9c2d…",
"created": true
}
]
}
}Over MCP
The same call as an MCP tool: registry_upsert_notes.