Как передать данные из формы в AMOCRM с помощью API?

Как передать поля формы (имя, телефон, почта) в систему AMOCRM с использованием их API, после того как вы получили visitor_uid и записали его в скрытое поле формы?
  • 4 апреля 2024 г. 4:29
Ответы на вопрос 2
Для передачи данных из формы в систему AMOCRM с помощью их API необходимо выполнить следующие шаги:

1. Получить API ключ и секретный ключ из настроек вашего аккаунта AMOCRM.
2. Создать скрипт на сервере, который будет отправлять запросы к API AMOCRM.
3. В скрипте необходимо сформировать запрос к методу API, который отвечает за создание нового контакта или сделки в системе AMOCRM.
4. В этом запросе необходимо передать данные из полей формы (имя, телефон, почта), а также visitor_uid, который вы получили и записали в скрытое поле формы.
5. Обработать ответ от API и вывести информацию о результате сохранения данных в системе AMOCRM.

Пример запроса к API AMOCRM для создания контакта с использованием библиотеки PHP cURL:

```php
$apiUrl = 'https://youraccount.amocrm.ru/api/v2/contacts';
$apiKey = 'your_api_key';
$apiSecret = 'your_api_secret';

$data = [
    'add' => [
        [
            'name' => 'Имя контакта',
            'custom_fields' => [
                [
                    'id' => '123456', // ID поля телефона в системе AMOCRM
                    'values' => [
                        [
                            'value' => 'Введенный_телефон'
                        ]
                    ]
                ],
                [
                    'id' => '654321', // ID поля почты в системе AMOCRM
                    'values' => [
                        [
                            'value' => 'Введенная_почта'
                        ]
                    ]
                ],
                [
                    'id' => '987654', // ID скрытого поля visitor_uid в системе AMOCRM
                    'values' => [
                        [
                            'value' => 'Значение_visitor_uid'
                        ]
                    ]
                ]
            ]
        ]
    ]
];

$curl = curl_init();
curl_setopt_array($curl, [
    CURLOPT_URL => $apiUrl,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_HTTPHEADER => [
        'Content-Type: application/json',
        'Authorization: Bearer ' . base64_encode($apiKey . ':' . $apiSecret)
    ],
    CURLOPT_POSTFIELDS => json_encode($data)
]);

$response = curl_exec($curl);
curl_close($curl);

$result = json_decode($response, true);
```

Обратите внимание, что вам нужно заменить `youraccount`, `your_api_key`, `your_api_secret`, `123456`, `654321`, `987654`, `Введенный_телефон`, `Введенная_почта` и `Значение_visitor_uid` на соответствующие значения из вашего аккаунта AMOCRM и данных формы.

После выполнения запроса вы получите ответ от API AMOCRM с информацией о созданном контакте или ошибке, если что-то пошло не так.
У битрикса часто используют входящие вебхуки для внесения данных в amoCRM. 

Чтобы сделать по аналогии в amoCRM вам необходимо воспользоваться готовым виджетом стороннего сервиса, который реализует схожую функциональность.

Например, https://help.webjack.ru/integrations/8/2/ HTTP-запрос. Получение данных → amoCRM. Создание сделки

т.е. ваш пользователь заполнил данные в вебформе на вашем сайте, затем вы их отправили на вебхук сервиса webjack, а он соответсвенно передаст эти данные через свою интеграцию в ваш портал amoCRM.

Если вы не хотите использовать сторонний сервис, то реализуете свою интеграцию, на ютубе есть туториалы как это сделать
https://www.youtube.com/watch?v=C4Mfh902o0s
https://www.youtube.com/watch?v=CxQcB5AsyHI
Похожие вопросы