Programmatic access to Apache Kafka and Flink improvement proposals
The OSSIP JSON API provides structured, machine-readable access to Apache Kafka Improvement Proposals (KIPs) and Flink Improvement Proposals (FLIPs). All endpoints are:
/api/v1/ for stable integrationhttps://ossip.dev/Use the JSON API for status dashboards, automated monitoring, cross-proposal analysis, and integration with AI agents via the OSSIP skill.
All endpoints return JSON. Base URL: https://ossip.dev/api/v1/
| Endpoint | Description |
|---|---|
index.json |
API entry point listing available projects, proposal counts, and last updated timestamp |
kafka/kips.json |
Kafka KIP summary list (~1,284 proposals with compact metadata, ~230KB) |
kafka/kips/{id}.json |
Individual KIP detail with full vote history (voter names and timestamps) |
flink/flips.json |
Flink FLIP summary list (~570 proposals with compact metadata, ~100KB) |
flink/flips/{id}.json |
Individual FLIP detail with full vote history and Flink-specific metadata (release version, JIRA links) |
schemas/ |
JSON Schema files for all response types (ApiIndex.schema.json, KipSummary.schema.json, etc.) |
Example: Fetch all Kafka KIPs
Example: Fetch KIP-123 detail
The state field represents the current status of a proposal:
"accepted" — Proposal has been approved but not yet implemented"under discussion" — Proposal is being discussed by the community"not accepted" — Proposal was rejected"completed" — Proposal has been implemented and released"in progress" — Proposal is being implemented"unknown" — State could not be determinedThe activity_status field indicates discussion recency for proposals in "under discussion" state:
"blue" — New proposal, created in the last 4 weeks"green" — Active discussion, mentioned in the last 4 weeks"yellow" — Slow discussion, mentioned in the last 12 weeks"red" — Stale discussion, mentioned in the last year"black" — No discussion, never mentioned or last mentioned over a year agonull — Not applicable (proposal is not in "under discussion" state)Note: Activity status is currently only available for Kafka KIPs.
created_on): YYYY-MM-DD formatlast_modified_on, vote timestamps): ISO 8601 with seconds and UTC timezone (YYYY-MM-DDTHH:MM:SSZ)Fields with unavailable or non-applicable data are set to null. Never empty strings or sentinel values like "unknown" or "not set".
The OSSIP skill is a pre-built Agent Skill that allows AI agents to query this JSON API programmatically — for status lookups, activity queries, vote analysis, and more. See the dedicated Agent Skill page for details and installation instructions.
JSON Schema definitions are available for all response types at https://ossip.dev/api/v1/schemas/. Use these to validate responses or generate client code.
Available schemas:
ApiIndex.schema.json — API entry point structureProjectSummary.schema.json — Project summary list (used for both Kafka KIPs and Flink FLIPs)KipDetail.schema.json — Individual Kafka KIP detailFlipDetail.schema.json — Individual Flink FLIP detail