Narrative Sports · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the Narrative Sports API

26 actions 26 updates documentation extends openapi/usenarrative-sports-openapi-original.json
Derived by API Evangelist Built from the contracts Narrative Sports publishes. Narrative Sports did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

operationIdtagsdescriptioncontactx-apievangelistx-apievangelist-notes

Targets 25 · first 16 shown; the file carries all of them

$.info
$.paths['/v1/health'].get
$.paths['/v1/tasks/create-task'].post
$.paths['/v1/tasks/list-tasks'].get
$.paths['/v1/tasks/{task_id}/info'].get
$.paths['/v1/tasks/{task_id}/status'].get
$.paths['/v1/tasks/{task_id}/kill'].post
$.paths['/v1/tasks/{task_id}/extend-life'].post
$.paths['/v1/tasks/warmup'].post
$.paths['/v1/tasks/assign-task'].post
$.paths['/v1/highlights'].get
$.paths['/v1/highlights/{highlight_id}'].get
$.paths['/v1/highlights/{highlight_id}/signed-url'].get
$.paths['/v1/highlights/batch-signed-urls'].post
$.paths['/v1/highlight-packages'].post
$.paths['/v1/highlight-packages'].get

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the Narrative Sports API
  version: 1.0.0
x-generated: '2026-07-21'
x-method: generated
extends: openapi/usenarrative-sports-openapi-original.json
actions:
- target: $.info
  update:
    description: AI-powered sports video analysis and highlight generation. Create
      a task to receive a per-task SRT ingest URL, stream live soccer or MMA video
      in real time, and retrieve AI-detected highlight clips, single-game recaps,
      and multi-game highlight packages with OTIO edit data.
    contact:
      name: Narrative Sports
      email: founders@narrative-sports.com
      url: https://docs.narrative-sports.com/
    x-apievangelist:
      provider: usenarrative
      docs: https://docs.narrative-sports.com/
      dashboard: https://app.narrative-sports.com/api-dashboard
      status: https://status.narrative-sports.com/
- target: $.info
  update:
    x-apievangelist-notes:
    - The upstream spec ships no operationIds or tags; suggested operationIds are
      added per operation below so tooling (SDK generators, MCP forges, Arazzo)
      can address operations stably.
    - Error responses use a FastAPI {"detail"} envelope rather than RFC 9457
      problem+json.
- target: $.paths['/v1/health'].get
  update: {operationId: health, tags: [Platform]}
- target: $.paths['/v1/tasks/create-task'].post
  update: {operationId: createTask, tags: [Tasks]}
- target: $.paths['/v1/tasks/list-tasks'].get
  update: {operationId: listTasks, tags: [Tasks]}
- target: $.paths['/v1/tasks/{task_id}/info'].get
  update: {operationId: getTaskInfo, tags: [Tasks]}
- target: $.paths['/v1/tasks/{task_id}/status'].get
  update: {operationId: getTaskStatus, tags: [Tasks]}
- target: $.paths['/v1/tasks/{task_id}/kill'].post
  update: {operationId: killTask, tags: [Tasks]}
- target: $.paths['/v1/tasks/{task_id}/extend-life'].post
  update: {operationId: extendTaskLife, tags: [Tasks]}
- target: $.paths['/v1/tasks/warmup'].post
  update: {operationId: warmupInstance, tags: [Tasks]}
- target: $.paths['/v1/tasks/assign-task'].post
  update: {operationId: assignTask, tags: [Tasks]}
- target: $.paths['/v1/highlights'].get
  update: {operationId: listHighlights, tags: [Highlights]}
- target: $.paths['/v1/highlights/{highlight_id}'].get
  update: {operationId: getHighlight, tags: [Highlights]}
- target: $.paths['/v1/highlights/{highlight_id}/signed-url'].get
  update: {operationId: getSignedUrl, tags: [Highlights]}
- target: $.paths['/v1/highlights/batch-signed-urls'].post
  update: {operationId: batchSignedUrls, tags: [Highlights]}
- target: $.paths['/v1/highlight-packages'].post
  update: {operationId: createHighlightPackage, tags: [Highlight Packages]}
- target: $.paths['/v1/highlight-packages'].get
  update: {operationId: listHighlightPackages, tags: [Highlight Packages]}
- target: $.paths['/v1/highlight-packages/batch'].get
  update: {operationId: batchHighlightPackages, tags: [Highlight Packages]}
- target: $.paths['/v1/highlight-packages/{package_id}'].get
  update: {operationId: getHighlightPackage, tags: [Highlight Packages]}
- target: $.paths['/v1/highlight-packages/{package_id}'].delete
  update: {operationId: deleteHighlightPackage, tags: [Highlight Packages]}
- target: $.paths['/v1/recaps'].post
  update: {operationId: createRecap, tags: [Recaps]}
- target: $.paths['/v1/recaps'].get
  update: {operationId: listRecaps, tags: [Recaps]}
- target: $.paths['/v1/recaps/batch'].get
  update: {operationId: batchRecaps, tags: [Recaps]}
- target: $.paths['/v1/recaps/{recap_id}'].get
  update: {operationId: getRecap, tags: [Recaps]}
- target: $.paths['/v1/recaps/{recap_id}'].delete
  update: {operationId: deleteRecap, tags: [Recaps]}
- target: $.paths['/v1/projects/{project_id}/highlight-options'].get
  update: {operationId: getProjectHighlightOptions, tags: [Projects]}

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/usenarrative-sports-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.