Przejdź do głównej zawartości

Ringostat API. Tworzenie i dodawanie pracownika do działu

Metoda API do tworzenia i dodawania pracownika do działu

Napisane przez Valentyna Shevchuk
Zaktualizowano ponad tydzień temu

Ta metoda umożliwia automatyczne tworzenie nowych pracowników wraz z kontami SIP za pośrednictwem API.

Za pomocą tej metody możesz:

  • utworzyć nowego pracownika,

  • utworzyć konto SIP dla tego pracownika,

  • przypisać pracownika do jednego lub kilku działów.

Podstawowe parametry żądania:

  • Adres żądania API: https://api.ringostat.net/a/v2

  • Metoda: POST

  • Metoda Json-rpc: Api\V2\Staff.addStaff

  • Auth-key: klucz elektroniczny umożliwiający dostęp do projektu w Ringostat

  • projectId: identyfikator projektu

Nagłówki żądania:

  • Content-Type - application/json

  • auth-key - klucz elektroniczny umożliwiający dostęp do projektu w Ringostat

  • x-project-id - identyfikator projektu

Treść żądania:

Nazwa parametru

Typ danych

Wymagany

Opis

projectId

string

Tak

Identyfikator projektu (określony w bloku dostępu)

creatorId

string

Tak

Identyfikator użytkownika tworzącego pracownika

access

string

Tak

Poziom dostępu pracownika (1 - admin, 2 - analityk, 4 - menedżer)

wire

string

Tak

Imię i nazwisko pracownika

email

string

Tak

Adres e-mail pracownika

extensionNumber

string

Tak

Numer wewnętrzny pracownika (2-5 cyfr)

directions

object

Tak

Konfiguracja kierunków połączeń pracownika

departments

array

Tak. Może = null

Tablica nazw działów (bez rozróżniania wielkości liter)

isHasAccessToPowerDialer

boolean

Nie (domyślnie: false)

Dostęp do Power Dialer

Przykład dla Node.js:

const https = require('https');
const data = JSON.stringify({
jsonrpc: "2.0",
method: "Api\\V2\\Staff.addStaff",
params: {
projectId: "123",
creatorId: "456",
access: "user",
fio: "Ivan Petrenko",
email: "[email protected]",
extensionNumber: "1001",
directions: {
main: [
{
type: "sip",
direction: "1001",
password: "securePassword123",
enabledForAwd: true,
isMobile: false
}
],
additional: []
},
departments: ["Main"],
isHasAccessToPowerDialer: true
},
id: 1
});
const config = {
host: 'api.ringostat.net',
path: '/v2',
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Content-Length': data.length,
'Auth-key': 'your_unique_auth_key'
}
};
const callback = (response) => {
thet result = Buffer.alloc(0);
response.on('data', chunk => {
result = Buffer.concat([result, chunk]);
});
response.on('end', () => {
console.log(result.toString());
});
};
const request = https.request(config, callback);
request.write(data);
request.end();

Przykład dla Axios.js:

const axios = require('axios');
axios({
url: 'https://api.ringostat.net/v2',
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Auth-key': 'your_unique_auth_key'
},
data: {
jsonrpc: "2.0",
method: "Api\\V2\\Staff.addStaff",
params: {
projectId: "123",
creatorId: "456",
access: "user",
fio: "Ivan Petrenko",
email: "[email protected]",
extensionNumber: "1001",
directions: {
main: [
{
type: "sip",
direction: "1001",
password: "securePassword123",
enabledForAwd: true,
isMobile: false
}
],
additional: []
},
departments: ["Secondary"],
isHasAccessToPowerDialer: true
},
id: 1
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error.response?.data || error.message);
});

Przykład dla cURL:

curl -X POST "https://api.ringostat.net/v2" \
-H "Content-Type: application/json" \
-H "Auth-key: your_unique_auth_key" \
-d '{
"jsonrpc": "2.0",
"method": "Api\\V2\\Staff.addStaff",
"params": {
"projectId": "123",
"creatorId": "456",
"access": "user",
"fio": "Ivan Petrenko",
"email": "[email protected]",
"extensionNumber": "1001",
"directions": {
"main": [
{
"type": "sip",
"direction": "1001",
"password": "securePassword1234!",
"enabledForAwd": true,
"isMobile": false
}
],
"additional": []
},
"departments": ["Main"],
"isHasAccessToPowerDialer": true
},
"id": 1
}'

Wynik:

{
"jsonrpc": "2.0",
"result": {
"result": true
},
"id": 1
}

Ograniczenia:

  • Maksymalnie 6 kierunków połączeń na pracownika

  • Maksymalnie 3 konta SIP w kierunkach głównych

  • Maksymalnie 3 konta SIP w kierunkach dodatkowych

  • Maksymalnie 3 numery telefonów w kierunkach głównych

  • Maksymalnie 3 numery telefonów w kierunkach dodatkowych

  • Numer wewnętrzny: 2-5 cyfr

  • Hasło SIP: minimum 14 znaków

  • Imię i nazwisko: tylko litery i spacje

  • E-mail: prawidłowy format adresu e-mail

Czy to odpowiedziało na twoje pytanie?