Let the platform do the work

set_relationships

Overview

Sets multiple relationships between mulitiple record sets.

Available APIs

  • SOAP
  • REST

Definition

set_relationships(session, module_names, module_ids, link_field_names, related_ids, name_value_lists, delete_array)

Parameters

Name Type Description
session String Session ID returned by a previous login call.
module_names select_fields | Array The list of modules from which to retrieve records. Note: This is the modules key which may not be the same as the modules display name.
module_ids select_fields | Array The list of IDs for the specified module records.
link_field_names select_fields | Array The list of link names for the related modules.
related_ids new_set_relationhip_ids | Array The list of related record IDs you are relating.
name_value_lists name_value_lists | Array An array of arrays specifying relationship fields to populate. An example of this is contact_role between Opportunities and Contacts.
delete_array deleted_array | Array An array determining whether the relationships are being created or deleted. 0:create, 1:delete

Result

Name Type Description
result new_set_relationship_list_result | Array The call result.
result.created Integer The number of relationships created.
result.failed Integer Determines whether or not the relationship failed. This is normally thrown when the parameters module_name or link_field_name are incorrect.
result.deleted Integer The number of relationships deleted.

Change Log

Version Change
v2 Removed set_relationship_value parameter.
v2 Added module_names parameter.
v2 Added module_ids parameter.
v2 Added link_field_names parameter.
v2 Added related_ids parameter.
v2 Added name_value_lists parameter.
v2 Added delete_array parameter.
v2 Return type was changed from set_relationship_list_result to new_set_relationship_list_result.

Examples

PHP

$set_relationships_parameters = array(
    //session id
    'session' => $session_id,

    //The name of the modules from which to relate records.
    'module_names' => array(
        'Opportunities',
        'Accounts',
    ),

    //The IDs of the specified module beans.
    'module_ids' => array(
        '15e79b92-5025-827f-0784-50aa578270d8', //Opportunity ID
        '27035f04-f6ec-492d-b89e-50aa57f5247f'  //Account ID
    ),

    //The relationship names of the linked fields from which to relate records.
    'link_field_names' => array(
        'contacts', //Contacts link field to Opportunities
        'leads' //Leads link field to Accounts
    ),

    //The lists of record ids to relate
    'related_ids' => array(
        //Contact IDs
        array(
            '19b8799e-64ae-9502-588c-50aa575454c9'
        ),

        //Lead IDs
        array(
            '16d8d519-5f56-0984-2092-50aa576a7333',
            '15ae07eb-63f0-dbac-6e4c-50aa57c5a609'
        ),
    ),

    //Sets the value for relationship based fields
    'name_value_lists' => array(
        //Opportunity-Contact relationship fields
        array(
            array(
                'name' => 'contact_role',
                'value' => 'Other'
            ),
        ),

        //Account-Lead relationship fields
        array(),
    ),

    //Whether or not to delete the relationships. 0:create, 1:delete
    'delete_array'=> array(
        0, //Opportunity-Contact
        0 //Account-Lead
    ),
);

Topics