Abuse reports
3 routes. Paths are relative to https://api.intersink.com/v1.
- GET/abuse/reasonsPublic: the reasons a report can give, for a reporting menu
- POST/abuse/reportsReport an account, profile, business, channel, message, media item or group ({ received, reference })
- GET/abuse/reports/mineMy reports: what I reported and whether it has been reviewed (never the decision)
Public: the reasons a report can give, for a reporting menu
GET/abuse/reasons
Public: no sign-in needed.
Response
200. The payload in data is not described in the spec yet.
Report an account, profile, business, channel, message, media item or group ({ received, reference })
POST/abuse/reports
Needs a signed-in user (Bearer token or access_token cookie).
A message needs target.sender_account_id; a media item is filed on its owner (account, else channel). A group is named by your app's group id (never looked up) and may name up to 10 members in target.member_account_ids, each filed as its own report and counted against the limits (the answer then adds references); with no member named it is filed on your channel. Evidence: up to 10 references (ids, https URLs, SHA-256 hashes, excerpts you choose to share). 20 reports per hour and 100 per day per person; reporting the same target again adds your new evidence to your first report.
Request body application/json
| Field | Type | Description |
|---|---|---|
| targetrequired | object | |
| target.typerequired | string | One of: "account", "profile", "business", "channel", "message", "media", "group". |
| target.idrequired | string | account/profile/business/channel: its id (uuid). message: your app's message id. media: the file, media file, media asset or e2ee blob id. group: your app's group id (1 to 128 characters, no spaces; never looked up) |
| target.sender_account_id | string | message only (required): the account that sent it Checked by the server against /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i. |
| target.conversation_id | string | message only: your app's conversation id |
| target.kind | string | media only: which store the id is from; guessed when left out (number: file, uuid: media file then media asset, else e2ee blob) One of: "file", "media_file", "media_asset", "e2ee_blob". |
| target.member_account_ids | string[] | group only: the members you are reporting (account ids of your channel, never your own). Each one is filed as its own report. Left out: the report is about the group as a whole and goes to the channel's case At most 10 items. |
| reasonrequired | string | One of: "spam", "scam", "fraud", "harassment", "bullying", "hate", "threat", "violence", "sexual", "nudity", "self_harm", "misinformation", "child_safety", "terrorism", "illegal", "impersonation", "copyright", "privacy", "other". |
| details | string | What happened, in your words At least 0 characters, at most 2000 characters. |
| evidence | object[] | At most 10 items. |
| evidence[].typerequired | string | One of: "message", "media", "post", "comment", "url", "text", "other". |
| evidence[].ref | string | An id or an https URL (never fetched). Anything that reads as a link must be https (400 BAD_EVIDENCE_REF); for type url it is required to be one |
| evidence[].sha256 | string | SHA-256 of the item, hex Checked by the server against /^[0-9a-f]{64}$/i. |
| evidence[].excerpt | string | Text you choose to share with the moderators (for an end-to-end encrypted message, the part you saw) At most 1000 characters. |
| evidence[].at | string | When it was sent or seen (ISO 8601) |
Response
200. The payload in data is of type object.
My reports: what I reported and whether it has been reviewed (never the decision)
GET/abuse/reports/mine
Needs a signed-in user (Bearer token or access_token cookie).
Response
200. The payload in data is not described in the spec yet.