Несколько непонятно, а как контролировать добавление/изменение реквизитов адрес через REST. Через REST создал компанию crm.company.add - OK добавил реквизиты crm.requisite.add - OK теперь хочу к созданным реквизитам добавить адреса, и тут не совсем понятно: https://dev.1c-bitrix.ru/rest_help/crm/requisite/methods/crm_address_add.php
А как указать, что нужно привязать адрес к нужной компании, а не последней созданной? В самой таблице (b_crm _addr) видно, что есть поле ANCHOR_ID, которое только для чтения, оно как раз и указывает на номер компании. И в методе crm.address.update тоже нет намёка, как обновить адреса у нужной компании.
PS. Создал в самом Bitrix компанию, видим следующее: fields: {"TYPE_ID": 1, "ENTITY_TYPE_ID": 8, "ENTITY_ID": 40, "ANCHOR_TYPE_ID": 4, "ANCHOR_ID": 58, "ADDRESS_1": "Воткинсое шоссе, 162", "CITY": "Ижевск" } где 1 - фактический адрес 8 - ID реквизита (описан тут bitrix/modules/crm/classes/general/crm_owner_type.php) 40 - номер реквизита (b_crm_requisite) созданной компании 4 - ID компании (описан тут bitrix/modules/crm/classes/general/crm_owner_type.php) 58 - номер компании
больше номер 58 нигде не встречается в пределах таблицы адреса.
в общем, разобрался, немного не так надо понимать инфу на сайте dev (Набор полей - массив вида array("обновляемое поле"=>"значение"[, ...]), содержащий значения полей адреса. Где "обновляемое поле" может принимать значения из возвращаемых методом crm.address.fields)
TYPE_ID, ENTITY_TYPE_ID, ENTITY_ID - по сути эти 3 поля и являются тем, на основе чего ищется и обновляется адрес. Обновить значения этих полей нельзя, можно только добавить новые.