API URLs, HTTPS, server errors

Start by identifying whether the failure affects the CRM website, the public API, or only authenticated requests.

Check the address

Read Constants.baseUrl in lib/app/constants.dart. It should contain the HTTPS CRM installation address, including any installation subdirectory, without /admin, /clients, a trailing slash, or the API suffix.

Open <CRM URL>/flutex_customer_api/v1/config on the test device. If it returns HTML, a redirect loop, or a web-server error, investigate the server route or module installation before changing Flutter models.

Interpret the failure

  1. A DNS or certificate error points to domain/HTTPS configuration.
  2. A timeout can indicate a firewall, unreachable server, or overloaded backend.
  3. A route-level 404 suggests the wrong installation URL or module routing.
  4. A 401 on a protected request indicates rejected authentication.
  5. A 403 may indicate a contact restriction or inactive module license; inspect the error code.
  6. A 5xx requires investigation of server logs and service availability.

Never disable HTTPS verification as a production fix.

Compare debug and release

If Android debug works but release does not, inspect the merged release manifest for Internet permission. The inspected main manifest lacks an explicit declaration, while debug/profile manifests contain one.

Collect the request path, response status, safe error code, app/API versions, and test time. Do not include tokens or full customer response bodies.

Write Your Comment