The steps below explain how to update a custom field arm, which includes the arm name, its audiences, and its action.
| Step | Name | Endpoint | Details |
|---|---|---|---|
| List arms | POST /v3/companies/{companyId}/custom-fields/{customFieldId}/arms/list | List all the arms created for a custom field. URL path requires: companyId retrieved from the get company API, and customFieldId from Step 1 of the creating a custom field workflow or from the listing custom fields workflow.Request body: Use the optional searchText field to filter and find a specific arm. You can also pass a filter object with tripUsageTypes to return only the arms that apply to particular trip usage types. The request body itself is required, so send an empty object if you do not need either field.Response will contain: the list of arms along with information such as the id, name, audiences, and action.Note: Inside an arm object the identifier property is called id, not armId.Other APIs will use: the id of the arm (also referred to as armId in other APIs). | |
| Get arm (optional) | GET /v3/companies/{companyId}/custom-fields/{customFieldId}/arms/{armId} | Retrieve and view a specific arm for a custom field. URL path requires: companyId, customFieldId, and armId from Step 1.Response will contain: a single arm, with its id, name, audiences, and action.Other APIs will use: the arm id. | |
| Update arm | PUT /v3/companies/{companyId}/custom-fields/{customFieldId}/arms/{armId} | Update the details of an arm. URL path requires: companyId, customFieldId, and armId from Step 1.Request body requires: the full arm object, including name and action. The arm being updated is identified by the armId path parameter, not by the request body. Because this is a full replacement rather than a partial update, any optional field you leave out is cleared, so send the complete arm exactly as you want it to end up.Response will contain: a 200 status code indicating the update was successful. You can then view the updated information using the get arm API.Note: The update arm API can only be used to update the arm name, audiences, and action. If you wish to update the options (i.e., the responses) for an arm, use the updating options for a custom field arm workflow. | |
| Delete arm | DELETE /v3/companies/{companyId}/custom-fields/{customFieldId}/arms/{armId} | Delete a single arm from a custom field when it is no longer needed. URL path requires: companyId, customFieldId, and armId from Step 1.Response will contain: a 200 status code indicating the arm was deleted.Note: If the arm used a manually defined option list, its option group and all of the options in that group are removed with it. Note: A custom field with no arms never applies to any traveler. So deleting the last arm stops the custom field from appearing at checkout. |