Mealie · Authentication Profile
Mealie Authentication
Authentication
Mealie secures its APIs with oauth2 and http-bearer across 2 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the password flow(s).
CompanyRecipesFoodMeal PlanningShopping ListsSelf-HostedOpen-SourceHouseholdNutritionHome Automation
Methods: oauth2, http-bearer
Schemes: 2
OAuth flows: password
API key in:
Security Schemes
OAuth2PasswordBearer oauth2
· flows: password
API Token (bearer) http
scheme: bearer
· in: header ()
Source
Authentication Profile
generated: '2026-08-27'
method: searched
source: https://docs.mealie.io/documentation/getting-started/api-usage/
docs: https://docs.mealie.io/documentation/getting-started/api-usage/
spec_source: openapi/mealie-openapi.json
summary:
types:
- oauth2
- http-bearer
oauth2_flows:
- password
primary_model: long-lived bearer API token minted in the Mealie UI
note: >-
Mealie is self-hosted, so every instance is its own authorization server. The
OpenAPI document declares a single OAuth2 password-bearer scheme applied to 230
of 264 operations; in practice the documented way to call the API from a script
or a third-party integration is a long-lived API token created by the user at
/user/profile/api-tokens and sent as `Authorization: Bearer <token>`.
schemes:
- name: OAuth2PasswordBearer
type: oauth2
flows:
- flow: password
tokenUrl: /api/auth/token
scopes: 0
applied_to_operations: 230
sources:
- openapi/mealie-openapi.json
note: >-
FastAPI's OAuth2 password flow. POST /api/auth/token with form-encoded
username/password returns an access token; POST /api/auth/refresh refreshes it
and POST /api/auth/logout ends the session.
- name: API Token (bearer)
type: http
scheme: bearer
in: header
header: Authorization
format: 'Bearer <token>'
minted_at: /user/profile/api-tokens
operations:
- create_api_token_api_users_api_tokens_post
- delete_api_token_api_users_api_tokens__token_id__delete
expiry: long-lived (no stated expiry; revoked by deleting the token)
docs: https://docs.mealie.io/documentation/getting-started/api-usage/
note: >-
Not declared as a separate securityScheme in the OpenAPI document — it is
accepted by the same bearer handler as the password-flow token. This is the
model the docs tell integrators to use.
user_login_methods:
- method: local credentials
description: Username/password stored in the Mealie instance.
- method: OpenID Connect
description: >-
Mealie acts as an OIDC relying party against an external IdP (Authentik,
Authelia, Keycloak, Okta, Google, Entra ID). Requires the Authorization Code
flow with PKCE and a confidential client. Since v3.21.0 the IdP must assert
`email_verified` unless OIDC_REQUIRES_EMAIL_VERIFICATION=false.
docs: https://docs.mealie.io/documentation/getting-started/authentication/oidc-v2/
operations:
- oauth_login_api_auth_oauth_get
- oauth_callback_api_auth_oauth_callback_get
- oauth_native_config_api_auth_oauth_native_config_get
- oauth_native_token_api_auth_oauth_native_token_post
- method: LDAP
description: Directory-backed login for self-hosted deployments.
docs: https://docs.mealie.io/documentation/getting-started/authentication/ldap/
authorization_model:
scheme: per-user permission flags plus group/household visibility
permissions:
- name: Administrator
allows: Access to administrator tools
- name: Invite
allows: Generating invitation links for other users
- name: Manage group
allows: Access to group management areas and settings
- name: Organize group data
allows: Creating, updating, deleting and merging foods, tags and categories
public_access: >-
Unauthenticated reads are possible through the /api/explore/groups/{group_slug}/*
surface only when the group is not private, the household is not private and
allows outside viewing, and the recipe itself is public. Private share links
bypass those checks.
docs: https://docs.mealie.io/documentation/getting-started/usage/permissions-and-public-access/
Work with this as data
Every security artifact here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for security posture
4 MCP tools reach this
find_securityBrowse and filter every security artifact in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This security artifact
curl "https://apis.io/api/v1/security/mealie-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.