{"service":"Invlinic Subscription API","version":"1.0.0","stage":"prod","endpoints":[{"method":"GET","path":"/v1/health","description":"Liveness probe."},{"method":"POST","path":"/v1/auth/register","description":"Create an account with email and password."},{"method":"POST","path":"/v1/auth/login","description":"Sign in. Refused with SUBSCRIPTION_EXPIRED once the term lapses."},{"method":"POST","path":"/v1/auth/forgot-password","description":"Email a single use password reset link."},{"method":"POST","path":"/v1/auth/reset-password","description":"Set a new password using a reset token."},{"method":"GET","path":"/v1/plans","description":"List purchasable plans and their current prices."},{"method":"POST","path":"/v1/plans","description":"Admin: add a plan."},{"method":"PATCH","path":"/v1/plans/{code}","description":"Admin: change a plan price, name or availability."},{"method":"POST","path":"/v1/subscriptions","description":"Subscribe or renew. Accepts a renewal token."},{"method":"GET","path":"/v1/subscriptions/me","description":"Read the current entitlement and its expiration date."},{"method":"DELETE","path":"/v1/subscriptions/me","description":"Unsubscribe."},{"method":"POST","path":"/v1/subscriptions/me/cancel","description":"Unsubscribe (POST alias)."}]}