Jobs: recurrence settings
Find a recurrence by cached job membership
/a/JobRecurrence_getRID
Resolve a job ID through the sequence's legacy comma-separated membership cache.
When to use this endpoint
Use when maintaining a legacy job that has no reliable recurrence_id property. The result is a recurrence ID, not the requested job ID.
Authentication and permissions
Authenticate with signed API-key fields or a logged-in CRM session. The handler adds no role, page, ownership or department-visibility check.
Reads the authenticated tenant. There is no active-only recurrence filter and no pagination.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id | Integer string | Yes | Positive job ID to search for as a complete comma-delimited token. |
Example request
$recurrence = FM_api('JobRecurrence_getRID', ['id'=>'1088']);
Example response
{"id":"1042"}
Returns the first matching row as {id:recurrenceId}; no match returns false. Database scalar ID remains a string.
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 or invalid parameter: id"} | Missing/nonpositive job ID. |
false | No cached sequence membership matches (or query failure). |
Legacy application errors may be returned with HTTP 200. Check the decoded response for error, not only the HTTP status.
Behaviour and edge cases
- Matches complete comma-delimited tokens, so 12 does not match 112. The saved ids text is not whitespace-normalized; ' 12' can fail to match.
- Does not check whether the requested job exists/is deleted and does not consult meetings.recurrence_id or job metadata.
- Inactive sequences are eligible. If multiple caches contain the job there is no ORDER BY, so do not rely on which recurrence wins.
- Read-only, one result via the database helper's LIMIT 1; no list pagination.
See it in Fieldmotion
CRM1
Open recurrence settings on a job. jobEdit and jobEditRecurrence call JobRecurrence_getRID with the job ID before loading the recurrence with get.
CRM2
No direct production CRM2 call was found. Its editor uses the job's recurrence_id when loading JobRecurrence_get.
Related endpoints
JobRecurrence_getreads the sequence returned here.JobRecurrence_checkJobIdscan remove stale membership references.