Cloud and on-premises

View as Markdown

The API, the messages and the session model are the same everywhere. What differs is how you reach the server and how users authenticate.

M-Files Cloud On-premises
Address The vault host on port 443, for example contoso.cloudvault.m-files.com:443 The server's host name and the gRPC port, 7766 by default
Transport TLS, publicly trusted certificate Plain HTTP/2 by default; TLS when the administrator enables it, with the certificate they install
Front end A front end between client and server; several server instances can serve one vault The client talks to M-Files Server directly, or to the M-Files reverse proxy (Traefik) where one is deployed
Stickiness The front end sets the cookie mfilesmsm; send it back on later calls None
Typical authentication Single sign-on through M-Files Login Service (plugin MFLoginService.Default), which M-Files Cloud vaults are moving to; otherwise through the vault's identity provider. Both are AUTH_DATA_TYPE_PLUGIN with a token M-Files user name and password, Windows authentication, or single sign-on where configured
Login accounts Vault-level login accounts (vault_login_accounts capability) Server-level login accounts unless configured otherwise
Server version Chosen by M-Files; check it with QueryVersion Whatever version the customer runs
mf-http-grpc gateway Same host, port 443, paths /grpc/v1/... Port 7767 by default

Practical consequences

The same first call everywhere

Both deployments answer QueryVersion without a session or any metadata:

Target Channel Example answer
contoso.cloudvault.m-files.com:443 TLS, default trust server_version 7318389121155072 (26.9.16357.0)
mfserver.example.local:7766 Insecure (or TLS with your CA) server_version 7318397729964032 (26.11.16645.0)

The Connecting page explains how to decode the version and what a failure means.