Home › Sources › sfda_case_resolutions
San Francisco District Attorney Case Resolutions
Source ID sfda_case_resolutions. Use source caveats and join keys before treating context records as court facts.
Source overview
| Source ID | sfda_case_resolutions |
| Name | San Francisco District Attorney Case Resolutions |
| Owner | San Francisco District Attorney / DataSF |
| Layer | disposition_enrichment |
| Coverage | Criminal cases prosecuted by SFDA that reached final resolution/disposition; the full paged Socrata pull generated 2026-06-05 captured 81,162 rows with disposition_date 2011-01-04 through 2026-05-29, including 81,162 distinct court_number values and 76,300 distinct incident_number values. The local sample index and full public RDS/Postgres corpus load all resolution rows into prosecution_events and DA-derived case_outcomes with one upstream source_record per row; 16,062 full-corpus rows exact-join to court cases by normalized court_number/case_number. |
| Formats | JSON API, CSV, OData, Parquet via derived mirrors |
| Join keys | court_number, incident_number, filing_date, disposition_date, disposition_code |
| Caveats | Disposition semantics should be displayed as SFDA-sourced outcomes and reconciled against court docket evidence., Disposition descriptions are DA labels and need normalized outcome taxonomy plus source-rank conflict handling., DA booked/filed charge tokens are source-labeled prosecution context and may not match court-owned charge rows one-for-one. |
Linked cases
16,062 matching cases for this source filter.
Source artifacts
| Artifact ID | Source ID | Artifact Type | Path | URL | Captured At |
|---|---|---|---|---|---|
| - | sfda_case_resolutions | socrata_dataset | - | - | - |
Full source record
| Access Mode | socrata_api |
| Cadence | weekly target refresh |
| Coverage | Criminal cases prosecuted by SFDA that reached final resolution/disposition; the full paged Socrata pull generated 2026-06-05 captured 81,162 rows with disposition_date 2011-01-04 through 2026-05-29, including 81,162 distinct court_number values and 76,300 distinct incident_number values. The local sample index and full public RDS/Postgres corpus load all resolution rows into prosecution_events and DA-derived case_outcomes with one upstream source_record per row; 16,062 full-corpus rows exact-join to court cases by normalized court_number/case_number. |
| Government Level | local_prosecution |
| ID | sfda_case_resolutions |
| Layer | disposition_enrichment |
| Name | San Francisco District Attorney Case Resolutions |
| Owner | San Francisco District Attorney / DataSF |
| Profile Status | promoted_full_public_da_prosecution_extract |
| Canonical Records | case_outcome, prosecution_event, court_charge, source_record |
| Caveats | Disposition semantics should be displayed as SFDA-sourced outcomes and reconciled against court docket evidence., Disposition descriptions are DA labels and need normalized outcome taxonomy plus source-rank conflict handling., DA booked/filed charge tokens are source-labeled prosecution context and may not match court-owned charge rows one-for-one. |
| Evidence | artifacts/source-discovery/datasf-da-prosecution-context.profile.json, artifacts/source-discovery/datasf-da-case-resolutions-ynfy-z5kt.view.json, artifacts/source-discovery/datasf-da-case-resolutions-ynfy-z5kt.sample.json, artifacts/source-discovery/datasf-da-case-resolutions-ynfy-z5kt.profile-query.json, artifacts/source-discovery/datasf-da-case-resolutions-ynfy-z5kt.disposition-counts.json, artifacts/source-discovery/datasf-da-case-resolutions-ynfy-z5kt.linked-rows.json, data/enrichment_raw/da_case_resolutions.json, data/da_prosecution_raw/da_case_resolutions.json, data/da_prosecution_raw/manifest.json, scripts/sync_datasf_da_prosecution.py, scripts/profile_datasf_da_prosecution_context.py |
| Formats | JSON API, CSV, OData, Parquet via derived mirrors |
| Join Keys | court_number, incident_number, filing_date, disposition_date, disposition_code |
| Known Endpoints | Socrata /resource/ynfy-z5kt.json |
| Rate Limit Notes | Use checkpointed Socrata paging with an app token for full sync; checkpoint by data_loaded_at plus court_number and incident_number., Normalize SFSC case_number and DA court_number for exact case joins; preserve raw DA labels beside normalized outcome categories. |
| Source Urls | https://data.sfgov.org/Public-Safety/District-Attorney-Case-Resolutions/ynfy-z5kt |
Get this page with API
Rendered from the bluedoor SF Superior Court API. Reproduce it:
GET https://api.bluedoor.sh/sf-superior-court/v1/sources/sfda_case_resolutionsJSONGET https://api.bluedoor.sh/sf-superior-court/v1/case-search?source_id=sfda_case_resolutions&division=criminal&limit=25&include_facets=trueJSONGET https://api.bluedoor.sh/sf-superior-court/v1/source-artifactsJSON