set_relationships
Overview
Sets multiple relationships between mulitiple record sets.
Available APIs
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
),
);