Введение
Возможности
API OKOCRM поддерживает чтение и запись контактов, компаний, сделок и других элементов системы. Это дает вам возможность, как просматривать, так и использовать дынные, которые храняться в OKOCRM в других своих сервисах.
Вы можете использовать API для импорта внешних данных в свою учетную запись OKOCRM.
Мы также работаем над интеграцией других сервисов в платформу OKOCRM. Эти сервисы будут доступны для всех пользователей OKOCRM для интеграции в платформу. Если вы планируете создать свою интеграцию, которая сможет использоваться на нашей платформе, свяжитесь с нами по адресу [email protected]
Как это работает?
API OKOCRM основано на RESTfull API. URL-адрес okocrm.com API v2: https://api.okocrm.com/v2/.
Авторизация
Заголовок запроса
Ко всем запросам к API необходимо добавить 2 header:
Accept: application/json Authorization: Bearer токенТокен можно получить в разделе личного профиля, в okocrm, в графе "Токен для API".
Обратите внимание, что все запросы к api будут иметь те же права, что имеет пользователь этого токена.
Пользователи
Список пользователей
Контакты
Список контактов
В списке возвращаемых полей, динамически выводятся дополнительные поля, которые являются уникальными у каждого клиента, в зависимости от настроек
Получить контакт
В списке возвращаемых полей, динамически выводятся дополнительные поля, которые являются уникальными у каждого клиента, в зависимости от настроек
Добавить контакт
В передаваемый список полей добавляются уникальные, для каждого клиента, поля которые настраиваются в системе
curl --location 'https://api.okocrm.com/v2/contacts' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{токен}}' \
--form 'name="Delbert Cummerata"' \
--form 'user_id="1"' \
--form 'phones[][phone]="464-313-2066"' \
--form 'emails[][email]="[email protected]"' \
--form 'tags[]="feed"'
package main
import (
"fmt"
"bytes"
"mime/multipart"
"net/http"
"io"
)
func main() {
url := "https://api.okocrm.com/v2/contacts"
method := "POST"
payload := &bytes.Buffer{}
writer := multipart.NewWriter(payload)
_ = writer.WriteField("name", "Carlton Corwin")
_ = writer.WriteField("user_id", "1")
_ = writer.WriteField("phones[][phone]", "204-857-4763")
_ = writer.WriteField("emails[][email]", "[email protected]")
_ = writer.WriteField("tags[]", "HDD")
err := writer.Close()
if err != nil {
fmt.Println(err)
return
}
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Accept", "application/json")
req.Header.Add("Authorization", "Bearer {{токен}}")
req.Header.Set("Content-Type", writer.FormDataContentType())
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': 'api.okocrm.com',
'path': '/v2/contacts',
'headers': {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
var postData = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nShelia Sawayn\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"user_id\"\r\n\r\n1\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"phones[][phone]\"\r\n\r\n201-325-1196\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"emails[][email]\"\r\n\r\[email protected]\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"tags[]\"\r\n\r\nrepurpose\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--";
req.setHeader('content-type', 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW');
req.write(postData);
req.end();
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.okocrm.com/v2/contacts',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('name' => 'Domingo Huel','user_id' => '1','phones[][phone]' => '599-318-0994','emails[][email]' => '[email protected]','tags[]' => 'Cambridgeshire'),
CURLOPT_HTTPHEADER => array(
'Accept: application/json',
'Authorization: Bearer {{токен}}'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://api.okocrm.com/v2/contacts"
payload = {'name': 'Lana Raynor',
'user_id': '1',
'phones[][phone]': '568-371-6852',
'emails[][email]': '[email protected]',
'tags[]': 'partnerships'}
files=[
]
headers = {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Изменить контакт
В передаваемый список полей добавляются уникальные, для каждого клиента, поля которые настраиваются в системе
Удалить контакт
Привязка сущностей
Компании
Список компаний
В списке возвращаемых полей, динамически выводятся дополнительные поля, которые являются уникальными у каждого клиента, в зависимости от настроек
Получить компанию
В списке возвращаемых полей, динамически выводятся дополнительные поля, которые являются уникальными у каждого клиента, в зависимости от настроек
Добавить компанию
В передаваемый список полей добавляются уникальные, для каждого клиента, поля которые настраиваются в системе
curl --location 'https://api.okocrm.com/v2/companies' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{токен}}' \
--form 'name="Boyd Hodkiewicz"' \
--form 'user_id="1"' \
--form 'phones[][phone]="546-722-7423"' \
--form 'emails[][email]="[email protected]"' \
--form 'tags[]="transmit"'
package main
import (
"fmt"
"bytes"
"mime/multipart"
"net/http"
"io"
)
func main() {
url := "https://api.okocrm.com/v2/companies"
method := "POST"
payload := &bytes.Buffer{}
writer := multipart.NewWriter(payload)
_ = writer.WriteField("name", "Brian Stoltenberg")
_ = writer.WriteField("user_id", "1")
_ = writer.WriteField("phones[][phone]", "765-323-5658")
_ = writer.WriteField("emails[][email]", "[email protected]")
_ = writer.WriteField("tags[]", "deposit")
err := writer.Close()
if err != nil {
fmt.Println(err)
return
}
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Accept", "application/json")
req.Header.Add("Authorization", "Bearer {{токен}}")
req.Header.Set("Content-Type", writer.FormDataContentType())
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': 'api.okocrm.com',
'path': '/v2/companies',
'headers': {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
var postData = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nSuzanne DuBuque\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"user_id\"\r\n\r\n1\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"phones[][phone]\"\r\n\r\n730-602-9619\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"emails[][email]\"\r\n\r\[email protected]\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"tags[]\"\r\n\r\nCustomizable\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--";
req.setHeader('content-type', 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW');
req.write(postData);
req.end();
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.okocrm.com/v2/companies',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('name' => 'Roland Schneider','user_id' => '1','phones[][phone]' => '962-994-0760','emails[][email]' => '[email protected]','tags[]' => 'deposit'),
CURLOPT_HTTPHEADER => array(
'Accept: application/json',
'Authorization: Bearer {{токен}}'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://api.okocrm.com/v2/companies"
payload = {'name': 'Winston Anderson Jr.',
'user_id': '1',
'phones[][phone]': '856-699-9699',
'emails[][email]': '[email protected]',
'tags[]': 'Clothing'}
files=[
]
headers = {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Изменить компанию
В передаваемый список полей добавляются уникальные, для каждого клиента, поля которые настраиваются в системе
Удалить компанию
Привязка сущностей
Сделки
Список сделок
В списке возвращаемых полей, динамически выводятся дополнительные поля, которые являются уникальными у каждого клиента, в зависимости от настроек
Получить сделку
В списке возвращаемых полей, динамически выводятся дополнительные поля, которые являются уникальными у каждого клиента, в зависимости от настроек
Создать сделку
В передаваемый список полей добавляются уникальные, для каждого клиента, поля которые настраиваются в системе
curl --location 'https://api.okocrm.com/v2/leads' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{токен}}' \
--form 'name="Est aut tenetur est quas ratione sed cum assumenda magni."' \
--form 'pipeline_id="2"' \
--form 'stages_id="4"' \
--form 'contact[name]="Mamie Kuhic MD"' \
--form 'contact[phone]="401-567-9280"' \
--form 'responsible="queue_24"' \
--form 'ip="122.193.218.217"' \
--form 'note[text]="Odit et et omnis eos natus hic reiciendis voluptatem.
Nobis sed iste est commodi.
Dolorem impedit quam error fuga in quas.
Ad rerum laboriosam magnam voluptate quo rerum voluptate."' \
--form 'tags[]="Accounts"'
package main
import (
"fmt"
"bytes"
"mime/multipart"
"net/http"
"io"
)
func main() {
url := "https://api.okocrm.com/v2/leads"
method := "POST"
payload := &bytes.Buffer{}
writer := multipart.NewWriter(payload)
_ = writer.WriteField("name", "Possimus enim consequuntur et id delectus.")
_ = writer.WriteField("pipeline_id", "2")
_ = writer.WriteField("stages_id", "4")
_ = writer.WriteField("contact[name]", "Sherman Kozey")
_ = writer.WriteField("contact[phone]", "539-688-0071")
_ = writer.WriteField("responsible", "queue_24")
_ = writer.WriteField("ip", "132.104.170.251")
_ = writer.WriteField("note[text]", "Totam officia saepe.\nOfficia quia quia aut possimus commodi tempore porro officia.\nItaque aliquid eos ratione.\nAb consectetur ratione.\nEius aut voluptas perferendis.")
_ = writer.WriteField("tags[]", "connect")
err := writer.Close()
if err != nil {
fmt.Println(err)
return
}
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Accept", "application/json")
req.Header.Add("Authorization", "Bearer {{токен}}")
req.Header.Set("Content-Type", writer.FormDataContentType())
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': 'api.okocrm.com',
'path': '/v2/leads',
'headers': {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
var postData = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nVelit molestias et mollitia magni vel.\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"pipeline_id\"\r\n\r\n2\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"stages_id\"\r\n\r\n4\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"contact[name]\"\r\n\r\nBrent Williamson\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"contact[phone]\"\r\n\r\n630-983-5879\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"responsible\"\r\n\r\nqueue_24\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"ip\"\r\n\r\n88.155.126.255\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"note[text]\"\r\n\r\nVoluptatem magnam voluptatem minima repellat earum voluptas.
Veritatis assumenda eos reprehenderit enim maxime ratione.
Rerum modi earum beatae tempora.
Dolor laudantium nesciunt deleniti ut qui qui.\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"tags[]\"\r\n\r\n24\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--";
req.setHeader('content-type', 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW');
req.write(postData);
req.end();
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.okocrm.com/v2/leads',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('name' => 'Possimus aut nihil accusamus recusandae aliquid recusandae.','pipeline_id' => '2','stages_id' => '4','contact[name]' => 'Francis Gulgowski','contact[phone]' => '812-503-8537','responsible' => 'queue_24','ip' => '124.155.223.111','note[text]' => 'Similique non corporis sed sed mollitia.
Corrupti veritatis voluptas perspiciatis maiores vitae est.','tags[]' => 'explicit'),
CURLOPT_HTTPHEADER => array(
'Accept: application/json',
'Authorization: Bearer {{токен}}'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://api-dev.okocrm.com/v2/leads"
payload = {'name': 'Eum aut amet voluptas tenetur dolore unde.',
'pipeline_id': '2',
'stages_id': '4',
'contact[name]': 'Delia Leffler',
'contact[phone]': '472-249-4705',
'responsible': 'queue_24',
'ip': '179.205.211.141',
'note[text]': 'Repellendus illum alias perferendis sed aut ipsa sed modi doloremque.
Quidem laudantium repellendus minima praesentium mollitia voluptas.
A minima ducimus qui quia.',
'tags[]': 'Focused'}
files=[
]
headers = {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Изменить сделку
В передаваемый список полей добавляются уникальные, для каждого клиента, поля которые настраиваются в системе
Удалить сделку
Привязка сущностей
Воронки
Список воронок
Этапы воронок
Список этапов
Задачи
Список задач
Создать задачу
curl --location 'https://api.okocrm.com/v2/tasks/' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{токен}}' \
--form 'lead_id="{lead_id}"' \
--form 'contact_id="{contact_id}"' \
--form 'company_id="{company_id}"' \
--form 'type_id="2"' \
--form 'text="Consequatur et repellendus voluptatem. Quas assumenda autem maiores. Harum ea expedita totam fugit similique maxime officiis dolorum. Esse error sint quam voluptatem dolores nisi consectetur nisi aut. Explicabo distinctio reiciendis."' \
--form 'executor_id="76"' \
--form 'date_start="2022-03-29 10:10"' \
--form 'date_finish="2022-03-29 12:10"'
package main
import (
"fmt"
"bytes"
"mime/multipart"
"net/http"
"io"
)
func main() {
url := "https://api.okocrm.com/v2/tasks/"
method := "POST"
payload := &bytes.Buffer{}
writer := multipart.NewWriter(payload)
_ = writer.WriteField("lead_id", "{lead_id}")
_ = writer.WriteField("contact_id", "{contact_id}")
_ = writer.WriteField("company_id", "{company_id}")
_ = writer.WriteField("type_id", "2")
_ = writer.WriteField("text", "Quaerat blanditiis earum maxime consequatur voluptatem et ut exercitationem. Animi magnam aut itaque autem et tempore fugiat. Corporis nisi distinctio.")
_ = writer.WriteField("executor_id", "76")
_ = writer.WriteField("date_start", "2022-03-29 10:10")
_ = writer.WriteField("date_finish", "2022-03-29 12:10")
err := writer.Close()
if err != nil {
fmt.Println(err)
return
}
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Accept", "application/json")
req.Header.Add("Authorization", "Bearer {{токен}}")
req.Header.Set("Content-Type", writer.FormDataContentType())
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': 'api.okocrm.com',
'path': '/v2/tasks/',
'headers': {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
var postData = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"lead_id\"\r\n\r\n{lead_id}\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"contact_id\"\r\n\r\n{contact_id}\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"company_id\"\r\n\r\n{company_id}\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"type_id\"\r\n\r\n2\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"text\"\r\n\r\nAccusantium non sit ipsa totam cupiditate non et nostrum. Nesciunt excepturi possimus necessitatibus itaque nostrum fuga aut ad fugit. Eum ex vero reprehenderit incidunt quia. Error dolor deleniti eos. Totam consectetur quae animi debitis. Et et natus debitis numquam.\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"executor_id\"\r\n\r\n76\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"date_start\"\r\n\r\n2022-03-29 10:10\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"date_finish\"\r\n\r\n2022-03-29 12:10\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--";
req.setHeader('content-type', 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW');
req.write(postData);
req.end();
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.okocrm.com/v2/tasks/',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('lead_id' => '{lead_id}','contact_id' => '{contact_id}','company_id' => '{company_id}','type_id' => '2','text' => 'Mollitia sunt illo ab quae qui. Earum enim aut. Fuga molestiae tenetur aut eaque voluptas cum accusantium rem. Aut officia harum molestiae. Magnam rerum omnis consequatur tenetur laudantium mollitia. Tenetur similique ex veritatis ipsa est.','executor_id' => '76','date_start' => '2022-03-29 10:10','date_finish' => '2022-03-29 12:10'),
CURLOPT_HTTPHEADER => array(
'Accept: application/json',
'Authorization: Bearer {{токен}}'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://api.okocrm.com/v2/tasks/"
payload = {'lead_id': '{lead_id}',
'contact_id': '{contact_id}',
'company_id': '{company_id}',
'type_id': '2',
'text': 'Nulla quasi vitae. Magnam laborum dolore aut id rerum tempore recusandae. Explicabo harum sed. Non tempore quidem exercitationem voluptate dignissimos atque nisi.',
'executor_id': '76',
'date_start': '2022-03-29 10:10',
'date_finish': '2022-03-29 12:10'}
files=[
]
headers = {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Изменить задачу
Удалить задачу
Задача выполнена + комментарий
Типы задачи
Список типов
Примечания
Добавить
Нужно передать 1 из 3 идентификаторов сущностей
curl --location 'https://api.okocrm.com/v2/notes/note' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{токен}}' \
--form 'lead_id="1725"' \
--form 'text="Nisi id sint consequuntur nulla autem. Aut illum possimus. Est nisi et et. Earum et omnis amet quod voluptates veritatis ipsam. Neque voluptatibus rem et. Nihil reprehenderit fuga."'
package main
import (
"fmt"
"bytes"
"mime/multipart"
"net/http"
"io"
)
func main() {
url := "https://api.okocrm.com/v2/notes/note"
method := "POST"
payload := &bytes.Buffer{}
writer := multipart.NewWriter(payload)
_ = writer.WriteField("lead_id", "1725")
_ = writer.WriteField("text", "Et eveniet atque pariatur minima blanditiis facilis. Aut aspernatur aliquam. Libero architecto aut recusandae.")
err := writer.Close()
if err != nil {
fmt.Println(err)
return
}
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Accept", "application/json")
req.Header.Add("Authorization", "Bearer {{токен}}")
req.Header.Set("Content-Type", writer.FormDataContentType())
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': 'api.okocrm.com',
'path': '/v2/notes/note',
'headers': {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
var postData = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"lead_id\"\r\n\r\n1725\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"text\"\r\n\r\nNihil quos sit repellat eos quo. Quas sed voluptatem quidem enim aut libero voluptatem. Inventore saepe rem aliquam qui quos. Molestiae velit exercitationem unde et veritatis tenetur.\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--";
req.setHeader('content-type', 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW');
req.write(postData);
req.end();
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.okocrm.com/v2/notes/note',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('lead_id' => '1725','text' => 'Optio velit quis velit reiciendis minima. Adipisci ea id sit iure incidunt. Hic explicabo ut ratione non iste sit voluptas. Pariatur quia culpa ad animi officia repudiandae. Aut sunt explicabo doloribus ex necessitatibus nisi amet. Saepe id inventore facilis id ut qui ea velit suscipit.'),
CURLOPT_HTTPHEADER => array(
'Accept: application/json',
'Authorization: Bearer {{токен}}'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://api.okocrm.com/v2/notes/note"
payload = {'lead_id': '1725',
'text': 'Aliquid minima quas debitis. Ipsum quos perspiciatis nihil laboriosam. Aliquid nihil molestias quisquam pariatur voluptatem maiores dolor. Et error quidem. Quidem quod pariatur.'}
files=[
]
headers = {
'Accept': 'application/json',
'Authorization': 'Bearer {{токен}}'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)