{"ok":true,"data":{"openapi":"3.0.0","info":{"title":"Frontera MKZ API","version":"2.0.0-dev","description":"Contrato oficial de la API de Frontera MKZ. Generado automáticamente a partir de src/app/api.","contact":{"name":"MKZ Company","email":"mkzcompanyofficial@gmail.com"}},"servers":[{"url":"http://localhost:3000","description":"Local"},{"url":"https://frontera-mkz-official.vercel.app","description":"Preview"}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{},"parameters":{"TenantHeader":{"in":"header","name":"x-tenant-id","schema":{"type":"string"},"description":"Identificador del tenant (obligatorio cuando requireTenant=true)"}}},"security":[{"bearerAuth":[]}],"paths":{"/api/activate-tenant":{"get":{"operationId":"activate-tenant-activate-tenant-get","summary":"GET /api/activate-tenant","tags":["activate-tenant"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[]},"post":{"operationId":"activate-tenant-activate-tenant-post","summary":"POST /api/activate-tenant","tags":["activate-tenant"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/announcements":{"get":{"operationId":"announcements-announcements-get","summary":"GET /api/announcements","tags":["announcements"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"announcements-announcements-post","summary":"POST /api/announcements","tags":["announcements"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"announcements-announcements-put","summary":"PUT /api/announcements","tags":["announcements"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"announcements-announcements-delete","summary":"DELETE /api/announcements","tags":["announcements"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/billing":{"get":{"operationId":"billing-billing-get","summary":"GET /api/billing","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/contact":{"post":{"operationId":"contact-contact-post","summary":"POST /api/contact","tags":["contact"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/countries":{"get":{"operationId":"countries-countries-get","summary":"GET /api/countries","tags":["countries"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[]}},"/api/events":{"get":{"operationId":"events-events-get","summary":"GET /api/events","tags":["events"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"events-events-post","summary":"POST /api/events","tags":["events"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"events-events-put","summary":"PUT /api/events","tags":["events"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"events-events-delete","summary":"DELETE /api/events","tags":["events"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/docs":{"get":{"operationId":"docs-docs-get","summary":"GET /api/docs","tags":["docs"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[]}},"/api/health":{"get":{"operationId":"health-health-get","summary":"GET /api/health","tags":["health"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/leads":{"post":{"operationId":"leads-leads-post","summary":"POST /api/leads","tags":["leads"],"parameters":[],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":false,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/newsletter":{"post":{"operationId":"newsletter-newsletter-post","summary":"POST /api/newsletter","tags":["newsletter"],"parameters":[],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":false,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/notifications":{"get":{"operationId":"notifications-notifications-get","summary":"GET /api/notifications","tags":["notifications"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"patch":{"operationId":"notifications-notifications-patch","summary":"PATCH /api/notifications","tags":["notifications"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/onboarding":{"get":{"operationId":"onboarding-onboarding-get","summary":"GET /api/onboarding","tags":["onboarding"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"onboarding-onboarding-post","summary":"POST /api/onboarding","tags":["onboarding"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"onboarding-onboarding-put","summary":"PUT /api/onboarding","tags":["onboarding"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/plan-modules":{"get":{"operationId":"plan-modules-plan-modules-get","summary":"GET /api/plan-modules","tags":["plan-modules"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false}},"/api/plans":{"get":{"operationId":"plans-plans-get","summary":"GET /api/plans","tags":["plans"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/registro":{"post":{"operationId":"registro-registro-post","summary":"POST /api/registro","tags":["registro"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/search":{"get":{"operationId":"search-search-get","summary":"GET /api/search","tags":["search"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/academic-levels":{"get":{"operationId":"academic-academic-levels-get","summary":"GET /api/academic/academic-levels","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/academic/attendance":{"get":{"operationId":"academic-attendance-get","summary":"GET /api/academic/attendance","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher"},"post":{"operationId":"academic-attendance-post","summary":"POST /api/academic/attendance","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-attendance-put","summary":"PUT /api/academic/attendance","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-attendance-delete","summary":"DELETE /api/academic/attendance","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher"}},"/api/academic/classrooms":{"get":{"operationId":"academic-classrooms-get","summary":"GET /api/academic/classrooms","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-classrooms-post","summary":"POST /api/academic/classrooms","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-classrooms-put","summary":"PUT /api/academic/classrooms","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-classrooms-delete","summary":"DELETE /api/academic/classrooms","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/context":{"get":{"operationId":"academic-context-get","summary":"GET /api/academic/context","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"put":{"operationId":"academic-context-put","summary":"PUT /api/academic/context","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/academic/courses":{"get":{"operationId":"academic-courses-get","summary":"GET /api/academic/courses","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-courses-post","summary":"POST /api/academic/courses","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-courses-put","summary":"PUT /api/academic/courses","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-courses-delete","summary":"DELETE /api/academic/courses","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/cuadro-general":{"get":{"operationId":"academic-cuadro-general-get","summary":"GET /api/academic/cuadro-general","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"post":{"operationId":"academic-cuadro-general-post","summary":"POST /api/academic/cuadro-general","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/academic/files":{"get":{"operationId":"academic-files-get","summary":"GET /api/academic/files","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/grade-formats":{"get":{"operationId":"academic-grade-formats-get","summary":"GET /api/academic/grade-formats","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-grade-formats-post","summary":"POST /api/academic/grade-formats","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-grade-formats-put","summary":"PUT /api/academic/grade-formats","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-grade-formats-delete","summary":"DELETE /api/academic/grade-formats","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/grade-levels":{"get":{"operationId":"academic-grade-levels-get","summary":"GET /api/academic/grade-levels","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-grade-levels-post","summary":"POST /api/academic/grade-levels","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-grade-levels-put","summary":"PUT /api/academic/grade-levels","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/academic/grades":{"get":{"operationId":"academic-grades-get","summary":"GET /api/academic/grades","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher"},"post":{"operationId":"academic-grades-post","summary":"POST /api/academic/grades","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-grades-put","summary":"PUT /api/academic/grades","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-grades-delete","summary":"DELETE /api/academic/grades","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher"}},"/api/academic/panel":{"get":{"operationId":"academic-panel-get","summary":"GET /api/academic/panel","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/academic/library":{"get":{"operationId":"academic-library-get","summary":"GET /api/academic/library","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-library-post","summary":"POST /api/academic/library","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-library-delete","summary":"DELETE /api/academic/library","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/period-history":{"get":{"operationId":"academic-period-history-get","summary":"GET /api/academic/period-history","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-period-history-post","summary":"POST /api/academic/period-history","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-period-history-delete","summary":"DELETE /api/academic/period-history","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/schedules":{"get":{"operationId":"academic-schedules-get","summary":"GET /api/academic/schedules","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-schedules-post","summary":"POST /api/academic/schedules","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-schedules-put","summary":"PUT /api/academic/schedules","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-schedules-delete","summary":"DELETE /api/academic/schedules","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/reporte-materia":{"get":{"operationId":"academic-reporte-materia-get","summary":"GET /api/academic/reporte-materia","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"post":{"operationId":"academic-reporte-materia-post","summary":"POST /api/academic/reporte-materia","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/academic/school-years":{"get":{"operationId":"academic-school-years-get","summary":"GET /api/academic/school-years","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-school-years-post","summary":"POST /api/academic/school-years","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-school-years-put","summary":"PUT /api/academic/school-years","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-school-years-delete","summary":"DELETE /api/academic/school-years","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/sections":{"get":{"operationId":"academic-sections-get","summary":"GET /api/academic/sections","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-sections-post","summary":"POST /api/academic/sections","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-sections-put","summary":"PUT /api/academic/sections","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-sections-delete","summary":"DELETE /api/academic/sections","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/shifts":{"get":{"operationId":"academic-shifts-get","summary":"GET /api/academic/shifts","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-shifts-post","summary":"POST /api/academic/shifts","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-shifts-put","summary":"PUT /api/academic/shifts","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-shifts-delete","summary":"DELETE /api/academic/shifts","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/subjects":{"get":{"operationId":"academic-subjects-get","summary":"GET /api/academic/subjects","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-subjects-post","summary":"POST /api/academic/subjects","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"academic-subjects-put","summary":"PUT /api/academic/subjects","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"academic-subjects-delete","summary":"DELETE /api/academic/subjects","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/summary":{"get":{"operationId":"academic-summary-get","summary":"GET /api/academic/summary","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/agencies/public":{"get":{"operationId":"agencies-public-get","summary":"GET /api/agencies/public","tags":["agencies"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/admin/activation-keys":{"get":{"operationId":"admin-activation-keys-get","summary":"GET /api/admin/activation-keys","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"admin-activation-keys-post","summary":"POST /api/admin/activation-keys","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"admin-activation-keys-delete","summary":"DELETE /api/admin/activation-keys","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/admin/avatar":{"post":{"operationId":"admin-avatar-post","summary":"POST /api/admin/avatar","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/cleanup":{"post":{"operationId":"admin-cleanup-post","summary":"POST /api/admin/cleanup","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/cleanup-all":{"post":{"operationId":"admin-cleanup-all-post","summary":"POST /api/admin/cleanup-all","tags":["admin"],"parameters":[],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":false,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/cleanup-orphan-auth":{"post":{"operationId":"admin-cleanup-orphan-auth-post","summary":"POST /api/admin/cleanup-orphan-auth","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/config":{"get":{"operationId":"admin-config-get","summary":"GET /api/admin/config","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"admin-config-post","summary":"POST /api/admin/config","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/dev-requests":{"get":{"operationId":"admin-dev-requests-get","summary":"GET /api/admin/dev-requests","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"patch":{"operationId":"admin-dev-requests-patch","summary":"PATCH /api/admin/dev-requests","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"admin-dev-requests-delete","summary":"DELETE /api/admin/dev-requests","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/admin/diagnose":{"get":{"operationId":"admin-diagnose-get","summary":"GET /api/admin/diagnose","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/admin/keys":{"get":{"operationId":"admin-keys-get","summary":"GET /api/admin/keys","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false},"post":{"operationId":"admin-keys-post","summary":"POST /api/admin/keys","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"admin-keys-patch","summary":"PATCH /api/admin/keys","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"admin-keys-delete","summary":"DELETE /api/admin/keys","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false}},"/api/admin/logs":{"get":{"operationId":"admin-logs-get","summary":"GET /api/admin/logs","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/admin/me":{"get":{"operationId":"admin-me-get","summary":"GET /api/admin/me","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/admin/migrate":{"post":{"operationId":"admin-migrate-post","summary":"POST /api/admin/migrate","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/plans":{"get":{"operationId":"admin-plans-get","summary":"GET /api/admin/plans","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"admin-plans-post","summary":"POST /api/admin/plans","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"admin-plans-patch","summary":"PATCH /api/admin/plans","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"admin-plans-delete","summary":"DELETE /api/admin/plans","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/admin/plan-upgrade-requests":{"get":{"operationId":"admin-plan-upgrade-requests-get","summary":"GET /api/admin/plan-upgrade-requests","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["super_admin","admin_mkz"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: super_admin, admin_mkz"},"post":{"operationId":"admin-plan-upgrade-requests-post","summary":"POST /api/admin/plan-upgrade-requests","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["super_admin","admin_mkz"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: super_admin, admin_mkz","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/reports":{"get":{"operationId":"admin-reports-get","summary":"GET /api/admin/reports","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/admin/request-access":{"post":{"operationId":"admin-request-access-post","summary":"POST /api/admin/request-access","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/staff":{"get":{"operationId":"admin-staff-get","summary":"GET /api/admin/staff","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"admin-staff-post","summary":"POST /api/admin/staff","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"admin-staff-put","summary":"PUT /api/admin/staff","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"admin-staff-delete","summary":"DELETE /api/admin/staff","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/admin/register":{"post":{"operationId":"admin-register-post","summary":"POST /api/admin/register","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/staff-assignments":{"post":{"operationId":"admin-staff-assignments-post","summary":"POST /api/admin/staff-assignments","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"admin-staff-assignments-delete","summary":"DELETE /api/admin/staff-assignments","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/admin/test-email":{"post":{"operationId":"admin-test-email-post","summary":"POST /api/admin/test-email","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/tickets":{"get":{"operationId":"admin-tickets-get","summary":"GET /api/admin/tickets","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]},"post":{"operationId":"admin-tickets-post","summary":"POST /api/admin/tickets","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"admin-tickets-put","summary":"PUT /api/admin/tickets","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"admin-tickets-delete","summary":"DELETE /api/admin/tickets","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/admin/verify":{"post":{"operationId":"admin-verify-post","summary":"POST /api/admin/verify","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/activate-tenant/activate":{"post":{"operationId":"activate-tenant-activate-post","summary":"POST /api/activate-tenant/activate","tags":["activate-tenant"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/activate-tenant/lookup":{"get":{"operationId":"activate-tenant-lookup-get","summary":"GET /api/activate-tenant/lookup","tags":["activate-tenant"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[]}},"/api/billing/invoices":{"get":{"operationId":"billing-invoices-get","summary":"GET /api/billing/invoices","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/billing/pay":{"post":{"operationId":"billing-pay-post","summary":"POST /api/billing/pay","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/billing/subscription":{"get":{"operationId":"billing-subscription-get","summary":"GET /api/billing/subscription","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/checkout/continue":{"post":{"operationId":"checkout-continue-post","summary":"POST /api/checkout/continue","tags":["checkout"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":false,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/billing/tenant":{"get":{"operationId":"billing-tenant-get","summary":"GET /api/billing/tenant","tags":["billing"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/checkout/init-custom":{"post":{"operationId":"checkout-init-custom-post","summary":"POST /api/checkout/init-custom","tags":["checkout"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":false,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/checkout/{token}":{"get":{"operationId":"checkout-token-get","summary":"GET /api/checkout/{token}","tags":["checkout"],"parameters":[{"in":"path","name":"token","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":false,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/community/announcements":{"get":{"operationId":"community-announcements-get","summary":"GET /api/community/announcements","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-announcements-post","summary":"POST /api/community/announcements","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"community-announcements-patch","summary":"PATCH /api/community/announcements","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"community-announcements-delete","summary":"DELETE /api/community/announcements","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/community/chats":{"get":{"operationId":"community-chats-get","summary":"GET /api/community/chats","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-chats-post","summary":"POST /api/community/chats","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"community-chats-put","summary":"PUT /api/community/chats","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"community-chats-delete","summary":"DELETE /api/community/chats","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/community/comments":{"get":{"operationId":"community-comments-get","summary":"GET /api/community/comments","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-comments-post","summary":"POST /api/community/comments","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/community/events":{"get":{"operationId":"community-events-get","summary":"GET /api/community/events","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-events-post","summary":"POST /api/community/events","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"community-events-delete","summary":"DELETE /api/community/events","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/community/groups":{"get":{"operationId":"community-groups-get","summary":"GET /api/community/groups","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-groups-post","summary":"POST /api/community/groups","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"community-groups-put","summary":"PUT /api/community/groups","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"community-groups-delete","summary":"DELETE /api/community/groups","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/community/feed":{"get":{"operationId":"community-feed-get","summary":"GET /api/community/feed","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-feed-post","summary":"POST /api/community/feed","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"community-feed-put","summary":"PUT /api/community/feed","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"community-feed-delete","summary":"DELETE /api/community/feed","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/community/messages":{"get":{"operationId":"community-messages-get","summary":"GET /api/community/messages","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-messages-post","summary":"POST /api/community/messages","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"community-messages-put","summary":"PUT /api/community/messages","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"community-messages-delete","summary":"DELETE /api/community/messages","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/community/panel":{"get":{"operationId":"community-panel-get","summary":"GET /api/community/panel","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/community/reactions":{"get":{"operationId":"community-reactions-get","summary":"GET /api/community/reactions","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-reactions-post","summary":"POST /api/community/reactions","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/auth/recovery":{"post":{"operationId":"auth-recovery-post","summary":"POST /api/auth/recovery","tags":["auth"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/dashboard/search":{"get":{"operationId":"dashboard-search-get","summary":"GET /api/dashboard/search","tags":["dashboard"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/auth/sign-up":{"post":{"operationId":"auth-sign-up-post","summary":"POST /api/auth/sign-up","tags":["auth"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/demo/update-plan":{"post":{"operationId":"demo-update-plan-post","summary":"POST /api/demo/update-plan","tags":["demo"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/dev/request":{"post":{"operationId":"dev-request-post","summary":"POST /api/dev/request","tags":["dev"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/dev/seed-demo":{"post":{"operationId":"dev-seed-demo-post","summary":"POST /api/dev/seed-demo","tags":["dev"],"parameters":[],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":false,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/finance/cash":{"get":{"operationId":"finance-cash-get","summary":"GET /api/finance/cash","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"},"post":{"operationId":"finance-cash-post","summary":"POST /api/finance/cash","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/finance/concepts":{"get":{"operationId":"finance-concepts-get","summary":"GET /api/finance/concepts","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"},"post":{"operationId":"finance-concepts-post","summary":"POST /api/finance/concepts","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"finance-concepts-patch","summary":"PATCH /api/finance/concepts","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"finance-concepts-delete","summary":"DELETE /api/finance/concepts","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"}},"/api/finance/payments":{"get":{"operationId":"finance-payments-get","summary":"GET /api/finance/payments","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"},"post":{"operationId":"finance-payments-post","summary":"POST /api/finance/payments","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"finance-payments-patch","summary":"PATCH /api/finance/payments","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"finance-payments-delete","summary":"DELETE /api/finance/payments","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"}},"/api/finance/payroll":{"get":{"operationId":"finance-payroll-get","summary":"GET /api/finance/payroll","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"},"post":{"operationId":"finance-payroll-post","summary":"POST /api/finance/payroll","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"finance-payroll-put","summary":"PUT /api/finance/payroll","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"finance-payroll-delete","summary":"DELETE /api/finance/payroll","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"}},"/api/finance/plans":{"get":{"operationId":"finance-plans-get","summary":"GET /api/finance/plans","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"},"post":{"operationId":"finance-plans-post","summary":"POST /api/finance/plans","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"finance-plans-delete","summary":"DELETE /api/finance/plans","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"}},"/api/finance/scholarships":{"get":{"operationId":"finance-scholarships-get","summary":"GET /api/finance/scholarships","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"},"post":{"operationId":"finance-scholarships-post","summary":"POST /api/finance/scholarships","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"finance-scholarships-patch","summary":"PATCH /api/finance/scholarships","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"finance-scholarships-delete","summary":"DELETE /api/finance/scholarships","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["cashier"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: cashier"}},"/api/finance/webhooks":{"post":{"operationId":"finance-webhooks-post","summary":"POST /api/finance/webhooks","tags":["finance"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/imports/courses":{"post":{"operationId":"imports-courses-post","summary":"POST /api/imports/courses","tags":["imports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/imports/employees":{"post":{"operationId":"imports-employees-post","summary":"POST /api/imports/employees","tags":["imports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/imports/log":{"get":{"operationId":"imports-log-get","summary":"GET /api/imports/log","tags":["imports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/imports/schedules":{"post":{"operationId":"imports-schedules-post","summary":"POST /api/imports/schedules","tags":["imports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/imports/students":{"post":{"operationId":"imports-students-post","summary":"POST /api/imports/students","tags":["imports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/imports/teachers":{"post":{"operationId":"imports-teachers-post","summary":"POST /api/imports/teachers","tags":["imports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/access-control":{"get":{"operationId":"management-access-control-get","summary":"GET /api/management/access-control","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-access-control-post","summary":"POST /api/management/access-control","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-access-control-delete","summary":"DELETE /api/management/access-control","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/admissions":{"get":{"operationId":"management-admissions-get","summary":"GET /api/management/admissions","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-admissions-post","summary":"POST /api/management/admissions","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"management-admissions-patch","summary":"PATCH /api/management/admissions","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/cafeteria":{"get":{"operationId":"management-cafeteria-get","summary":"GET /api/management/cafeteria","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-cafeteria-post","summary":"POST /api/management/cafeteria","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"management-cafeteria-patch","summary":"PATCH /api/management/cafeteria","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-cafeteria-delete","summary":"DELETE /api/management/cafeteria","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/cargos":{"get":{"operationId":"management-cargos-get","summary":"GET /api/management/cargos","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-cargos-post","summary":"POST /api/management/cargos","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"management-cargos-put","summary":"PUT /api/management/cargos","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-cargos-delete","summary":"DELETE /api/management/cargos","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/dashboard":{"get":{"operationId":"management-dashboard-get","summary":"GET /api/management/dashboard","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/drive":{"get":{"operationId":"management-drive-get","summary":"GET /api/management/drive","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-drive-post","summary":"POST /api/management/drive","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-drive-delete","summary":"DELETE /api/management/drive","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/health":{"get":{"operationId":"management-health-get","summary":"GET /api/management/health","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-health-post","summary":"POST /api/management/health","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-health-delete","summary":"DELETE /api/management/health","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/inventory":{"get":{"operationId":"management-inventory-get","summary":"GET /api/management/inventory","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-inventory-post","summary":"POST /api/management/inventory","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"management-inventory-patch","summary":"PATCH /api/management/inventory","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/psychology":{"get":{"operationId":"management-psychology-get","summary":"GET /api/management/psychology","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-psychology-post","summary":"POST /api/management/psychology","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-psychology-delete","summary":"DELETE /api/management/psychology","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/transport":{"get":{"operationId":"management-transport-get","summary":"GET /api/management/transport","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-transport-post","summary":"POST /api/management/transport","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"management-transport-patch","summary":"PATCH /api/management/transport","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-transport-delete","summary":"DELETE /api/management/transport","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/media/{type}":{"get":{"operationId":"media-type-get","summary":"GET /api/media/{type}","tags":["media"],"parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"media-type-post","summary":"POST /api/media/{type}","tags":["media"],"parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"media-type-delete","summary":"DELETE /api/media/{type}","tags":["media"],"parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/monitoring/check":{"get":{"operationId":"monitoring-check-get","summary":"GET /api/monitoring/check","tags":["monitoring"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[]}},"/api/monitoring/services":{"get":{"operationId":"monitoring-services-get","summary":"GET /api/monitoring/services","tags":["monitoring"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/operations/maintenance":{"get":{"operationId":"operations-maintenance-get","summary":"GET /api/operations/maintenance","tags":["operations"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"operations-maintenance-post","summary":"POST /api/operations/maintenance","tags":["operations"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"operations-maintenance-patch","summary":"PATCH /api/operations/maintenance","tags":["operations"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"operations-maintenance-delete","summary":"DELETE /api/operations/maintenance","tags":["operations"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/payments/azul":{"post":{"operationId":"payments-azul-post","summary":"POST /api/payments/azul","tags":["payments"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/operations/fuel":{"get":{"operationId":"operations-fuel-get","summary":"GET /api/operations/fuel","tags":["operations"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"operations-fuel-post","summary":"POST /api/operations/fuel","tags":["operations"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"operations-fuel-delete","summary":"DELETE /api/operations/fuel","tags":["operations"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/payments/ecollect":{"post":{"operationId":"payments-ecollect-post","summary":"POST /api/payments/ecollect","tags":["payments"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/payments/paypal":{"post":{"operationId":"payments-paypal-post","summary":"POST /api/payments/paypal","tags":["payments"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/payments/send-receipt":{"post":{"operationId":"payments-send-receipt-post","summary":"POST /api/payments/send-receipt","tags":["payments"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/community/posts":{"get":{"operationId":"community-posts-get","summary":"GET /api/community/posts","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-posts-post","summary":"POST /api/community/posts","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/payments/tilopay":{"post":{"operationId":"payments-tilopay-post","summary":"POST /api/payments/tilopay","tags":["payments"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/permissions/me":{"get":{"operationId":"permissions-me-get","summary":"GET /api/permissions/me","tags":["permissions"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/plans/custom":{"get":{"operationId":"plans-custom-get","summary":"GET /api/plans/custom","tags":["plans"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/plans/upgrade-request":{"get":{"operationId":"plans-upgrade-request-get","summary":"GET /api/plans/upgrade-request","tags":["plans"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["super_admin","admin_mkz","user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: super_admin, admin_mkz, user_director"},"post":{"operationId":"plans-upgrade-request-post","summary":"POST /api/plans/upgrade-request","tags":["plans"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["super_admin","admin_mkz","user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: super_admin, admin_mkz, user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/plans/public":{"get":{"operationId":"plans-public-get","summary":"GET /api/plans/public","tags":["plans"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/platform/payment-reminder":{"get":{"operationId":"platform-payment-reminder-get","summary":"GET /api/platform/payment-reminder","tags":["platform"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/platform/tenant-suspension":{"get":{"operationId":"platform-tenant-suspension-get","summary":"GET /api/platform/tenant-suspension","tags":["platform"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/plans/extras":{"get":{"operationId":"plans-extras-get","summary":"GET /api/plans/extras","tags":["plans"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/registro/check-subdomain":{"post":{"operationId":"registro-check-subdomain-post","summary":"POST /api/registro/check-subdomain","tags":["registro"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/registro/find-by-email":{"post":{"operationId":"registro-find-by-email-post","summary":"POST /api/registro/find-by-email","tags":["registro"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/registro/pending-payments":{"post":{"operationId":"registro-pending-payments-post","summary":"POST /api/registro/pending-payments","tags":["registro"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/reports/academic":{"get":{"operationId":"reports-academic-get","summary":"GET /api/reports/academic","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher"}},"/api/registro/submit":{"post":{"operationId":"registro-submit-post","summary":"POST /api/registro/submit","tags":["registro"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/reports/attendance":{"get":{"operationId":"reports-attendance-get","summary":"GET /api/reports/attendance","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/reports/export":{"get":{"operationId":"reports-export-get","summary":"GET /api/reports/export","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/reports/logs":{"get":{"operationId":"reports-logs-get","summary":"GET /api/reports/logs","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"post":{"operationId":"reports-logs-post","summary":"POST /api/reports/logs","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/reports/templates":{"get":{"operationId":"reports-templates-get","summary":"GET /api/reports/templates","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"post":{"operationId":"reports-templates-post","summary":"POST /api/reports/templates","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"reports-templates-put","summary":"PUT /api/reports/templates","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"reports-templates-delete","summary":"DELETE /api/reports/templates","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/reports/financial":{"get":{"operationId":"reports-financial-get","summary":"GET /api/reports/financial","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/school/tuition-reminder":{"get":{"operationId":"school-tuition-reminder-get","summary":"GET /api/school/tuition-reminder","tags":["school"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/settings/agencies":{"get":{"operationId":"settings-agencies-get","summary":"GET /api/settings/agencies","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user","user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user, user_director"}},"/api/settings/audit-logs":{"get":{"operationId":"settings-audit-logs-get","summary":"GET /api/settings/audit-logs","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/settings/permissions":{"get":{"operationId":"settings-permissions-get","summary":"GET /api/settings/permissions","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"post":{"operationId":"settings-permissions-post","summary":"POST /api/settings/permissions","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"settings-permissions-put","summary":"PUT /api/settings/permissions","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"settings-permissions-patch","summary":"PATCH /api/settings/permissions","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"settings-permissions-delete","summary":"DELETE /api/settings/permissions","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/settings/school-type":{"get":{"operationId":"settings-school-type-get","summary":"GET /api/settings/school-type","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"settings-school-type-post","summary":"POST /api/settings/school-type","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"settings-school-type-patch","summary":"PATCH /api/settings/school-type","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/settings/cargos":{"get":{"operationId":"settings-cargos-get","summary":"GET /api/settings/cargos","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"settings-cargos-post","summary":"POST /api/settings/cargos","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"settings-cargos-put","summary":"PUT /api/settings/cargos","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"settings-cargos-patch","summary":"PATCH /api/settings/cargos","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"settings-cargos-delete","summary":"DELETE /api/settings/cargos","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/settings/tenant":{"get":{"operationId":"settings-tenant-get","summary":"GET /api/settings/tenant","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"settings-tenant-post","summary":"POST /api/settings/tenant","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"settings-tenant-patch","summary":"PATCH /api/settings/tenant","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/settings/sys-mapping":{"get":{"operationId":"settings-sys-mapping-get","summary":"GET /api/settings/sys-mapping","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"post":{"operationId":"settings-sys-mapping-post","summary":"POST /api/settings/sys-mapping","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"settings-sys-mapping-patch","summary":"PATCH /api/settings/sys-mapping","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"settings-sys-mapping-delete","summary":"DELETE /api/settings/sys-mapping","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/settings/tenant-config":{"get":{"operationId":"settings-tenant-config-get","summary":"GET /api/settings/tenant-config","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"patch":{"operationId":"settings-tenant-config-patch","summary":"PATCH /api/settings/tenant-config","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/students/status":{"put":{"operationId":"students-status-put","summary":"PUT /api/students/status","tags":["students"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/super-admin/enter-tenant":{"post":{"operationId":"super-admin-enter-tenant-post","summary":"POST /api/super-admin/enter-tenant","tags":["super-admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"super-admin-enter-tenant-delete","summary":"DELETE /api/super-admin/enter-tenant","tags":["super-admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/super-admin/stats":{"get":{"operationId":"super-admin-stats-get","summary":"GET /api/super-admin/stats","tags":["super-admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/super-admin/tenants":{"get":{"operationId":"super-admin-tenants-get","summary":"GET /api/super-admin/tenants","tags":["super-admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"patch":{"operationId":"super-admin-tenants-patch","summary":"PATCH /api/super-admin/tenants","tags":["super-admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"super-admin-tenants-delete","summary":"DELETE /api/super-admin/tenants","tags":["super-admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/support/articles":{"get":{"operationId":"support-articles-get","summary":"GET /api/support/articles","tags":["support"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"support-articles-post","summary":"POST /api/support/articles","tags":["support"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"support-articles-patch","summary":"PATCH /api/support/articles","tags":["support"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"support-articles-delete","summary":"DELETE /api/support/articles","tags":["support"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/support/panel":{"get":{"operationId":"support-panel-get","summary":"GET /api/support/panel","tags":["support"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/support/tickets":{"get":{"operationId":"support-tickets-get","summary":"GET /api/support/tickets","tags":["support"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"support-tickets-post","summary":"POST /api/support/tickets","tags":["support"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"support-tickets-patch","summary":"PATCH /api/support/tickets","tags":["support"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"support-tickets-delete","summary":"DELETE /api/support/tickets","tags":["support"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/system/process-emails":{"post":{"operationId":"system-process-emails-post","summary":"POST /api/system/process-emails","tags":["system"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/tenant/features":{"get":{"operationId":"tenant-features-get","summary":"GET /api/tenant/features","tags":["tenant"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/tenant/info":{"get":{"operationId":"tenant-info-get","summary":"GET /api/tenant/info","tags":["tenant"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/tenant/validate-key":{"get":{"operationId":"tenant-validate-key-get","summary":"GET /api/tenant/validate-key","tags":["tenant"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/tenant/theme":{"patch":{"operationId":"tenant-theme-patch","summary":"PATCH /api/tenant/theme","tags":["tenant"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/tenants/active":{"get":{"operationId":"tenants-active-get","summary":"GET /api/tenants/active","tags":["tenants"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/tenants/me":{"get":{"operationId":"tenants-me-get","summary":"GET /api/tenants/me","tags":["tenants"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/tenants/public":{"get":{"operationId":"tenants-public-get","summary":"GET /api/tenants/public","tags":["tenants"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/test/personalization":{"get":{"operationId":"test-personalization-get","summary":"GET /api/test/personalization","tags":["test"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[]}},"/api/storage/upload":{"post":{"operationId":"storage-upload-post","summary":"POST /api/storage/upload","tags":["storage"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"storage-upload-delete","summary":"DELETE /api/storage/upload","tags":["storage"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false}},"/api/tribunal/cases":{"get":{"operationId":"tribunal-cases-get","summary":"GET /api/tribunal/cases","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher"},"post":{"operationId":"tribunal-cases-post","summary":"POST /api/tribunal/cases","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"tribunal-cases-patch","summary":"PATCH /api/tribunal/cases","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["teacher"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: teacher","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/tribunal/clarifications":{"get":{"operationId":"tribunal-clarifications-get","summary":"GET /api/tribunal/clarifications","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"tribunal-clarifications-post","summary":"POST /api/tribunal/clarifications","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"tribunal-clarifications-put","summary":"PUT /api/tribunal/clarifications","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/tribunal/evidence":{"get":{"operationId":"tribunal-evidence-get","summary":"GET /api/tribunal/evidence","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"tribunal-evidence-post","summary":"POST /api/tribunal/evidence","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"tribunal-evidence-delete","summary":"DELETE /api/tribunal/evidence","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/tribunal/summary":{"get":{"operationId":"tribunal-summary-get","summary":"GET /api/tribunal/summary","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/user/data-deletion":{"post":{"operationId":"user-data-deletion-post","summary":"POST /api/user/data-deletion","tags":["user"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/tribunal/parties":{"get":{"operationId":"tribunal-parties-get","summary":"GET /api/tribunal/parties","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"tribunal-parties-post","summary":"POST /api/tribunal/parties","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"tribunal-parties-delete","summary":"DELETE /api/tribunal/parties","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/user/data-export":{"post":{"operationId":"user-data-export-post","summary":"POST /api/user/data-export","tags":["user"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/users/bulk-create":{"post":{"operationId":"users-bulk-create-post","summary":"POST /api/users/bulk-create","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":"custom","x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/users/cargos":{"get":{"operationId":"users-cargos-get","summary":"GET /api/users/cargos","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/users/courses":{"get":{"operationId":"users-courses-get","summary":"GET /api/users/courses","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false}},"/api/users/create":{"post":{"operationId":"users-create-post","summary":"POST /api/users/create","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/tribunal/comments":{"get":{"operationId":"tribunal-comments-get","summary":"GET /api/tribunal/comments","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"tribunal-comments-post","summary":"POST /api/tribunal/comments","tags":["tribunal"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/users/employees":{"get":{"operationId":"users-employees-get","summary":"GET /api/users/employees","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"users-employees-post","summary":"POST /api/users/employees","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"users-employees-put","summary":"PUT /api/users/employees","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"users-employees-delete","summary":"DELETE /api/users/employees","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/users/parents":{"get":{"operationId":"users-parents-get","summary":"GET /api/users/parents","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"users-parents-post","summary":"POST /api/users/parents","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"users-parents-put","summary":"PUT /api/users/parents","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"users-parents-delete","summary":"DELETE /api/users/parents","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/users/delete":{"post":{"operationId":"users-delete-post","summary":"POST /api/users/delete","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/users/profile":{"get":{"operationId":"users-profile-get","summary":"GET /api/users/profile","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false},"put":{"operationId":"users-profile-put","summary":"PUT /api/users/profile","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/users/roles":{"get":{"operationId":"users-roles-get","summary":"GET /api/users/roles","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"patch":{"operationId":"users-roles-patch","summary":"PATCH /api/users/roles","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/users/students":{"get":{"operationId":"users-students-get","summary":"GET /api/users/students","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"users-students-post","summary":"POST /api/users/students","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"users-students-put","summary":"PUT /api/users/students","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"users-students-delete","summary":"DELETE /api/users/students","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/users/teachers":{"get":{"operationId":"users-teachers-get","summary":"GET /api/users/teachers","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"users-teachers-post","summary":"POST /api/users/teachers","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"put":{"operationId":"users-teachers-put","summary":"PUT /api/users/teachers","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"users-teachers-delete","summary":"DELETE /api/users/teachers","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/users/tenants":{"get":{"operationId":"users-tenants-get","summary":"GET /api/users/tenants","tags":["users"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/users/{id}":{"patch":{"operationId":"users-id-patch","summary":"PATCH /api/users/{id}","tags":["users"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"users-id-delete","summary":"DELETE /api/users/{id}","tags":["users"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/academic/bulletins/generate":{"get":{"operationId":"academic-generate-get","summary":"GET /api/academic/bulletins/generate","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"post":{"operationId":"academic-generate-post","summary":"POST /api/academic/bulletins/generate","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/academic/bulletins/process-queue":{"post":{"operationId":"academic-process-queue-post","summary":"POST /api/academic/bulletins/process-queue","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/academic/cuadro-general/history":{"get":{"operationId":"academic-history-get","summary":"GET /api/academic/cuadro-general/history","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"delete":{"operationId":"academic-history-delete","summary":"DELETE /api/academic/cuadro-general/history","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/academic/library/loans":{"get":{"operationId":"academic-loans-get","summary":"GET /api/academic/library/loans","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"academic-loans-post","summary":"POST /api/academic/library/loans","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"academic-loans-patch","summary":"PATCH /api/academic/library/loans","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/academic/records/generate":{"get":{"operationId":"academic-generate-get","summary":"GET /api/academic/records/generate","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"post":{"operationId":"academic-generate-post","summary":"POST /api/academic/records/generate","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/academic/reporte-materia/history":{"get":{"operationId":"academic-history-get","summary":"GET /api/academic/reporte-materia/history","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"delete":{"operationId":"academic-history-delete","summary":"DELETE /api/academic/reporte-materia/history","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/academic/school-years/activate":{"post":{"operationId":"academic-activate-post","summary":"POST /api/academic/school-years/activate","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/demo-keys/validate":{"post":{"operationId":"admin-validate-post","summary":"POST /api/admin/demo-keys/validate","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/admin/monitoring/incidents":{"get":{"operationId":"admin-incidents-get","summary":"GET /api/admin/monitoring/incidents","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"admin-incidents-post","summary":"POST /api/admin/monitoring/incidents","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"admin-incidents-patch","summary":"PATCH /api/admin/monitoring/incidents","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"admin-incidents-delete","summary":"DELETE /api/admin/monitoring/incidents","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/academic/bulletins/history":{"get":{"operationId":"academic-history-get","summary":"GET /api/academic/bulletins/history","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"},"delete":{"operationId":"academic-history-delete","summary":"DELETE /api/academic/bulletins/history","tags":["academic"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/community/groups/members":{"get":{"operationId":"community-members-get","summary":"GET /api/community/groups/members","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-members-post","summary":"POST /api/community/groups/members","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"community-members-delete","summary":"DELETE /api/community/groups/members","tags":["community"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/countries/{code}/provinces":{"get":{"operationId":"countries-provinces-get","summary":"GET /api/countries/{code}/provinces","tags":["countries"],"parameters":[{"in":"path","name":"code","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":false,"x-has-supabase-direct":false,"security":[]}},"/api/management/cafeteria/orders":{"get":{"operationId":"management-orders-get","summary":"GET /api/management/cafeteria/orders","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-orders-post","summary":"POST /api/management/cafeteria/orders","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"management-orders-patch","summary":"PATCH /api/management/cafeteria/orders","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-orders-delete","summary":"DELETE /api/management/cafeteria/orders","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/cafeteria/products":{"get":{"operationId":"management-products-get","summary":"GET /api/management/cafeteria/products","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-products-post","summary":"POST /api/management/cafeteria/products","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/health/records":{"get":{"operationId":"management-records-get","summary":"GET /api/management/health/records","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-records-post","summary":"POST /api/management/health/records","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/inventory/movements":{"get":{"operationId":"management-movements-get","summary":"GET /api/management/inventory/movements","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-movements-post","summary":"POST /api/management/inventory/movements","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-movements-delete","summary":"DELETE /api/management/inventory/movements","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/psychology/records":{"get":{"operationId":"management-records-get","summary":"GET /api/management/psychology/records","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-records-post","summary":"POST /api/management/psychology/records","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/transport/assignments":{"post":{"operationId":"management-assignments-post","summary":"POST /api/management/transport/assignments","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-assignments-delete","summary":"DELETE /api/management/transport/assignments","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/transport/live":{"get":{"operationId":"management-live-get","summary":"GET /api/management/transport/live","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/admin/tenants/activate-manual":{"post":{"operationId":"admin-activate-manual-post","summary":"POST /api/admin/tenants/activate-manual","tags":["admin"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["super_admin","admin_mkz"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: super_admin, admin_mkz","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/transport/routes":{"get":{"operationId":"management-routes-get","summary":"GET /api/management/transport/routes","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"management-routes-post","summary":"POST /api/management/transport/routes","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"patch":{"operationId":"management-routes-patch","summary":"PATCH /api/management/transport/routes","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}},"delete":{"operationId":"management-routes-delete","summary":"DELETE /api/management/transport/routes","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/management/transport/summary":{"get":{"operationId":"management-summary-get","summary":"GET /api/management/transport/summary","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"}},"/api/reports/advanced/academic":{"get":{"operationId":"reports-academic-get","summary":"GET /api/reports/advanced/academic","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/settings/school-type/initialize":{"post":{"operationId":"settings-initialize-post","summary":"POST /api/settings/school-type/initialize","tags":["settings"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/reports/advanced/financial":{"get":{"operationId":"reports-financial-get","summary":"GET /api/reports/advanced/financial","tags":["reports"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user_director"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user_director"}},"/api/community/chats/{id}/messages":{"get":{"operationId":"community-messages-get","summary":"GET /api/community/chats/{id}/messages","tags":["community"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"community-messages-post","summary":"POST /api/community/chats/{id}/messages","tags":["community"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/tenants/{id}/activate":{"post":{"operationId":"tenants-activate-post","summary":"POST /api/tenants/{id}/activate","tags":["tenants"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":false,"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[],"requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/transport/live/checkin":{"post":{"operationId":"management-checkin-post","summary":"POST /api/management/transport/live/checkin","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/transport/live/approve":{"post":{"operationId":"management-approve-post","summary":"POST /api/management/transport/live/approve","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/community/chats/{id}/messages/read":{"post":{"operationId":"community-read-post","summary":"POST /api/community/chats/{id}/messages/read","tags":["community"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/tribunal/cases/{id}":{"get":{"operationId":"tribunal-id-get","summary":"GET /api/tribunal/cases/{id}","tags":["tribunal"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"patch":{"operationId":"tribunal-id-patch","summary":"PATCH /api/tribunal/cases/{id}","tags":["tribunal"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/support/tickets/{id}/messages":{"get":{"operationId":"support-messages-get","summary":"GET /api/support/tickets/{id}/messages","tags":["support"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user"},"post":{"operationId":"support-messages-post","summary":"POST /api/support/tickets/{id}/messages","tags":["support"],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/api/management/transport/gps/ping":{"post":{"operationId":"management-ping-post","summary":"POST /api/management/transport/gps/ping","tags":["management"],"parameters":[{"$ref":"#/components/parameters/TenantHeader"}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests"},"500":{"description":"Internal Server Error"}},"x-require-tenant":true,"x-require-auth":true,"x-allowed-roles":["user"],"x-rate-limited":true,"x-has-service":true,"x-has-supabase-direct":false,"security":[{"bearerAuth":[]}],"description":"Roles permitidos: user","requestBody":{"description":"Cuerpo de la petición","required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}}},"tags":[{"name":"activate-tenant","description":"Endpoints de activate-tenant"},{"name":"announcements","description":"Endpoints de announcements"},{"name":"billing","description":"Endpoints de billing"},{"name":"contact","description":"Endpoints de contact"},{"name":"countries","description":"Endpoints de countries"},{"name":"events","description":"Endpoints de events"},{"name":"docs","description":"Endpoints de docs"},{"name":"health","description":"Endpoints de health"},{"name":"leads","description":"Endpoints de leads"},{"name":"newsletter","description":"Endpoints de newsletter"},{"name":"notifications","description":"Endpoints de notifications"},{"name":"onboarding","description":"Endpoints de onboarding"},{"name":"plan-modules","description":"Endpoints de plan-modules"},{"name":"plans","description":"Endpoints de plans"},{"name":"registro","description":"Endpoints de registro"},{"name":"search","description":"Endpoints de search"},{"name":"academic","description":"Endpoints de academic"},{"name":"agencies","description":"Endpoints de agencies"},{"name":"admin","description":"Endpoints de admin"},{"name":"checkout","description":"Endpoints de checkout"},{"name":"community","description":"Endpoints de community"},{"name":"auth","description":"Endpoints de auth"},{"name":"dashboard","description":"Endpoints de dashboard"},{"name":"demo","description":"Endpoints de demo"},{"name":"dev","description":"Endpoints de dev"},{"name":"finance","description":"Endpoints de finance"},{"name":"imports","description":"Endpoints de imports"},{"name":"management","description":"Endpoints de management"},{"name":"media","description":"Endpoints de media"},{"name":"monitoring","description":"Endpoints de monitoring"},{"name":"operations","description":"Endpoints de operations"},{"name":"payments","description":"Endpoints de payments"},{"name":"permissions","description":"Endpoints de permissions"},{"name":"platform","description":"Endpoints de platform"},{"name":"reports","description":"Endpoints de reports"},{"name":"school","description":"Endpoints de school"},{"name":"settings","description":"Endpoints de settings"},{"name":"students","description":"Endpoints de students"},{"name":"super-admin","description":"Endpoints de super-admin"},{"name":"support","description":"Endpoints de support"},{"name":"system","description":"Endpoints de system"},{"name":"tenant","description":"Endpoints de tenant"},{"name":"tenants","description":"Endpoints de tenants"},{"name":"test","description":"Endpoints de test"},{"name":"storage","description":"Endpoints de storage"},{"name":"tribunal","description":"Endpoints de tribunal"},{"name":"user","description":"Endpoints de user"},{"name":"users","description":"Endpoints de users"}]}}