Forms
Search forms by name
POST
/a/Forms_searchByName
Find local forms whose stored name contains a supplied substring.
When to use this endpoint
Use this for a simple tenant-wide name search. Use Forms_listByNames for exact import matching or Forms_getDataTable for paginated filtering.
Authentication and permissions
The request must authenticate with signed API-key fields or a logged-in CRM session and is scoped to the authenticated tenant.
The handler performs no form, department, owner, or page-permission check unless the page below says otherwise. CRM navigation may impose additional UI-only access rules.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
name | String | Yes | Trimmed non-empty substring. SQL wildcard characters % and _ retain wildcard meaning. |
Example request
$forms = FM_api('Forms_searchByName', [
'name' => 'service',
]);
Example response
[{"id":1042,"name":"Service visit"}]
Errors and unusual responses
| Response | Condition |
|---|---|
{"error":"not logged in"} | No authenticated tenant context is available. Invalid signed credentials can be rejected by the dispatcher before the handler runs. |
{"error":"missing parameter: name"} | Name is absent or blank after trimming. |
Legacy application errors may be returned with HTTP 200. Check the decoded response for error, not only the HTTP status.
Behaviour and edge cases
- The lookup has no type, archive, department, ordering, or pagination restriction.
- Matching behavior, including case sensitivity, follows the tenant database collation.
- IDs are returned as JSON numbers. An unmatched search returns an empty array.
See it in Fieldmotion
CRM1
No production CRM1 caller was found.
CRM2
No production CRM2 caller was found.
Related endpoints
Forms_listByNamesperforms exact batch matching.Forms_listsupplies active form selectors.