The server understood the request but refuses to authorize it. Unlike 401, re-authenticating will not help.
The client's identity is known (or irrelevant) but they lack permission to access the resource. This is common with firewalls, WAFs, geo-blocking rules, and application-level permission systems. The server is explicitly denying access, not asking for credentials.
Referer header does not match an allowed origin.401 Unauthorized means "you need to authenticate." The server does not know who you are and wants credentials. 403 Forbidden means "I know who you are and the answer is no." If the user is not logged in, prefer 401. If they are logged in but lack access, use 403.
Use the Probe tool to check the response from Cloudflare's edge and see if the 403 is IP or geo specific. Look for a cf-mitigated header in the response, which indicates a Cloudflare challenge page or block. Check the response body for clues: many WAFs include a block reason or reference ID. Review your server access logs for the deny rule that triggered.
Probe an endpoint to inspect the response.
Open Probe Tool