$apiRequest['params'][$key_id], 'version' => $apiRequest['version']); $existing = civicrm_api($apiRequest['entity'], 'get', $seek); if ($existing['is_error']) { return $existing; } if ($existing['count'] > 1) { return civicrm_api3_create_error("More than one " . $apiRequest['entity'] . " with id " . $apiRequest['params'][$key_id]); } if ($existing['count'] == 0) { return civicrm_api3_create_error("No " . $apiRequest['entity'] . " with id " . $apiRequest['params'][$key_id]); } $existing = array_pop($existing['values']); $p = array_merge($existing, $apiRequest['params']); return civicrm_api($apiRequest['entity'], 'create', $p); }