tunova-ai · JSON-LD Context

Tunova Ai Context

JSON-LD context defining the semantic vocabulary for Tunova Ai from tunova-ai.

7 Classes 39 Properties 4 Namespaces
View Context View on GitHub

Namespaces

schema: https://schema.org/
xsd: http://www.w3.org/2001/XMLSchema#
dcterms: http://purl.org/dc/terms/
tunova: https://tunova.ai/schema#

Classes

Balance GenerateRequest CustomGenerateRequest JobAccepted Job Clip Error

Properties

Property Type Container
client_id string
balance integer
token_balance integer
reserved integer
available integer
total_liability integer
daily_token_cap integer
status string
song_cost integer
lyrics_cost integer
rate_limit_rpm integer
concurrency_limit integer
engine_inflight integer
prompt string
make_instrumental boolean
model string
callback_url reference
streaming_callback boolean
tags string
title string
job_id string
status_url string
idempotent_replay boolean
phase string
clips list
preview_clips list
preview_at integer
lyrics
error string
created_at integer
updated_at integer
id string
audio_url reference
image_url reference
duration decimal
code string
detail string
request_id string
cost integer

JSON-LD Document

Raw ↑
{
  "@context": {
    "@vocab": "https://tunova.ai/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "tunova": "https://tunova.ai/schema#",
    "Balance": "tunova:Balance",
    "client_id": {
      "@id": "tunova:client_id",
      "@type": "xsd:string"
    },
    "balance": {
      "@id": "tunova:balance",
      "@type": "xsd:integer"
    },
    "token_balance": {
      "@id": "tunova:token_balance",
      "@type": "xsd:integer"
    },
    "reserved": {
      "@id": "tunova:reserved",
      "@type": "xsd:integer"
    },
    "available": {
      "@id": "tunova:available",
      "@type": "xsd:integer"
    },
    "total_liability": {
      "@id": "tunova:total_liability",
      "@type": "xsd:integer"
    },
    "daily_token_cap": {
      "@id": "tunova:daily_token_cap",
      "@type": "xsd:integer"
    },
    "status": {
      "@id": "tunova:status",
      "@type": "xsd:string"
    },
    "song_cost": {
      "@id": "tunova:song_cost",
      "@type": "xsd:integer"
    },
    "lyrics_cost": {
      "@id": "tunova:lyrics_cost",
      "@type": "xsd:integer"
    },
    "rate_limit_rpm": {
      "@id": "tunova:rate_limit_rpm",
      "@type": "xsd:integer"
    },
    "concurrency_limit": {
      "@id": "tunova:concurrency_limit",
      "@type": "xsd:integer"
    },
    "engine_inflight": {
      "@id": "tunova:engine_inflight",
      "@type": "xsd:integer"
    },
    "GenerateRequest": "tunova:GenerateRequest",
    "prompt": {
      "@id": "tunova:prompt",
      "@type": "xsd:string"
    },
    "make_instrumental": {
      "@id": "tunova:make_instrumental",
      "@type": "xsd:boolean"
    },
    "model": {
      "@id": "tunova:model",
      "@type": "xsd:string"
    },
    "callback_url": {
      "@id": "tunova:callback_url",
      "@type": "@id"
    },
    "streaming_callback": {
      "@id": "tunova:streaming_callback",
      "@type": "xsd:boolean"
    },
    "CustomGenerateRequest": "tunova:CustomGenerateRequest",
    "tags": {
      "@id": "tunova:tags",
      "@type": "xsd:string"
    },
    "title": {
      "@id": "tunova:title",
      "@type": "xsd:string"
    },
    "JobAccepted": "tunova:JobAccepted",
    "job_id": {
      "@id": "tunova:job_id",
      "@type": "xsd:string"
    },
    "status_url": {
      "@id": "tunova:status_url",
      "@type": "xsd:string"
    },
    "idempotent_replay": {
      "@id": "tunova:idempotent_replay",
      "@type": "xsd:boolean"
    },
    "Job": "tunova:Job",
    "phase": {
      "@id": "tunova:phase",
      "@type": "xsd:string"
    },
    "clips": {
      "@id": "tunova:clips",
      "@container": "@list"
    },
    "preview_clips": {
      "@id": "tunova:preview_clips",
      "@container": "@list"
    },
    "preview_at": {
      "@id": "tunova:preview_at",
      "@type": "xsd:integer"
    },
    "lyrics": {
      "@id": "tunova:lyrics"
    },
    "error": {
      "@id": "tunova:error",
      "@type": "xsd:string"
    },
    "created_at": {
      "@id": "tunova:created_at",
      "@type": "xsd:integer"
    },
    "updated_at": {
      "@id": "tunova:updated_at",
      "@type": "xsd:integer"
    },
    "Clip": "tunova:Clip",
    "id": {
      "@id": "tunova:id",
      "@type": "xsd:string"
    },
    "audio_url": {
      "@id": "tunova:audio_url",
      "@type": "@id"
    },
    "image_url": {
      "@id": "tunova:image_url",
      "@type": "@id"
    },
    "duration": {
      "@id": "tunova:duration",
      "@type": "xsd:decimal"
    },
    "Error": "tunova:Error",
    "code": {
      "@id": "tunova:code",
      "@type": "xsd:string"
    },
    "detail": {
      "@id": "tunova:detail",
      "@type": "xsd:string"
    },
    "request_id": {
      "@id": "tunova:request_id",
      "@type": "xsd:string"
    },
    "cost": {
      "@id": "tunova:cost",
      "@type": "xsd:integer"
    }
  },
  "@type": "schema:Dataset",
  "schema:name": "tunova-ai API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects tunova-ai's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-10-31) from openapi/tunova-ai-openapi.json.",
  "dcterms:created": "2026-10-31",
  "dcterms:source": [
    "openapi/tunova-ai-openapi.json"
  ]
}