Работа со служебными записными книжками
Область применения: корпоративные записные книжки в Office 365
В школах, колледжах и университетах во всем мире используются служебные записные книжки для повышения производительности, взаимодействия и сотрудничества.
Вы можете использовать конечную точку staffNotebooks для выполнения типовых задач для служебных записных книжек, таких как создание служебных записных книжек и добавление или удаление руководителей или участников.
Примечание
API OneNote предоставляет конечную точкуstaffNotebooks для операций, характерных для служебных записных книжек.
Конструирование URI запроса
Чтобы сконструировать URI запроса, начните с корневого URL-адреса службы для своей платформы:
Записные книжки OneDrive для бизнеса
https://www.onenote.com/api/v1.0/me/notes/
https://www.onenote.com/api/v1.0/users/{id}/notes/
Записные книжки на сайте SharePoint
https://www.onenote.com/api/v1.0/myOrganization/siteCollections/{id}/sites/{id}/notes/
Записные книжки для единых групп
https://www.onenote.com/api/v1.0/myOrganization/groups/{id}/notes/
Затем добавьте конечную точку staffNotebooks, за которой укажите путь к ресурсу:
Создать служебные записные книжки
../staffNotebooks[?omkt,sendemail]
Обновить служебную записную книжку
../staffNotebooks/{notebook-id}
Получить одну или несколько служебных записных книжек
../staffNotebooks
../staffNotebooks/{notebook-id}
Удалить служебную записную книжку
../staffNotebooks/{notebook-id}
Добавить участников или руководителей
../staffNotebooks/{notebook-id}/members
../staffNotebooks/{notebook-id}/leaders
Удалить участников или руководителей
../staffNotebooks/{notebook-id}/members/{member-id}
../staffNotebooks/{notebook-id}/leaders/{leader-id}
../staffNotebooks/{notebook-id}/copySectionsToContentLibrary
Ваш полный URI запроса будет выглядеть примерно так:
https://www.onenote.com/api/v1.0/me/notes/staffNotebooks/{id}/leaders/{id}
https://www.onenote.com/api/v1.0/users/{id}/notes/staffNotebooks/{id}/members
https://www.onenote.com/api/v1.0/myOrganization/siteCollections/{id}/sites/{id}/notes/staffNotebooks
https://www.onenote.com/api/v1.0/myOrganization/groups/{id}/notes/staffNotebooks/{id}
https://www.onenote.com/api/v1.0/me/notes/staffNotebooks/{id}/copySectionsToContentLibrary
Примечание
Узнайте больше о корневом URL-адресе службы.
Создать служебные записные книжки
Чтобы создать служебную записную книжку, отправьте запрос POST на конечную точку staffNotebooks.
POST ../staffNotebooks[?omkt,sendemail]
В тексте сообщения отправьте объект JSON с параметрами создания служебной записной книжки.
{
"name": "notebook-name",
"memberSections": [
"section1-name",
"section2-name"
],
"leaders": [
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
}
],
"members": [
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
},
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
},
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
}
],
"hasLeaderOnlySectionGroup": true
}
Параметр | Описание |
---|---|
name | Имя записной книжки. |
memberSections | Массив, содержащий одно или несколько имен разделов. Эти разделы создаются в группе разделов каждого участника. |
руководители | Массив, содержащий один или несколько главных объектов. |
members | Массив, содержащий один или несколько главных объектов. Для каждого участника создается группа разделов. |
hasLeaderOnlySectionGroup | true для создания группы разделов Только руководитель, которая видна только руководителям. |
omkt | Параметр запроса URL-адреса, в котором указан язык записной книжки. Значение по умолчанию: en-us . Пример: ?omkt=es-es |
sendemail | Параметр запроса URL-адреса, в котором указано, отправляется по электронной почте уведомление о создании записной книжки тем руководителям и участникам, которым назначена записная книжка. Значение по умолчанию: false . |
Руководители и участники представлены главными объектами, которые содержат следующие свойства:
Параметр | Описание |
---|---|
id | Имя участника-пользователя Office 365. Дополнительную информацию о пользователях и группах см. в документации API Azure AD Graph. |
principalType | Person или Group |
Поддерживаемые языки
Можно использовать параметр запроса URL-адреса omkt={language-code}
для создания служебной записной книжки на определенном языке. Примеры:
POST ../staffNotebooks?omkt=de-de
Поддерживаются следующие коды языков. Значение по умолчанию: en-us
.
Код | Language |
---|---|
bg-bg | Български (България) |
cs-cz | Čeština (Česká republika) |
da-dk | Dansk (Danmark) |
de-de | Deutsch (Deutschland) |
el-gr | Ελληνικά (Ελλάδα) |
en-us | Английский (США) |
es-es | Español (España) |
et-ee | Eesti (Eesti) |
fi-fi | Suomi (Suomi) |
fr-fr | Français (France) |
hi-in | हिंदी (भारत) |
hr-hr | Hrvatski (Hrvatska) |
hu-hu | Magyar (Magyarország) |
id-id | Bahasa Indonesia (Indonesia) |
it-it | Italiano (Italia) |
ja-jp | 日本語 (日本) |
kk-kz | Қазақ (Қазақстан) |
ko-kr | 한국어 (대한민국) |
lt-lt | Lietuvių (Lietuva) |
lv-lv | Latviešu (Latvija) |
ms-my | Bahasa Melayu (Asia Tenggara) |
nb-no | Norsk (Norge) |
nl-nl | Nederlands (Nederland) |
pl-pl | Polski (Polska) |
pt-br | Português (Brasil) |
pt-pt | Português (Portugal) |
ro-ro | Română (România) |
ru-ru | Русский (Россия) |
sk-sk | Slovenčina (Slovenská republika) |
sl-si | Slovenski (Slovenija) |
sr-Latn-RS | Srpski (Rep. Srbija i Rep. Crna Gora) |
sv-se | Svenska (Sverige) |
th-th | ไทย (ไทย) |
tr-tr | Türkçe (Türkiye) |
uk-ua | Українська (Україна) |
vi-vn | Tiếng Việt (Việt Nam) |
zh-cn | 简体中文 (中国) |
zh-tw | 繁體中文 (台灣) |
Пример
В следующем запросе создается служебная записная книжка с именем Встречи персонала.
POST ../v1.0/users/{leader-id}/notes/staffNotebooks?sendemail=true
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
{
"name": "Staff Meetings",
"memberSections": [
"Staff Notes",
"Meeting Summaries",
],
"leaders": [
{
"id": "leader1@contoso.com",
"principalType": "Person"
}
],
"members": [
{
"id": "member1@contoso.com",
"principalType": "Person"
},
{
"id": "member2@contoso.com",
"principalType": "Person"
},
{
"id": "member3@contoso.com",
"principalType": "Person"
},
{
"id": "member4@contoso.com",
"principalType": "Person"
}
],
"hasLeaderOnlySectionGroup": true
}
При этом создается записная книжки с четырьмя группами разделов участников, каждая из которых содержит раздел «Раздаточные материалы», «Заметки о сотрудниках» и «Сведения о собрании». Создаваемая для каждого участника группа разделов доступна только этому участнику и руководителю. При этом также создается группа разделов Только руководитель, которая видная только руководителю. Параметр sendemail=true
запроса определяет, отправляется ли руководителю и участникам уведомление по электронной почте о создании записной книжки.
Информация о запросах и ответах
Следующая информация относится к запросам POST /staffNotebooks
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол SSL/TLS для HTTPS. |
Заголовок Authorization |
Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 401. См. статью Аутентификация с использованием Azure AD (программы предприятия). |
Заголовок Content-Type | application/json |
Заголовок Accept | application/json |
Область разрешений | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite или Notes.ReadWrite.All |
Данные в ответе | Описание |
---|---|
Код успешного завершения | Код состояния HTTP 201 |
Текст ответа | Представление OData новой записной книжки в формате JSON. Кроме обычных свойств записной книжки, служебные записные книжки содержат следующие свойства:
|
Ошибки | Если запрос завершается с ошибкой, API возвращает ошибки в объекте @api.diagnostics в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Вы можете использовать это значение вместе со значением заголовка «Дата» при работе с технической поддержкой Майкрософт по поиску и устранению неполадок. |
Обновление служебных записных книжек
Чтобы обновить служебную записную книжку, отправьте запрос PATCH на конечную точку staffNotebooks/{notebook-id}.
Примечание
В настоящий момент свойство hasLeaderOnlySectionGroup можно обновить только в запросе PATCH.
PATCH ../staffNotebooks/{notebook-id}
В тексте сообщения отправьте объект JSON с параметром обновления.
{
"hasLeaderOnlySectionGroup": true
}
Параметр | Описание |
---|---|
hasLeaderOnlySectionGroup | true чтобы добавить группу разделов Только руководитель, которая видна только руководителям. false не поддерживается. |
Информацию о других способах изменения служебных записных книжек можно найти в этих методах: Добавить участников или руководителей, Удалить участников или руководителей, Вставить разделы.
Пример
Следующий запрос добавляет группу разделов Только руководитель в указанную служебную записную книжку.
PATCH ../v1.0/users/{leader-id}/notes/staffNotebooks/{notebook-id}
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
{
"hasLeaderOnlySectionGroup": true
}
Новая группа разделов Только руководитель видна только руководителям.
Информация о запросах и ответах
Следующая информация относится к запросам PATCH ../staffNotebooks/{notebook-id}
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол SSL/TLS для HTTPS. |
Заголовок Authorization |
Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 401. См. статью Аутентификация с использованием Azure AD (программы предприятия). |
Заголовок Content-Type | application/json |
Заголовок Accept | application/json |
Область разрешений | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite или Notes.ReadWrite.All |
Данные в ответе | Описание |
---|---|
Код успешного завершения | Код состояния HTTP 204. |
Ошибки | В случае сбоя запроса API возвращает ошибки в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Вы можете использовать это значение вместе со значением заголовка «Дата» при работе с технической поддержкой Майкрософт по поиску и устранению неполадок. |
Получить служебные записные книжки
Чтобы получить одну или несколько служебных записных книжек, отправьте запрос GET на конечную точкуstaffNotebooks.
Получить одну или несколько служебных записных книжек
GET ../staffNotebooks[?filter,orderby,select,top,skip,expand,count]
Получить конкретную служебную записную книжку
GET ../staffNotebooks/{notebook-id}[?select,expand]
Записные книжки могут расширять свойства leaders
и members
. По умолчанию используется порядок сортировки name asc
.
Служебные записные книжки также возвращаются по запросам GET /notebooks
, но результаты не включают никаких свойств, характерных для записных книжек.
Пример
Следующий запрос получает служебные записные книжки, созданные 1 января 2016 года и позднее.
GET ../v1.0/users/{leader-id}/notes/staffNotebooks?filter=createdTime%20ge%202016-01-01
Authorization: Bearer {token}
Accept: application/json
Чтобы узнать больше о получении записных книжек, включая поддерживаемые параметры строки запроса и примеры см. статью Получение содержимого и структуры OneNote.
Информация о запросах и ответах
Следующая информация относится к запросам GET /staffNotebooks
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол SSL/TLS для HTTPS. |
Заголовок Authorization |
Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 401. См. статью Аутентификация с использованием Azure AD (программы предприятия). |
Заголовок Accept | application/json |
Область разрешений | Notes.Read, Notes.ReadWrite.CreatedByApp, Notes.ReadWrite или Notes.ReadWrite.All |
Данные в ответе | Описание |
---|---|
Код успешного завершения | Код состояния HTTP 200 |
Текст ответа | Представление OData служебных записных книжек в формате JSON. Кроме обычных свойств записной книжки, служебные записные книжки содержат следующие свойства:
|
Ошибки | Если запрос завершается с ошибкой, API возвращает ошибки в объекте @api.diagnostics в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Вы можете использовать это значение вместе со значением заголовка «Дата» при работе с технической поддержкой Майкрософт по поиску и устранению неполадок. |
Удалить служебные записные книжки
Чтобы удалить служебную записную книжку, отправьте запрос DELETE на конечную точку staffNotebooks/{notebook-id}.
DELETE ../staffNotebooks/{notebook-id}
Пример
Следующий запрос удаляет указанную служебную записную книжку.
DELETE ../v1.0/users/{leader-id}/notes/staffNotebooks/{notebook-id}
Authorization: Bearer {token}
Accept: application/json
Информация о запросах и ответах
Следующая информация относится к запросам DELETE ../staffNotebooks/{notebook-id}
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол SSL/TLS для HTTPS. |
Заголовок Authorization |
Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 401. См. статью Аутентификация с использованием Azure AD (программы предприятия). |
Заголовок Accept | application/json |
Область разрешений | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite или Notes.ReadWrite.All |
Данные в ответе | Описание |
---|---|
Код успешного завершения | Код состояния HTTP 204. |
Ошибки | В случае сбоя запроса API возвращает ошибки в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Вы можете использовать это значение вместе со значением заголовка «Дата» при работе с технической поддержкой Майкрософт по поиску и устранению неполадок. |
Добавить участников и руководителей
Добавление руководителей и участников предоставляет им доступ к служебной записной книжки. Добавление участника также приводит к созданию группы разделов. Данная группа разделов доступна только участнику и руководителю и содержит разделы участников, которые определены для записной книжки.
Чтобы добавить участника или руководителя в служебную записную книжку, отправьте запрос POST на соответствующую конечную точку.
Добавить участника
POST ../staffNotebooks/{notebook-id}/members
Добавить руководителя
POST ../staffNotebooks/{notebook-id}/leaders
Отправьте главный объект JSON в тексте сообщения. В одном запросе можно добавить одного участника и одного руководителя.
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
}
Руководители и участники представлены главными объектами, которые содержат следующие свойства:
Параметр | Описание |
---|---|
id | Имя участника-пользователя Office 365. Дополнительную информацию о пользователях и группах см. в документации API Azure AD Graph. |
principalType | Person или Group |
Пример
Следующий запрос добавляет руководителя в указанную служебную записную книжку.
POST ../v1.0/users/{leader-id}/notes/staffNotebooks/{notebook-id}/leaders
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
{
"id": "leader2@contoso.com",
"principalType": "Person"
}
Информация о запросах и ответах
Следующая информация относится к запросам POST /members
и POST /leaders
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол SSL/TLS для HTTPS. |
Заголовок Authorization |
Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 401. См. статью Аутентификация с использованием Azure AD (программы предприятия). |
Заголовок Content-Type | application/json |
Заголовок Accept | application/json |
Область разрешений | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite или Notes.ReadWrite.All |
Данные в ответе | Описание |
---|---|
Код успешного завершения | Код состояния HTTP 201 |
Текст ответа | Добавленный участник или руководитель. |
Ошибки | Если запрос завершается с ошибкой, API возвращает ошибки в объекте @api.diagnostics в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Вы можете использовать это значение вместе со значением заголовка «Дата» при работе с технической поддержкой Майкрософт по поиску и устранению неполадок. |
Удалит участников и руководителей
Удаление участников и руководителей из служебной записной книжки отменяет их доступ к записной книжке, но не удаляет никакое содержимое.
Чтобы удалить участника или руководителя из служебной записной книжки, отправьте запрос DELETE на соответствующую конечную точку.
Удалить участника
DELETE ../staffNotebooks/{notebook-id}/members/{member-id}
Удалить руководителя
DELETE ../staffNotebooks/{notebook-id}/leaders/{leader-id}
В одном запросе можно удалить одного участника и одного руководителя.
Пример
Следующий запрос удаляет указанного участника из указанной записной книжки.
DELETE ../v1.0/users/{leader-id}/notes/staffNotebooks/{notebook-id}/members/{member-id}
Authorization: Bearer {token}
Accept: application/json
Информация о запросах и ответах
Следующая информация относится к запросам DELETE /members
и DELETE /leaders
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол SSL/TLS для HTTPS. |
Заголовок Authorization |
Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 401. См. статью Аутентификация с использованием Azure AD (программы предприятия). |
Заголовок Accept | application/json |
Область разрешений | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite или Notes.ReadWrite.All |
Данные в ответе | Описание |
---|---|
Код успешного завершения | Код состояния HTTP 204. |
Ошибки | Если запрос завершается с ошибкой, API возвращает ошибки в объекте @api.diagnostics в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Вы можете использовать это значение вместе со значением заголовка «Дата» при работе с технической поддержкой Майкрософт по поиску и устранению неполадок. |
Вставить разделы
Используйте copySectionsToContentLibrary для копирования определенных разделов из записных книжек Office 365 и вставки их в библиотеку содержимого служебной записной книжки. Библиотека содержимого — это группа разделов внутри служебной записной книжки, у которой есть разрешения на чтение/запись для руководителей и разрешение на чтение для участников.
Чтобы вставить разделы в служебную записную книжку, отправьте запрос POST на конечную точку copySectionsToContentLibrary целевой служебной записной книжки. Примеры:
POST ../staffNotebooks/{notebook-id}/copySectionsToContentLibrary
В тексте сообщения отправьте объект JSON с параметром sectionIds.
{
"sectionIds": [
"section1-id",
"section2-id",
...
]
}
Параметр | Описание |
---|---|
sectionIds | Массив, содержащий идентификаторы разделов, которые вы хотите вставить в служебную записную книжку. |
Пользователь должен иметь доступ к целевым разделам и записной книжке (собственной или используемой совместно). Все целевые объекты должны находиться на одном клиенте.
Пример
Следующий запрос вставляет два раздела в библиотеку содержимого указанной служебной записной книжки.
POST ../v1.0/me/notes/staffNotebooks/{notebook-id}/copySectionsToContentLibrary
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
{
"sectionIds": [
"1-85ba33b1-4959-4102-8dcd-d98e4e56e56f",
"1-8ba42j81-4959-4102-8dcd-d98e4e94s62ef"
]
}
Информация о запросах и ответах
Следующая информация относится к запросам POST /copySectionsToContentLibrary
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол SSL/TLS для HTTPS. |
Заголовок Authorization |
Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 401. См. статью Аутентификация с использованием Azure AD (программы предприятия). |
Заголовок Content-Type | application/json |
Заголовок Accept | application/json |
Область разрешений | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite или Notes.ReadWrite.All |
Данные в ответе | Описание |
---|---|
Код успешного завершения | Код состояния HTTP 201. |
Ошибки | В случае сбоя запроса на создание API возвращает ошибки в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Конструирование корневого URL-адреса службы OneNote
Для всех вызовов API OneNote используется следующий формат корневого URL-адреса службы OneNote.
https://www.onenote.com/api/{version}/{location}/notes/
Сегментversion
URL-адреса представляет собой версию API OneNote, которую вы хотите использовать.
Используйте значение
v1.0
для стабильного рабочего кода.Используйте значение
beta
, чтобы опробовать функцию, находящуюся на стадии разработки. Функции бета-версии могут меняться, поэтому не следует использовать их в рабочем коде.
Сегмент location
URL-адреса представляет собой местоположение записных книжек, к которым вы хотите получить доступ:
Записные книжки OneDrive для бизнеса
Использование
me
для содержимого OneNote, принадлежащего текущему пользователю.Используйте значение
users/{id}
для содержимого OneNote, которым указанный (в URL-адресе) пользователь поделился с текущим пользователем. ИспользуйтеAzure AD Graph API для получения идентификаторов пользователей.
Записные книжки на сайте SharePoint
Сайты групп и другие сайты SharePoint могут содержать записные книжки OneNote в своих библиотеках документов.
Используйте
myOrganization/siteCollections/{id}/sites/{id}
для содержимого OneNote на сайте в клиенте, к которому подключен текущий пользователь. Поддерживается только текущий клиент, доступ к которому осуществляется с помощью ключевого словаmyOrganization
. Узнайте, как получить Идентификаторы сайта.
Записные книжки для единых групп
Единые группы (также называемые группами Office 365) являются частью облачной среды Office 365. Участники группы могут делиться записными книжками, файлами и электронной почтой.
Используйте
myOrganization/groups/{id}
для содержимого OneNote в указанной группе, членом которой является текущий пользователь. Единые группы являются единственным поддерживаемым типом группы. ИспользуйтеAzure AD Graph API для получения идентификаторов группы.
Используйте метод FromUrl для получения идентификаторов семейства веб-узлов и сайта
Вы можете использовать метод FromUrl для получения идентификаторов семейства веб-узлов и сайтов для указанного абсолютного URL-адреса сайта. Вы должны осуществить этот вызов только при необходимости, а затем сохранить значения для будущего использования.
Формат URL-адреса сайта зависит от вашей конфигурации, например, https://domain.sharepoint.com/site-a
или https://domain.com/sites/site-a
.
Пример запроса
GET https://www.onenote.com/api/v1.0/myOrganization/siteCollections/FromUrl(url='{full-path-to-SharePoint-site}')
Authorization: Bearer {token}
Accept: application/json
Пример отклика
{"@odata.context":"https://www.onenote.com/api/v1.0/$metadata#Microsoft.OneNote.Api.SiteMetadata", "siteCollectionId":"09d1a587-a84b-4264-3d15-669429be8cc5", "siteId":"d9e4d5c8-683f-4363-89ae-18c4e3da91e9"}
Требования к использованию FromUrl и работа с записными книжками сайта SharePoint:
Вы можете создавать только записные книжки OneNote, группы разделов, разделы и страницы на сайтах с библиотекой документов по умолчанию. (Некоторые шаблоны сайтов не создают библиотеку документов по умолчанию.) Однако, запросы GET возвращают содержимое OneNote из всех библиотек документов на сайте.
URL-адрес корневого каталога для обслуживания OneNote неизменяем, что означает, что вы не можете использовать путь сайта REST API и затем добавить на него конечную точку
notes
.Пользователь, от имени которого вы осуществляете вызов, должен быть участником сайта.
FromUrl работает только с проиндексированными сайтами. Для индексации нового сайта может потребоваться несколько часов.