Skip to main content
A knowledge context, called an entry on this page, is one document or note that Lumos agents use when they answer access questions. A security policy written in prose, an onboarding runbook, and a note that explains why an app needs manager approval are each an entry. Unlike the rest of v1, this object isn’t a copy of something Lumos discovered in a connected app. You write it. What agents learn from it depends on its content and on the product_scopes you give it.
The Knowledge Context object

Attributes

List Knowledge Context returns a field that has no value as null. The other endpoints leave it out, so an entry without a file has no file_url. An entry needs either content or a file, but not both. Send content for prose, or attach a file and omit content. application_tags is read-only. The create and update bodies don’t take it.

Product scopes

product_scopes names the parts of Lumos that can read the entry. An entry scoped only to access-reviews doesn’t inform an AppStore request decision. product_scopes takes these values in the create and update bodies and in the list filter. Any other value, such as APPSTORE, returns 400. Use global for general policy, and a narrower scope for guidance that applies in only one context. To audit what a product can see, filter the list by product_scopes.

Writing entries

Unlike every other v1 object, an entry’s writes aren’t JSON. Both Create Knowledge Context and Update Knowledge Context take multipart/form-data, because either one can carry a file upload.
Add --form 'file=@runbook.pdf' to attach a file. Omit it for a text-only entry. title must be unique within your organization, so a create or update that reuses an existing title returns 409 with code set to knowledge.already_exists.
On update, tag and scope lists replace rather than append. Sending generic_tags with one value leaves the entry with exactly that one tag, discarding the rest. Read the entry, modify the list client-side, and send the full list back.
Other update rules:
  • A field you omit, or send empty, keeps its value.
  • To replace the attachment, send a new file.
  • To remove an attachment without replacing it, send clear_attachment=true. Omitting file alone leaves the existing file in place.
  • Sending file together with clear_attachment=true, or no fields at all, returns 400.

Deleting

Delete Knowledge Context removes the entry. It stops appearing in list results, agents stop using it, and Get Knowledge Context returns 404 with code set to knowledge.not_found. You can’t restore it through the API, so contact your Lumos representative if you deleted an entry you need.

Endpoints