Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC
2020 Police Brutality website screenshot

2020 Police Brutality

This repository accumulates and contextualizes evidence of police brutality during the 2020 George Floyd protests. The goal is to assist journalists, politicians, prosecutors, activists and concerned individuals who can use the evidence accumulated here for political campaigns, news reporting, public education and prosecution of criminal police officers.

agent aware

Limited machine-readable signal and partial portal coverage — documentation a human can read, but little a machine or agent can consume without scraping.

Kin Score

API Evangelist profiles 2020 Police Brutality the way a machine reads it — 27 machine-readable artifacts across 1 API, pulled from the provider's own public surface and indexed so a developer, an analyst, or an AI agent can evaluate it against every other provider on the network.

Every provider in the network is reduced to the same set of machine-readable artifacts — OpenAPI contracts, event specifications, GraphQL schemas, runnable collections, pricing and rate-limit signals, security posture, OAuth scopes, and the agent surfaces (MCP servers and skills) that let software drive the API on its own. We profile them because the interface is the part of a company you can actually inspect: it is a truer signal of what a provider does than any marketing page. From those artifacts we compute the Kin Score — 2020 Police Brutality scores 44.6/100 (thin), with a separate agent-readiness read of 39/100 (agent aware). The full breakdown is below, followed by every artifact we hold — each card links through to its machine-readable definition on apis.io.

Kin Score

This is the API Evangelist rating — a single, repeatable read computed from the artifacts on this page. Green fill is points earned; the red track is points possible, so every bar shows earned-versus-possible at a glance.

Kin Score Kin Score How this is scored →
scored 2026-07-27 · rubric v0.5
Composite quality — 44.6/100 · thin
Contract Quality 17.7 / 25
Developer Ergonomics 1.7 / 20
Commercial Clarity 7.9 / 20
Operational Transparency 4.8 / 13
Governance 10.4 / 12
Discoverability 8.0 / 10
Regulatory · Government & Public Sector 1.6 / 15
Agent readiness — 39/100 · agent aware
Machine-Readable Contract 18 / 18
Agentic Access Contract 15 / 15
MCP Server 0 / 12
Machine-Readable Auth 0 / 10
Idempotency 0 / 9
Stable Error Semantics 0 / 8
Request/Response Examples 0 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3

How we profile 2020 Police Brutality

Each block below is one kind of artifact we hold for 2020 Police Brutality. For each we say what it is and why it earns a place in the profile, then list every one we've indexed — capped at two rows, scroll within the panel for the rest.

APIs 1

Each API is captured as its own OpenAPI definition — every operation, parameter, and response. This is the single most useful machine-readable description of what an API does, and it's what lets us score, lint, mock, and generate against it without asking the provider for anything.

Individual APIs this provider publishes, each with its own machine-readable definition.

2020 Police Brutality Incidents API

Police brutality incident records from the 2020 George Floyd protests

Open Collections 1

Open, tool-agnostic collections carry the same runnable value as Postman without locking you to one client — the portable, forkable form of the same exercise.

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

2020 Police Brutality API

OPEN COLLECTION

Pricing Plans 1

Pricing is part of the interface. Machine-readable plans tell you what a tier costs and includes before you commit — one of the six things the Kin Score reads for commercial clarity.

Published pricing tiers and plan structures.

Rate Limits 1

Rate limits are the difference between a demo that works and a production integration that doesn't fall over. Publishing them is an operational-transparency signal — and a hard requirement for any agent that plans its own throughput.

Documented rate limits and quota policies.

FinOps 1

Cost, billing, and metering signals let a buyer model the financial operations of an API before it's live. We profile them for the same reason we profile pricing: the money is part of the contract.

Cost, billing, and metering signals for API financial operations.

Features 6

The notable capabilities this provider advertises, captured as structured features so they can be searched and compared instead of read one landing page at a time.

Notable capabilities this provider offers.

Incident Documentation

Documented evidence of police brutality with descriptions, dates, locations, and source links

Location Data

GPS geolocation coordinates for each incident, enabling geographic analysis

Tag Classification

Categorical tags classifying incident types (foam-bullet, tear-gas, pepper-spray, etc.)

Multiple Data Formats

Data available in JSON (v1 and v2) and CSV formats for different use cases

Source Verification

Each incident includes links to source documentation for verification

Open Data

MIT licensed open dataset available for public use

Semantic Vocabularies 1

JSON-LD contexts give the data shared meaning across APIs. We profile them because semantics are what let a machine reconcile 'customer' here with 'customer' somewhere else.

JSON-LD contexts and semantic vocabularies used across these APIs.

2020 Police Brutality Context

5 classes · 11 properties

JSON-LD

Spectral Rules 2

Governance rulesets we run against this provider's specs — the automated checks behind parts of the score. Profiling them makes the quality bar explicit and re-runnable, not a matter of opinion.

2020 Police Brutality API Rules

5 rules · 4 warnings

SPECTRAL

2020 Police Brutality API Rules

23 rules · 11 errors · 10 warnings

SPECTRAL

JSON Schema 2

Standalone JSON Schema definitions describe the data models behind the API. We profile them so the shapes are validatable on their own — useful long after a single request is forgotten.

Standalone JSON Schema definitions for this provider's data models.

IncidentCollection

4 properties

JSON SCHEMA

Incident

11 properties

JSON SCHEMA

JSON Structure 2

JSON Structure captures the data shapes in a form built for tooling — a complement to JSON Schema that keeps the model machine-legible.

JSON Structure definitions describing this provider's data shapes.

Examples 2

Real request and response payloads are what turn a spec from abstract into obvious — and they're one of the twelve things an agent needs to call an API correctly on the first try.

Example request and response payloads for these APIs.

Agentic Access 1

An x-agentic-access contract marks which operations are safe for an agent to run on its own and which need a human in the loop. It is the difference between an API an agent can use and one it can use safely.

Recommended x-agentic-access execution contracts for AI agents.

2020 Police Brutality Agentic Access

3 operations

3 operations · 0 acting

AGENTIC

Use Cases 6

What developers actually build with this provider — captured so the catalogue answers 'what is this for', not just 'what does this expose'.

What developers build with this provider.

Journalism and Reporting

Investigative journalists use incident data for news reporting on police conduct

Legal Proceedings

Prosecutors and civil rights attorneys use evidence for criminal and civil cases

Academic Research

Researchers study patterns in police use of force during protests

Policy Advocacy

Activists and policymakers use data to support police reform campaigns

Public Education

Organizations use the data to educate the public about police brutality

Geographic Analysis

Researchers map incidents by location to identify geographic patterns

Resources

Every other property we hold for 2020 Police Brutality — documentation, portals, status pages, policies, and corporate surface — grouped by the job it does, following the integrator's arc from getting started to running in production.

Documentation 1

Reference material describing how the API behaves

Agent Surfaces 1

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 2

Pagination, idempotency, versioning, errors, and events

Build 2

SDKs, sample code, and the tooling you integrate with

← All providers · Data indexed from github.com/api-evangelist/2020-police-brutality · machine-readable index on apis.io