{"message":"Hunt Mapper API is running.","endpoints":[{"method":"GET","path":"/","description":"Public: This very endpoint"},{"method":"GET","path":"/ping","description":"Public: Ping the server"},{"method":"GET","path":"/geojson","description":"Protected: Get the latest GeoJSON data for an INSEE code. Query params: insee_code (required), visibility ('public' or 'private', default 'public')"},{"method":"POST","path":"/geojson/import","description":"Public: Upload a JSON file with parcels data for an INSEE code"},{"method":"POST","path":"/geojson/process","description":"Internal: Process the uploaded JSON file for an INSEE code"},{"method":"GET","path":"/invitations","description":"Protected: List invitations for a team (admin only)"},{"method":"POST","path":"/invitations","description":"Protected: Create a new invitation (admin only)"},{"method":"DELETE","path":"/invitations/:id","description":"Protected: Revoke an invitation (admin only)"},{"method":"POST","path":"/invitations/:id/resend","description":"Protected: Resend an invitation with new token (admin only)"},{"method":"POST","path":"/invitations/:id/send","description":"Protected: Send invitation email (admin only)"},{"method":"GET","path":"/invitations/validate/:token","description":"Public: Validate an invitation token"},{"method":"POST","path":"/invitations/accept/:token","description":"Public: Accept invitation and create account"},{"method":"POST","path":"/invitations/accept-authenticated/:token","description":"Protected: Accept invitation for existing user (requires JWT)"}]}