{"openapi":"3.1.0","info":{"title":"Apex AI Academy Public API","version":"1.0.0"},"servers":[{"url":"https://apexai.academy/api/public/v1"}],"paths":{"/courses":{"get":{"operationId":"list_courses","summary":"List published courses.","parameters":[],"responses":{"200":{"description":"Tool result (locked lessons contain metadata only)","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input"},"401":{"description":"Invalid API key"},"404":{"description":"Not found"},"429":{"description":"Rate limited; see Retry-After"}},"security":[{},{"bearerAuth":[]}]}},"/courses/{course}/lessons":{"get":{"operationId":"list_lessons","summary":"List published lessons in a course (course slug or ID).","parameters":[{"name":"course","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":120,"description":"Course slug or ID"}}],"responses":{"200":{"description":"Tool result (locked lessons contain metadata only)","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input"},"401":{"description":"Invalid API key"},"404":{"description":"Not found"},"429":{"description":"Rate limited; see Retry-After"}},"security":[{},{"bearerAuth":[]}]}},"/lessons/{slug}":{"get":{"operationId":"get_lesson","summary":"Read a lesson; locked lessons return public metadata only.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":120,"description":"Stable lesson-<id> identifier or numeric ID"}},{"name":"view","in":"query","required":false,"schema":{"type":"string","enum":["agent","human","both"],"default":"both","description":"Audience view: both (default for this REST API), agent or human"}},{"name":"share","in":"query","required":false,"schema":{"type":"boolean","default":true,"description":"Include share_with_human (title, one factual line, link to the lesson page). false omits it."}},{"name":"tracking","in":"query","required":false,"schema":{"type":"boolean","default":true,"description":"false returns share_with_human.url without ref/utm parameters."}}],"responses":{"200":{"description":"Tool result (locked lessons contain metadata only)","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input"},"401":{"description":"Invalid API key"},"404":{"description":"Not found"},"429":{"description":"Rate limited; see Retry-After"}},"security":[{},{"bearerAuth":[]}]}},"/search":{"get":{"operationId":"search","summary":"Search published titles and public summaries, never locked bodies.","parameters":[{"name":"query","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":200,"description":"Search text"}},{"name":"share","in":"query","required":false,"schema":{"type":"boolean","default":true,"description":"Include share_with_human.url (link to each lesson page). false omits it."}},{"name":"tracking","in":"query","required":false,"schema":{"type":"boolean","default":true,"description":"false returns share_with_human.url without ref/utm parameters."}}],"responses":{"200":{"description":"Tool result (locked lessons contain metadata only)","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input"},"401":{"description":"Invalid API key"},"404":{"description":"Not found"},"429":{"description":"Rate limited; see Retry-After"}},"security":[{},{"bearerAuth":[]}]}},"/news":{"get":{"operationId":"latest_news","summary":"Latest published news; premium and delayed items return teasers.","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":20,"default":10}}],"responses":{"200":{"description":"Tool result (locked lessons contain metadata only)","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input"},"401":{"description":"Invalid API key"},"404":{"description":"Not found"},"429":{"description":"Rate limited; see Retry-After"}},"security":[{},{"bearerAuth":[]}]}},"/pricing":{"get":{"operationId":"get_pricing","summary":"Read active plans and current prices from the academy.","parameters":[],"responses":{"200":{"description":"Tool result (locked lessons contain metadata only)","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input"},"401":{"description":"Invalid API key"},"404":{"description":"Not found"},"429":{"description":"Rate limited; see Retry-After"}},"security":[{},{"bearerAuth":[]}]}},"/subscribe-link":{"get":{"operationId":"subscribe_link","summary":"Open the existing account subscription UI. Does not create a charge.","parameters":[{"name":"plan","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":120,"description":"Optional active plan ID or month/year"}}],"responses":{"200":{"description":"Tool result (locked lessons contain metadata only)","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input"},"401":{"description":"Invalid API key"},"404":{"description":"Not found"},"429":{"description":"Rate limited; see Retry-After"}},"security":[{},{"bearerAuth":[]}]}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Personal apex_ API key; optional for public requests"}}}}