---
# System prepended metadata

title: Untitled

---

## Системні функції

Кожен API хук має свій унікальний id та мінімальний рівень доступу. Рівень доступу визначає де саме ця функцiя може бути дозволенна. При перевірці доступів використовується наступний алгоритм:
1. Перевірити наявність  доступу на вибраному рівні
2. Якщо доступ наданий, виконати дію
3. Якщо доступ не знайдений, то перевірити вищий рівень

Приклад:
1. Для того що б скористатися апі для отримання списку сутностей(entities) які мали розмову з воркспейсом 45, необхідно використати наступний АПІ(systemFunctionId:29, permissionLevel: workspace) виклик
    ```
    axios.get(
      'https://api.rake.ai/entities?workspaceId=45',
      { headers: { authorization: <accessToken>}}
    )
    ```
    Спочатку перевіриться наявність системної функції на рівні workspace з id 45. Якщо її там не знайдено, буде проведенна перевірка на рівні project до якого відноситься цей воркспейс. Якщо її там не знайдено, то буде проведена перевіркан а рівні organization до якого відноситься цей проект.
2. Для того що б скористатися апі для отримання інформації про проект з id 42, необхідно використати наступний АПІ(systemFunctionId:44, permissionLevel: project) виклик
    ```
    axios.get(
      'https://api.rake.ai/projects?projectId=42',
      { headers: { authorization: <accessToken>}}
    )
    ```
    Спочатку перевіриться наявність системної функції на рівні project з id 42. Якщо її там не знайдено, то буде проведена перевіркан а рівні organization до якого відноситься цей проект.
    
## Рівні доступу


| level | description
| ----- | -----------
| workspace | Цей рівень доступу включає в себе у системні функції які дозволяють маніпулювати данними на рівні воркспейсу
| project | Цей рівень доступу включає в себе у системні функції які дозволяють маніпулювати данними на рівні проекту і використовувати системні функції воркспейсу
| organization | Цей рівень доступу включає в себе у системні функції які дозволяють маніпулювати данними на рівні організації і використовувати системні функції проекту


Кожен наступний рівень включає в себе усі системні функції нижчих рівнів. Таким чином на рівні проекту можуть бути видані системні функції на редагування воркспейсів.