Skip to content
Core API
Esc
↑↓navigate↵open⌘Jpreview
On this page

Abuse reports

Abuse reports: available fields, filters, associations, and API operations.

Operations

Event-level resource. Every operation requires an enabled Core API scope for this resource and access to the URL context.

GETList records

/api/core/organizations/123/events/456/abuse-reports

Permission: Read access. Readable fields, query filters and related objects must be selected in the scope.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request GET \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/abuse-reports' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}"

Response: 200 OK. A JSON:API data array and pagination metadata. Default page size 30; maximum 100.

View response structure
{
  "data": [
    {
      "id": "1201",
      "type": "abuse-report"
    }
  ],
  "meta": {
    "total_count": 1,
    "total_pages": 1,
    "current_page": 1
  }
}

Illustrative, with no additional response fields selected.

Errors: 400 for invalid parameter shapes; 403 for a missing/expired token or disallowed operation; 404 when the URL context, record or a referenced record is inaccessible; 429 for rate limits. Troubleshooting and retry guidance.

GETGet a record

/api/core/organizations/123/events/456/abuse-reports/1201

Permission: Read access. Readable fields, query filters and related objects must be selected in the scope.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request GET \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/abuse-reports/1201' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}"

Response: 200 OK. A JSON:API data object; fields depend on the token scope.

View response structure
{
  "data": {
    "id": "1201",
    "type": "abuse-report"
  }
}

Illustrative, with no additional response fields selected.

Errors: 400 for invalid parameter shapes; 403 for a missing/expired token or disallowed operation; 404 when the URL context, record or a referenced record is inaccessible; 429 for rate limits. Troubleshooting and retry guidance.

POSTCreate a record

/api/core/organizations/123/events/456/abuse-reports

Permission: Write access with the create action. Every request key must map to an allowed writable field; unconfigured inputs are ignored.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request POST \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/abuse-reports' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "reported_registrant_id": 1201,
  "reporting_registrant_id": 1202,
  "reason": "Unwanted contact"
}'

Response: 201 Created. Save data.id for later requests. Attributes come from Write-response fields.

View response structure
{
  "data": {
    "id": "1201",
    "type": "abuse-report"
  }
}

Illustrative, with no additional response fields selected.

Errors: 400 for invalid parameter shapes; 403 for a missing/expired token or disallowed operation; 404 when the URL context, record or a referenced record is inaccessible; 422 for validation or business rules; 429 for rate limits. Troubleshooting and retry guidance.

PATCHUpdate a record

/api/core/organizations/123/events/456/abuse-reports/7001

Permission: Write access with the update action. Every request key must map to an allowed writable field; unconfigured inputs are ignored.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request PATCH \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/abuse-reports/7001' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "status": "solved"
}'

Response: 200 OK. Attributes come from Write-response fields; these can differ from readable fields.

View response structure
{
  "data": {
    "id": "1201",
    "type": "abuse-report"
  }
}

Illustrative, with no additional response fields selected.

Errors: 400 for invalid parameter shapes; 403 for a missing/expired token or disallowed operation; 404 when the URL context, record or a referenced record is inaccessible; 422 for validation or business rules; 429 for rate limits. Troubleshooting and retry guidance.

PATCH changes supplied fields. Collection inputs can replace existing values; read the input notes before sending arrays.

Path: events/{event_id}/abuse-reports
Methods: GET collection/record, POST, PATCH. There is no DELETE operation.

Fields, filters and associations

Browse 9 response fields

The scope chooses these response fields. id is always returned. Configuration names and response names can differ.

event-id
Scope field: event_id
first-name
Scope field: first_name
last-name
Scope field: last_name
email
Scope field: email
created-at
Scope field: created_at
updated-at
Scope field: updated_at
report-count
Scope field: report_count
latest-report-at
Scope field: latest_report_at
reported-registrant-id
Scope field: reported_registrant_id
  • Filters: reported_registrant_id, reporting_registrant_id, status, created_from, created_to.
  • Sorts: latest_instance, report_count.
  • Association: request include=reports; the response relationship is reports with reporting-registrant-id, first-name, last-name, email, status, reason, created-at, and updated-at.
GET .../abuse-reports?status=open&sort=latest_instance&include=reports

POST requires reported_registrant_id and reporting_registrant_id; reason is optional at the wrapper level:

{
  "reported_registrant_id": 1201,
  "reporting_registrant_id": 1202,
  "reason": "Unwanted contact"
}

Both registrants must belong to the URL event and have Brella users. Repeated reporting of the same user updates the existing parent report rather than creating an unrelated duplicate.

PATCH supports status:

{ "status": "solved" }

Only archived and solved are accepted update statuses; the update applies to all instances represented by the parent report.

Last updated on August 21, 2026