younifyd
Menu

Create or update records in a specified module

Create or update records in a specified module

POST/{module}/upsert

Use it in a workflow

  1. Add a step and choose the Zoho CRM connector.
  2. Pick the Create or update records in a specified module action (under Records).
  3. Fill in the fields below, then reference the result from later steps as {{createOrUpdateRecordsInASpecifiedModule.response.data}}.

Request

Path parameters

modulestringrequired

Specify the API name of the module. Use the [Get Modules API](modules.yaml#$.paths./settings/modules.get) to retrieve the module ID and API name.

Request body

Enter the body as JSON in the step's Body field.

dataarray<object>required

List of records to be created or updated using the upsert operation.

$append_valuesstring

Represents the $append values value.

Layoutobject1 fields

Represents the layout value. Use the [Get Layouts Metadata API](layouts.yaml#$.paths./settings/layouts.get) to retrieve the Layout ID.

triggerarray<string>

Specifies the CRM features to execute for the API request. Supported values are "workflow", "approval", and "blueprint". If the "trigger" parameter is not specified, workflows, approvals, and blueprints related to the API are executed. Specify an empty array [] to prevent these features from executing.

duplicate_check_fieldsarray<string>

Specifies the fields used to check for duplicate records during an Upsert operation. Duplicate check fields can be system-defined unique fields or user-defined unique fields. The following are the system-defined duplicate check fields for the respective modules: Leads - "Email"; Accounts - "Account_Name"; Contacts - "Email"; Deals - "Deal_Name"; Campaigns - "Campaign_Name"; Cases - "Subject"; Solutions - "Solution_Title"; Products - "Product_Name"; Vendors - "Vendor_Name"; PriceBooks - "Price_Book_Name"; Quotes - "Subject"; SalesOrders - "Subject"; PurchaseOrders - "Subject"; Invoices - "Subject"; Custom Modules - "Name". If a matching record is found based on these fields, the record is updated; otherwise, a new record is inserted.

wf_triggerstring | null

Workflow trigger identifier to be executed as part of the upsert operation.

lar_idstring

The unique ID of the assignment rule to trigger while inserting a record. Use the Get Assignment Rules API to retrieve valid values. This key must be provided parallel to the data key. Supported for all modules where assignment rules are applicable, such as Leads, Contacts, Deals, Accounts, Tasks, Cases, and Custom.

json
{
  "data": [
    {
      "$append_values": "string",
      "Layout": {
        "id": "4832675000000850800"
      }
    }
  ],
  "trigger": [
    "approval"
  ],
  "duplicate_check_fields": [
    "string"
  ],
  "wf_trigger": "string",
  "lar_id": "string"
}

Response

Returns 200 with an object. Read it in later steps with {{createOrUpdateRecordsInASpecifiedModule.response.data.<field>}}.

dataarray<object>

Represents the data value.

codestringrequired

Represents the data value.

One ofSUCCESS

duplicate_fieldstring | nullrequired

Represents the data value.

actionstringrequired

Represents the data value.

One ofinsertupdate

messagestringrequired

Represents the data value.

statusstringrequired

Represents the data value.

One ofsuccess

detailsobjectrequired6 fields

Represents the data value.

json
{
  "data": [
    {
      "code": "SUCCESS",
      "duplicate_field": "Email",
      "action": "insert",
      "message": "Record successfully upserted.",
      "status": "success",
      "details": {
        "id": "string",
        "Modified_Time": "2025-01-01T00:00:00Z",
        "Created_Time": "2025-01-01T00:00:00Z",
        "Created_By": {
          "name": "string",
          "id": "string"
        },
        "Modified_By": {
          "name": "string",
          "id": "string"
        },
        "$approval_state": "string"
      }
    }
  ]
}

Need more? See the Zoho CRM guide for connection setup and behaviour shared by every action.