# California Attorney General / California Department of Justice — OpenJustice > The California Attorney General is the state's chief law officer and heads the California > Department of Justice (DOJ). The DOJ Criminal Justice Statistics Center runs OpenJustice, the > state's criminal-justice open-data initiative: 26 datasets (arrests, crimes and clearances, > homicide, hate crime, use of force, RIPA stop data, deaths in custody and more) plus the > annual "Crime in California" family of publications and a set of data stories. > GENERATED BY API EVANGELIST, NOT PUBLISHED BY THE DOJ. https://oag.ca.gov/llms.txt returns > HTTP 404 and https://openjustice.doj.ca.gov/llms.txt returns the site's HTML shell (the SPA > answers 200 for every path). This file is written from live probes of the DOJ's own surfaces > on 2026-09-17 so that an agent has something correct to read. Everything below was fetched > and verified. ## What is machine-readable The DOJ has no developer portal, no API documentation, no SDK and no API key. The OpenJustice site (https://openjustice.doj.ca.gov) is a Vue single-page app whose bundle sets its axios base URL to https://data-openjustice.doj.ca.gov/ — a Drupal 9 host that serves a live, anonymous, standards-conformant JSON:API 1.0: - [JSON:API entry point](https://data-openjustice.doj.ca.gov/jsonapi): 70 resource types advertised; 38 return content anonymously. No key, no account, no OAuth. - [Datasets](https://data-openjustice.doj.ca.gov/jsonapi/node/dataset?include=field_source,field_data_type): the 26 datasets with their 148 CSV/XLSX/ZIP/PDF distributions side-loaded. File `uri.url` values are site-relative; prefix `https://data-openjustice.doj.ca.gov` and GET them directly. - [Publications](https://data-openjustice.doj.ca.gov/jsonapi/node/publication?include=field_publication_reports): Crime in California, Homicide in California, Hate Crime in California, Juvenile Justice in California, Use of Force Incident Reporting, Values Act (SB 54) annual report — each with per-year report PDFs. - [Data stories](https://data-openjustice.doj.ca.gov/jsonapi/node/data_story): 127 narrative stories built from 226 chart paragraphs, each drawn from a CSV file. - [Press-release RSS](https://oag.ca.gov/rss.xml): RSS 2.0 on oag.ca.gov. ## How to call it - Reads are anonymous. Send `Accept: application/vnd.api+json` (not required, but correct). - Pagination: `page[limit]` (max 50, silently clamped) and `page[offset]`; follow `links.next`. No total count is exposed. - Filtering: `filter[title][operator]=CONTAINS&filter[title][value]=Arrest`. Unknown field → 400. - Includes and sparse fieldsets work as JSON:API specifies: `?include=field_source&fields[file--file]=uri,filesize,filemime,filename`. - Individual routes take the UUID `id`, not `drupal_internal__nid`. - `node/dataset?page[limit]=1` returns an EMPTY page with `meta.omitted` (the lowest-id node is unpublished). Request the collection without that limit to get all 26. - Errors are JSON:API `errors[]` documents; `status` is a string. ## Writes — be careful Unlike most government Drupal sites this JSON:API is not read-only. Anonymous POST is granted on exactly three routes the site footer uses — `/jsonapi/node/signup`, `/jsonapi/node/suggestion`, `/jsonapi/node/bug` — and they create records DOJ staff read. They are not idempotent and cannot be reversed (DELETE returns 401; submissions are not readable back). Do not call them autonomously. Every other write returns 401. ## What is NOT here - The data rows themselves. The API serves dataset metadata and file pointers; the data is in the files under https://data-openjustice.doj.ca.gov/sites/default/files/. - Any rate limit, version scheme, deprecation policy, status page, changelog or licence text. - The California Data Broker Registry: the AG's own page (https://oag.ca.gov/data-broker/ca-registry) says the California Privacy Protection Agency now maintains it. ## API Evangelist artifacts for this provider - [OpenAPI (probe-derived)](openapi/california-attorney-general-openjustice-jsonapi-openapi.yml) - [JSON:API index (verbatim)](discovery/california-attorney-general-openjustice-jsonapi-index.json) - [Datasets catalog](datasets/california-attorney-general-datasets.yml) - [Examples (verbatim responses)](examples/_index.yml) - [Conventions](conventions/california-attorney-general-conventions.yml) - [Errors](errors/california-attorney-general-problem-types.yml) - [Authentication](authentication/california-attorney-general-authentication.yml) - [Agent skills](skills/_index.yml) ## Contact - Data requests beyond the portal: datarequests@doj.ca.gov — https://oag.ca.gov/research-services/request-process - Terms: https://oag.ca.gov/conditions · Privacy: https://oag.ca.gov/privacy-policy