{"openapi":"3.1.0","info":{"title":"Music Generation","version":"0.1.0"},"paths":{"/":{"get":{"summary":"Root","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Root  Get"}}}}}}},"/health":{"get":{"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Health Health Get"}}}}}}},"/about":{"get":{"summary":"About","operationId":"about_about_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response About About Get"}}}}}}},"/.well-known/x402.json":{"get":{"summary":"X402 Manifest","description":"Standard x402 service discovery manifest.","operationId":"x402_manifest__well_known_x402_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response X402 Manifest  Well Known X402 Json Get"}}}}}}},"/llms.txt":{"get":{"summary":"Llms Txt","description":"AI agent discovery — describes pricing and usage.","operationId":"llms_txt_llms_txt_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/music/generate":{"post":{"summary":"Generate","description":"Generate an instrumental track. x402 paywalled at $1.00.\n\nAccepts payment, then:\n1. DeepSeek structures the prompt\n2. Tries Pixazo Tracks API (primary)\n3. Falls back to MiniMax Music 2.6 (free tier)\n4. Polls until complete\n5. Saves audio and returns track_id","operationId":"generate_music_generate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_generate_music_generate_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/music/status/{track_id}":{"get":{"summary":"Status","description":"Check the status of a generation request.","operationId":"status_music_status__track_id__get","parameters":[{"name":"track_id","in":"path","required":true,"schema":{"type":"string","title":"Track Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/music/feedback":{"get":{"summary":"Get Feedback","description":"Return the 50 most recent feedback entries.","operationId":"get_feedback_music_feedback_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Response Get Feedback Music Feedback Get"}}}}}},"post":{"summary":"Submit Feedback","description":"Submit feedback for a previous response. No payment required.\n\nBody:\n  response_id (str): X-Request-Id from the paid response\n  rating (int): 1-5 star rating\n  comment (str, optional): Free-text notes","operationId":"submit_feedback_music_feedback_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Submit Feedback Music Feedback Post"}}}}}}},"/music/download/{track_id}":{"get":{"summary":"Download","description":"Download a completed track.","operationId":"download_music_download__track_id__get","parameters":[{"name":"track_id","in":"path","required":true,"schema":{"type":"string","title":"Track Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/stats":{"get":{"summary":"Stats","operationId":"stats_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Stats Stats Get"}}}}}}}},"components":{"schemas":{"Body_generate_music_generate_post":{"properties":{"prompt":{"type":"string","title":"Prompt","default":""},"duration":{"type":"integer","title":"Duration","default":0},"bpm":{"type":"integer","title":"Bpm","default":0},"key":{"type":"string","title":"Key","default":""}},"type":"object","title":"Body_generate_music_generate_post"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}