A digital system for committees and organizations to conduct meetings, propose motions, debate, and vote according to parliamentary procedure. This README provides a comprehensive API reference for the serverless Netlify functions used by the frontend.
The backend is implemented as serverless Netlify functions under netlify/functions/. This README documents each function's HTTP surface (methods, query parameters, request body, responses), expected shapes, authorization behavior, and useful examples.
Base URL (when running in production or dev with Netlify):
https://<your-site>/.netlify/functions/{function}
During local development (Vite / Netlify dev) the same path is used but prefixed with the dev host (e.g., [http://localhost:8888/.netlify/functions/](<http://localhost:8888/.netlify/functions/>)...). The frontend uses relative paths like /.netlify/functions/motions.
Most endpoints accept a Bearer JWT in the Authorization header (Authorization: Bearer <token>). Token verification is implemented with Auth0 JWKS in production where AUTH0_DOMAIN, AUTH0_AUDIENCE, and AUTH0_CLIENT_ID are configured.
In development (NETLIFY_DEV === "true" or when Auth0 env vars are missing), the functions often accept a permissive/dev identity so local development is easier.
AUTH0_DOMAIN - Auth0 domain (for profile token verification)