Это обычные HTTP запросы от сервера к серверу. В некоторых сервисах может называться HTTP нотификацией, как в случае с CoMagic. Поддерживаются повсеместно:
POST https://yourdomain/<service>/<event_name>/<project_id>
GET https://yourdomain/<service>/<event_name>/<project_id>?param=values&...
или без id проекта (будет записан 0)
POST https://yourdomain/<service>/<event_name>
часть значений могут быть переданы GET параметрами, в т.ч. имя события и id проекта
GET https://yourdomain/<service>/<event_name>?param=values&...
GET https://yourdomain/<service>/<event_name>?projectId=<project_id>&...
GET https://yourdomain/<service>?name=<event_name>&projectId=<project_id>&...
даже при POST запросе
POST https://yourdomain/<service>?name=<event_name>&projectId=<project_id> <<< {data: "mydaa"}
Обычный GET запрос
$ curl https://test.rstat.org/calltrack/call/99?param=myparamvalue
{"key":"in.gen.calltrack.call","id":"6462462774336290816"}
Значения name
и projectId
можно передать GET параметрами
$ curl https://test.rstat.org/calltrack?name=call
{"key":"in.gen.calltrack.call","id":"6462463595723620353"}
POST запрос с передачей данных в виде JSON
$ curl -X POST -H "Content-Type: application/json" https://yourdomain/calltrack/call \\
-d '{"key1":"value1", "key2":"value2"}'
{"key":"in.gen.calltrack.call","id":"6462462774336290816"}
POST запрос с передачей данных в виде urlencoded
$ curl -X POST -H "Content-Type: application/x-www-form-urlencoded" https://yourdomain/calltrack/call \\
-d "param1=value1¶m2=value26"
{"key":"in.gen.calltrack.call","id":"6462462774336290816"}
В сервисы попадет сообщение
{
"key": "in.gen.calltrack.call",
"channel": "http",
"service": "calltrack",
"name": "call",
"projectId": 0,
"uid": "6462464730849083392",
"td": { "ip": "109.252.93.158", "ua": "curl/7.60.0" },
"data": {
"param1": "value1",
"param2": "value26"
},
"id": "6462464730849083393",
"time": 1540771658623
}