Sports intelligence
Sports Knowledge API
The API architecture for the platform — a REST/JSON + JSON-LD resource model with an OpenAPI 3.1.0 specification across 11 endpoints, generated entirely from the knowledge graph.
OpenAPI 3.1.011 endpointsSpecification only
Specification only — no live endpoint
This is the API architecture, generated deterministically from the platform’s registries. There is no live server and no database. The machine-readable specification is served as a static artifact at /api/openapi.json, and the schema registry at /api/schema.
Endpoints
Entities
| GET | /v1/entities | List all entity types and their counts |
| GET | /v1/entities/{type} | List entities of a type |
| GET | /v1/entities/{type}/{slug} | Get one entity as a resource |
Search
| GET | /v1/search | Search across the knowledge graph |
Compare
| GET | /v1/compare/{slug} | Get a head-to-head comparison |
Calculators
| GET | /v1/calculators | List calculators |
| GET | /v1/calculators/{slug} | Get a calculator specification (inputs + formula) |
Learning
| GET | /v1/learning/courses | List interactive courses |
| GET | /v1/learning/courses/{sport} | Get a course with its modules |
Atlas
| GET | /v1/atlas | List knowledge-atlas dimensions |
Recommendations
| GET | /v1/recommendations/{goal} | Get explainable recommendations for a goal |
Schemas
RelationshipPaginationResourceResourceListTypeListSearchResultComparisonCalculatorCalculatorListCourseCourseListAtlasListRecommendationListError
Conventions
- • Versioning: path-based,
/v1. - • Pagination:
page+pageSize, with apaginationenvelope. - • Filtering: by
typeand queryq. - • Localization:
langparameter (currentlyenonly — no fabricated translations). - • JSON-LD: every resource carries Tier-A-safe Schema.org JSON-LD.
Example resource
A real entity serialized to the API resource shape (GET /v1/entities/sport/tennis).
{
"id": "sport/tennis",
"type": "sport",
"slug": "tennis",
"name": "Tennis",
"description": "A singles or doubles racquet sport that blends agility, strategy and stamina on court.",
"url": "https://socialsporthub.com/sports/tennis",
"apiUrl": "/v1/entities/sport/tennis",
"keywords": [
"tennis for beginners",
"how to start tennis",
"tennis health benefits",
"play tennis"
],
"relationships": [
{
"type": "curriculum",
"id": "curriculum/tennis",
"name": "Learn Tennis",
"url": "https://socialsporthub.com/learn/tennis"
},
{
"type": "curriculum",
"id": "curriculum/table-tennis",
"name": "Learn Table Tennis",
"url": "https://socialsporthub.com/learn/table-tennis"
},
{
"type": "curriculum",
"id": "curriculum/padel",
"name": "Learn Padel",
"url": "https://socialsporthub.com/learn/padel"
}
],
"jsonLd": {
"@context": "https://schema.org",
"@type": "WebPage",
"name": "Tennis",
"description": "A singles or doubles racquet sport that blends agility, strategy and stamina on court.",
"url": "https://socialsporthub.com/sports/tennis",
"about": {
"@type": "Thing",
"name": "Tennis"
}
},
"meta": {
"version": "1.0.0",
"generatedFrom": "knowledge-graph-registry"
}
}