Access & visibility
Allow customers.RemoveBriefContext on your API key.
Acting member required. Send Brigg-Act-As with an approved member account ID. The key supplies permissions; the member selects whose data is used.
The selected member must be active and approved by the credential. This selects whose private data is used; the credential supplies permissions. Private ownership and project boundaries still apply.
Request fields
Send a JSON object with the following fields. Required fields must be included; omit optional fields you do not need.
targetobjectRequiredThe Company, Person or Meeting whose brief receives the context. Use its exact record type and top-level ID.
Nested fields
typestringRequiredExact type of the target record: core:Company, core:Person or core:Meeting.
At least 1 character. At most 60 characters.
idstringRequiredTop-level record ID from ListCompanies, ListPeople or ListMeetings matching target.type.
At least 1 character. At most 80 characters.
source_idstringRequiredsource_id previously returned by AddBriefContext for this same target. It is not the source file's ID or an array position.
At least 1 character. At most 80 characters.
Choose the record, then manage its briefing sources
Use a top-level record ID from List companies, List people or List meetings, paired with its matching target.type. An account ID cannot identify this target.
A new context item or a removal schedules regeneration when the brief is ready to run; the response confirms the context change, not a finished brief. A website first needs its content fetched. Generate brief can report scrape_pending or already_running instead of starting more work. Review the resulting brief and source-fetch state in Brigg: the public record model does not expose the brief body or a source-status listing.
Keep source_id together with target for removal. It identifies the attachment to this brief, not the original file or record. Adding the same URL, file or record again reuses its source_id; notes are distinct additions. Removing a source leaves the original file or record intact.
A file or referenced record must be readable by the target brief's audience, not merely by the caller. Adding a member-private file to a workspace-shared brief is refused. The target's existing private/workspace visibility stays in force.
Response
Returns 200 OK with a JSON body.
okbooleanRequiredThe source was removed from this brief and eligible regeneration was scheduled. The original file or record remains.
Errors & retries
Set BRIGG_REQUEST_ID once for each logical action. The samples send it as Idempotency-Key. Reuse the same value and body on retries, including after a timeout; a missing response does not prove the action failed.
For rate limits, follow the server’s retry guidance and back off. See HTTP errors and safe retries and limits.
| HTTP status | Code | What to do |
|---|---|---|
| 400 | invalid_json |
Send a JSON object with Content-Type: application/json. |
| 400 | invalid_input |
Check the request fields and types. Supply a stable Idempotency-Key containing 1–200 characters. |
| 401 | invalid_key |
The workspace API key is missing, invalid or revoked. |
| 403 | forbidden |
Check the key’s operation and resource grants. Supply Brigg-Act-As with a member authorized by the key’s delegation grant. The selected member must be active and approved by the credential. This selects whose private data is used; the credential supplies permissions. Private ownership and project boundaries still apply. |
| 404 | not_found |
The target or source attachment is unavailable. Use the saved source_id with its original target; removing the original file is a different action. |
| 429 | rate_limited |
Wait for Retry-After before retrying. Reuse the original Idempotency-Key. |
Next steps
JSON schemas
Use the complete schemas for validation or client generation.
Full request JSON schema
{
"type": "object",
"properties": {
"target": {
"type": "object",
"properties": {
"type": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"description": "Exact type of the target record: core:Company, core:Person or core:Meeting."
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 80,
"description": "Top-level record ID from ListCompanies, ListPeople or ListMeetings matching target.type."
}
},
"required": [
"type",
"id"
],
"additionalProperties": false,
"description": "The Company, Person or Meeting whose brief receives the context. Use its exact record type and top-level ID."
},
"source_id": {
"type": "string",
"minLength": 1,
"maxLength": 80,
"description": "source_id previously returned by AddBriefContext for this same target. It is not the source file's ID or an array position."
}
},
"required": [
"target",
"source_id"
],
"additionalProperties": false,
"examples": [
{
"target": {
"type": "core:Company",
"id": "e_company_northstar"
},
"source_id": "bci_note_northstar"
}
]
}Full response JSON schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean",
"description": "The source was removed from this brief and eligible regeneration was scheduled. The original file or record remains."
}
},
"required": [
"ok"
],
"additionalProperties": false,
"examples": [
{
"ok": true
}
]
}