When to use this endpoint

Use only for the legacy supplier picker. It is a tenant-wide supplier list, not the suppliers linked to a particular stock item.

Authentication and permissions

Authenticate with signed API-key fields or a logged-in CRM session. This handler requires both a user identity and tenant context; it adds no stock-page, finance or administrator permission check.

All queries use the authenticated tenant. API signing and session CSRF checks still apply; see Getting started.

Parameters

This endpoint has no operation-specific parameters.

Example request

$suppliers = FM_api('Stock_suppliersGet', []);

Example response

[]

Example when no non-deleted suppliers exist. Otherwise returns an array of complete raw supplier rows, not id/name pairs. The representative schema includes id, name, contact_name, address fields, country, postcode, email, phone, notes, website, tax_id, terms, account_number, ref_number, is_active, on_hold, type, meta, cdate, last_edited, edited_uuid, custom_values, deleted and ddate. Stored JSON fields stay encoded; actual raw columns follow the tenant schema.

Errors and unusual responses

ResponseCondition
{"error":"not logged in"}No authenticated tenant context is available. Invalid signed credentials can be rejected by the dispatcher before the handler runs.
[]No non-deleted supplier rows.

Legacy application errors may be returned with HTTP 200. Check the decoded response for error, not only the HTTP status.

Behaviour and edge cases

  • SELECT * from suppliers with deleted=0, ordered by name. Inactive and on-hold suppliers remain included; this is not an active-status allowlist.
  • No stock-ID, owner, department, paging or projection filter. Supplied id is ignored. No supplier-page or feature gate; relation costs/assignments are not fetched.
  • No direct mobile caller was found in the current app JavaScript or m/www intermediary. The app receives stock through syncDownloads, which selects non-deleted stock by edit timestamp; these calls are not the app synchronization protocol.

Side effects

  • Read-only; no audit, edit timestamp, event or stock movement.

See it in Fieldmotion

CRM1

On Stock, click the supplier cell; CRM1 loads this list, then sends Stock_supplierSet for the chosen ID. The stock filter also loads it for options.

CRM2

No direct call was found; CRM2 Stocks uses the supplier list and multi-supplier editor rather than this legacy selector.

Related endpoints