1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-01-02 03:38:55 +02:00

Часть документации Notion

This commit is contained in:
Anton 2024-01-26 20:40:28 +03:00
parent f7f635be0a
commit 706d9ca2b9
14 changed files with 512 additions and 0 deletions

View File

@ -0,0 +1,8 @@
{
"label": "Работа с базами",
"position": 1,
"link": {
"type": "generated-index",
"description": "Эти методы позволяют работать с базами данных страниц"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

View File

@ -0,0 +1,191 @@
---
sidebar_position: 1
---
# Создать базу данных
Создает базу данных: определяет набор свойств, которые будут наследоваться всем страницам в базе
*Функция СоздатьБазуДанных(Знач Токен, Знач Родитель, Знач Заголовок, Знач Свойства = "") Экспорт*
| Параметр | Тип | Назначение |
|-|-|-|
| Токен | Строка | Токен интеграции |
| Родитель | Строка/Число | ID родительской страницы |
| Заголовок | Строка | Заголовок базы данных |
| Свойства | Соответствие | Ключ - Имя свойства, Значение - Тип (представлены в примере кода) |
Вовзращаемое значение: Соответствие - сериализованный JSON ответа от Notion
```bsl title="Пример кода"
Токен = "secret_9RsfMrRMqZwqp0Zl0B...";
Родитель = "5dd94c34fab04bff9...";
Заголовок = "Эта база была создана из 1С";
Свойства = Новый Соответствие;
Свойства.Вставить("Имя" , "title"); //Поле с типом title - обязательно
Свойства.Вставить("Описание" , "rich_text");
Свойства.Вставить("Номер" , "number");
Свойства.Вставить("Статус" , "status");
Свойства.Вставить("Дата создания" , "date");
Свойства.Вставить("Картинка" , "files");
Свойства.Вставить("Активен" , "checkbox");
Свойства.Вставить("Сайт" , "url");
Свойства.Вставить("Почта" , "email");
Свойства.Вставить("Телефон" , "phone_number");
Свойства.Вставить("Пользователь" , "people");
ВыборЗначения = Новый Соответствие;
ВыборЗначения.Вставить("Новый", "green");
ВыборЗначения.Вставить("В работе", "yellow");
ВыборЗначения.Вставить("Удаленный", "red");
Свойства.Вставить("Статус", ВыборЗначения);
Ответ = OPI_Notion.СоздатьБазуДанных(Токен, Родитель, Заголовок, Свойства);
Ответ = OPI_Инструменты.JSONСтрокой(Ответ);
```
![Результат](img/1.png)
```json title="Результат"
{
"request_id": "43adcae7-c8ee-4a7d-aba6-c2c43ad2c33b",
"public_url": null,
"url": "https://www.notion.so/048ba0ce4f474e33900540d249b01949",
"parent": {
"page_id": "5dd94c34-fab0-4bff-986b-7511c0779f77",
"type": "page_id"
},
"properties": {
"Картинка": {
"files": {},
"type": "files",
"name": "Картинка",
"id": "r%3Dfa"
},
"Активен": {
"checkbox": {},
"type": "checkbox",
"name": "Активен",
"id": "q%3FQF"
},
"Телефон": {
"phone_number": {},
"type": "phone_number",
"name": "Телефон",
"id": "hDII"
},
"Пользователь": {
"people": {},
"type": "people",
"name": "Пользователь",
"id": "%5D%40Md"
},
"Сайт": {
"url": {},
"type": "url",
"name": "Сайт",
"id": "THre"
},
"Описание": {
"rich_text": {},
"type": "rich_text",
"name": "Описание",
"id": "KnG%3F"
},
"Статус": {
"select": {
"options": [
{
"description": null,
"color": "red",
"name": "Удаленный",
"id": "a71d6e8a-4f3e-4dfd-9f0e-4d90e400fde7"
},
{
"description": null,
"color": "yellow",
"name": "В работе",
"id": "aa6300b4-c635-4ab4-b5cd-87d14e45dd11"
},
{
"description": null,
"color": "green",
"name": "Новый",
"id": "202b1d30-2095-40f1-8b91-f627d475d560"
}
]
},
"type": "select",
"name": "Статус",
"id": "IDW%3C"
},
"Номер": {
"type": "number",
"name": "Номер",
"number": {
"format": "number"
},
"id": "CH__"
},
"Дата создания": {
"date": {},
"type": "date",
"name": "Дата создания",
"id": "BQN%5B"
},
"Имя": {
"title": {},
"type": "title",
"name": "Имя",
"id": "title"
},
"Почта": {
"email": {},
"type": "email",
"name": "Почта",
"id": "%3CO%3AD"
}
},
"last_edited_time": "2024-01-26T16:49:00.000Z",
"description": [],
"created_by": {
"id": "8b07422e-eeea-40d1-8d5e-c784211825b0",
"object": "user"
},
"archived": false,
"icon": null,
"created_time": "2024-01-26T16:49:00.000Z",
"title": [
{
"plain_text": "Эта база была создана из 1С",
"annotations": {
"color": "default",
"code": false,
"underline": false,
"strikethrough": false,
"italic": false,
"bold": false
},
"text": {
"link": null,
"content": "Эта база была создана из 1С"
},
"href": null,
"type": "text"
}
],
"cover": null,
"is_inline": false,
"id": "048ba0ce-4f47-4e33-9005-40d249b01949",
"last_edited_by": {
"id": "8b07422e-eeea-40d1-8d5e-c784211825b0",
"object": "user"
},
"object": "database"
}
```

View File

@ -0,0 +1,8 @@
{
"label": "Работа с блоками",
"position": 3,
"link": {
"type": "generated-index",
"description": "Эти методы позволяют работать с блоками страниц"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

@ -0,0 +1,96 @@
---
sidebar_position: 1
---
# Создать блок
Создает блок внутри страницы на основе другого, заранее созданного, блока
*Функция СоздатьБлок(Знач Токен, Знач Родитель, Знач ИДБлока, Знач ВставитьПосле = "") Экспорт*
| Параметр | Тип | Назначение |
|-|-|-|
| Токен | Строка | Токен интеграции |
| Родитель | Строка | ID страницы, на которую необходимо вставить блок |
| ИДБлока | Строка | ID блока-образца, который необходимо скопировать на страницу |
| ВставитьПосле | Строка (необяз.) | ID блока, после которого необходимо вставить новый (для страниц с несколькими дочерними блоками, если необходимо) |
Вовзращаемое значение: Соответствие - сериализованный JSON ответа от Notion
```bsl title="Пример кода"
Токен = "secret_9RsfMrRMqZwqp0Zl0B...";
Родитель = "5dd94c34fab04bff9...";
Ответ = OPI_Notion.СоздатьБлок(Токен, Родитель, "ca18df269bd24407852b91c30e..."); //Заголовок: Это блок, воткнутый через API
Ответ = OPI_Notion.СоздатьБлок(Токен, Родитель, "46c1500ed40c4e89ba6a229003..."); //1. Ну, во-первых, это круто
Ответ = OPI_Notion.СоздатьБлок(Токен, Родитель, "aa4137d4c8cc445d9f969c3968..."); //2. Во-вторых, стильно
Ответ = OPI_Инструменты.JSONСтрокой(Ответ);
```
<br/>
### Как получить ID блока? ###
![ID](img/2.png)
<hr/>
<br/><br/>
![Результат](img/1.png)
```json title="Результат"
{
"request_id": "4de46f5b-d38b-4df5-b26e-32127db1096b",
"block": {},
"type": "block",
"has_more": false,
"next_cursor": null,
"results": [
{
"type": "numbered_list_item",
"archived": false,
"created_by": {
"id": "8b07422e-eeea-40d1-8d5e-c784211825b0",
"object": "user"
},
"last_edited_time": "2024-01-26T17:11:00.000Z",
"created_time": "2024-01-26T17:11:00.000Z",
"has_children": false,
"parent": {
"page_id": "5dd94c34-fab0-4bff-986b-7511c0779f77",
"type": "page_id"
},
"last_edited_by": {
"id": "8b07422e-eeea-40d1-8d5e-c784211825b0",
"object": "user"
},
"id": "b147fabd-53ea-42d5-bd23-85968f627f88",
"numbered_list_item": {
"color": "default",
"rich_text": [
{
"plain_text": "Во-вторых, стильно",
"annotations": {
"color": "default",
"code": false,
"underline": false,
"strikethrough": false,
"italic": false,
"bold": false
},
"text": {
"link": null,
"content": "Во-вторых, стильно"
},
"href": null,
"type": "text"
}
]
},
"object": "block"
}
],
"object": "list"
}
```

View File

@ -0,0 +1,8 @@
{
"label": "Работа с пользователями",
"position": 4,
"link": {
"type": "generated-index",
"description": "Эти методы позволяют получать информацию о пользователях"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

View File

@ -0,0 +1,47 @@
---
sidebar_position: 2
---
# Получить данные пользователя
Получает данные пользователя по ID
*Функция ПолучитьДанныеПользователя(Знач Токен, Знач ИДПользователя) Экспорт*
| Параметр | Тип | Назначение |
|-|-|-|
| Токен | Строка | Токен интеграции |
| ИДПользователя | Строка | ID целевого пользователя |
Вовзращаемое значение: Соответствие - сериализованный JSON ответа от Notion
```bsl title="Пример кода"
Токен = "secret_9RsfMrRMqZwqp0Zl0B...";
ИДПользователя = "ed71865a989146bc86cdwdf24...";
Ответ = OPI_Notion.ПолучитьДанныеПользователя(Токен, ИДПользователя);
Ответ = OPI_Инструменты.JSONСтрокой(Ответ);
```
```json title="Результат"
{
"request_id": "f33d34a8-f3cf-41b5-bdf5-4a07cf7d7118",
"person": {
"email": "ex@gmail.com"
},
"type": "person",
"avatar_url": null,
"name": "Bayselonarrend",
"id": "ed71865a-9891-1111-86cd-1111111",
"object": "user"
}
```
### Если нет прав на получение данных ###
То их нужно добавить в настройках интеграции на [https://developers.notion.com](https://developers.notion.com) (View my integrations в правом верхнем углу)
![Настройки](img/1.png)

View File

@ -0,0 +1,62 @@
---
sidebar_position: 1
---
# Получить список пользователей
Получает список пользователей рабочего пространства
*Функция СписокПользователей(Знач Токен) Экспорт*
| Параметр | Тип | Назначение |
|-|-|-|
| Токен | Строка | Токен интеграции |
Вовзращаемое значение: Соответствие - сериализованный JSON ответа от Notion
```bsl title="Пример кода"
Токен = "secret_9RsfMrRMqZwqp0Zl0B...";
Ответ = OPI_Notion.СписокПользователей(Токен);
Ответ = OPI_Инструменты.JSONСтрокой(Ответ);
```
```json title="Результат"
{
"request_id": "ea9a6b96-0b02-4866-a60a-2958e514af38",
"user": {},
"type": "user",
"has_more": false,
"next_cursor": null,
"results": [
{
"person": {
"email": "ex@gmail.com"
},
"type": "person",
"avatar_url": null,
"name": "Bayselonarrends",
"id": "ed71865a-9891-1111-86cd-11111111",
"object": "user"
},
{
"type": "bot",
"avatar_url": null,
"name": "1C Integration",
"bot": {
"workspace_name": "Bayselonarrends Notion",
"owner": {
"workspace": true,
"type": "workspace"
}
},
"id": "8b07422e-eeea-40d1-8d5e-c784211825b0",
"object": "user"
}
],
"object": "list"
}
```

View File

@ -0,0 +1,8 @@
{
"label": "Работа со страницами",
"position": 2,
"link": {
"type": "generated-index",
"description": "Эти методы позволяют работать со страницами"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

View File

@ -0,0 +1,84 @@
---
sidebar_position: 1
---
# Создать страницу
Создает страницу, дочернюю другой страницу
*Функция СоздатьСтраницу(Знач Токен, Знач Родитель, Знач Заголовок) Экспорт*
| Параметр | Тип | Назначение |
|-|-|-|
| Токен | Строка | Токен интеграции |
| Родитель | Строка/Число | ID родительской страницы |
| Заголовок | Строка | Заголовок страницы |
Вовзращаемое значение: Соответствие - сериализованный JSON ответа от Notion
```bsl title="Пример кода"
Токен = "secret_9RsfMrRMqZwqp0Zl0B...";
Родитель = "5dd94c34fab04bff9...";
Заголовок = "Создано из 1С";
Ответ = OPI_Notion.СоздатьСтраницу(Токен, Родитель, Заголовок);
Ответ = OPI_Инструменты.JSONСтрокой(Ответ);
```
![Результат](img/1.png)
```json title="Результат"
{
"request_id": "f145f634-ea3a-4f74-b079-f365ecbcf583",
"public_url": null,
"url": "https://www.notion.so/1-4392f919813c4c8d84017d973bddaabf",
"properties": {
"title": {
"title": [
{
"plain_text": "Создано из 1С",
"annotations": {
"color": "default",
"code": false,
"underline": false,
"strikethrough": false,
"italic": false,
"bold": false
},
"text": {
"link": null,
"content": "Создано из 1С"
},
"href": null,
"type": "text"
}
],
"type": "title",
"id": "title"
}
},
"parent": {
"page_id": "5dd94c34-fab0-4bff-986b-7511c0779f77",
"type": "page_id"
},
"cover": null,
"archived": false,
"created_by": {
"id": "8b07422e-eeea-40d1-8d5e-c784211825b0",
"object": "user"
},
"last_edited_time": "2024-01-26T17:20:00.000Z",
"icon": null,
"created_time": "2024-01-26T17:20:00.000Z",
"last_edited_by": {
"id": "8b07422e-eeea-40d1-8d5e-c784211825b0",
"object": "user"
},
"id": "4392f919-813c-4c8d-8401-7d973bddaabf",
"object": "page"
}
```