DataService API - как удалить из ContactCommunication одно из 5 значений поля Skype

Подозреваю что должно выглядеть это как то так, но не получается:

 

$url = 'https://MYSITE.bpmonline.com/0/DataService/json/reply/UpdateQuery';

                $arr = [
                    'RootSchemaName' => "Contact",
                    'OperationType' => "Delete",
                    'ColumnValues' => [
                        'Items' => [
                            'Skype' => [
                                'ExpressionType' => 'Parameter',
                                'Parameter' => [
                                    'DataValueType' => 'Text',
                                    'Value' => 'skype_login_4'
                                ]
                            ]                
                        ]
                    ],
                    'Filters' => [
                        'RootSchemaName' => 'Contact',
                        'FilterType' => 'FilterGroup',
                        'Items' => [
                                'FilterByUsrMainMail' => [
                                    'FilterType' => 'CompareFilter',
                                    'ComparisonType' => 'Equal',
                                    'LeftExpression' => [
                                        'ExpressionType' => 'SchemaColumn',
                                        'ColumnPath' => 'UsrMainMail'
                                    ],
                                    'RightExpression' => [
                                        'ExpressionType' => 'Parameter',
                                        'Parameter' => [
                                            'DataValueType' => 'Text',
                                            'Value' => contactemail@example.com
                                        ]
                                    ]
                                ]
                        ]
                    ]
                ];

$this->crm_curl($url, $arr, 10);

Нравится

1 комментарий

Добрый день.

Рекомендую сначала попробовать отправлять запросы через Fiffler. Например, запрос с телом 

{
   "QueryType":2,
   "Filters":{
      "FilterType":6,
      "ComparisonType":0,
      "Items":{
         "FilterByName":{
            "FilterType":1,
            "ComparisonType":3,
            "LogicalOperation":0,
            "LeftExpression":{
               "ExpressionType":0,
               "ColumnPath":"Number",
            },
            "RightExpression":{
               "ExpressionType":2,
               "Parameter":{
                  "DataValueType":1,
                  "Value":"Skup4",
               },
            },
         }
      },
   },
   "RootSchemaName":"ContactCommunication",
   "OperationType":0
}

удалит скайп "Skup4". И не забывайте про куки, и заголовки, более подробно на академии (запрос изменится для DataService) https://academy.terrasoft.ua/documents/technic-sdk/7-12/vypolnenie-zapr…

Показать все комментарии