Работа с записными книжками для занятий
Область применения: корпоративные записные книжки в Office 365
В школах, колледжах и университетах по всему миру записные книжки для занятий используются для повышения уровня производительности, взаимодействия и сотрудничества. Вы можете использовать записные книжки для занятий для каждого занятия, проекта, условия и назначения.
Вы можете использовать конечную точку classNotebooks для выполнения общих задач для записных книжек для занятий, таких как их создание и добавление или удаление учащихся.
Примечание
API OneNote предоставляет конечную точкуclassNotebooks для операций, характерных для записных книжек для занятий.
Создание 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/
Затем добавьте конечную точку classNotebooks, после которой укажите путь к ресурсу:
Создание записных книжек для занятий
../classNotebooks[?omkt,sendemail]
Обновление записной книжки для занятий
../classNotebooks/{notebook-id}
Получение одной или нескольких записных книжек для занятий
../classNotebooks
../classNotebooks/{notebook-id}
Удаление записной книжки для занятий
../classNotebooks/{notebook-id}
Добавление учащихся или преподавателей
../classNotebooks/{notebook-id}/students
../classNotebooks/{notebook-id}/teachers
Удаление учащихся или преподавателей
../classNotebooks/{notebook-id}/students/{student-id}
../classNotebooks/{notebook-id}/teachers/{teacher-id}
../classNotebooks/{notebook-id}/copySectionsToContentLibrary
Ваш полный URI запроса будет выглядеть примерно так:
https://www.onenote.com/api/v1.0/me/notes/classNotebooks/{id}/teachers/{id}
https://www.onenote.com/api/v1.0/users/{id}/notes/classNotebooks/{id}/students
https://www.onenote.com/api/v1.0/myOrganization/siteCollections/{id}/sites/{id}/notes/classNotebooks
https://www.onenote.com/api/v1.0/myOrganization/groups/{id}/notes/classNotebooks/{id}
https://www.onenote.com/api/v1.0/me/notes/classNotebooks/{id}/copySectionsToContentLibrary
Примечание
Узнайте больше о корневом URL-адресе службы.
Создание записных книжек для занятий
Чтобы создать записную книжку для занятий, отправьте запрос POST конечной точке classNotebooks.
POST ../classNotebooks[?omkt,sendemail]
В тексте сообщения отправьте объект JSON с параметрами создания записной книжки для занятий.
{
"name": "notebook-name",
"studentSections": [
"section1-name",
"section2-name"
],
"teachers": [
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
}
],
"students": [
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
},
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
},
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
}
],
"hasTeacherOnlySectionGroup": true
}
Параметр | Описание |
---|---|
name | Имя записной книжки. |
studentSections | Массив, содержащий одно или несколько имен разделов. Эти разделы создаются в группе разделов каждого учащегося. |
преподаватели | Массив, содержащий один или несколько главных объектов. |
учащиеся | Массив, содержащий один или несколько главных объектов. Для каждого учащегося создается группа разделов. |
hasTeacherOnlySectionGroup | 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 ../classNotebooks?omkt=de-de
Поддерживаются следующие коды языков. Значение по умолчанию: en-us
.
Код | Язык |
---|---|
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 | 繁體中文 (台灣) |
Пример
Следующий запрос создает записную книжку для занятий с именем Математика 101.
POST ../v1.0/users/{teacher-id}/notes/classNotebooks?sendemail=true
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
{
"name": "Math 101",
"studentSections": [
"Handouts",
"Class Notes",
"Homework",
"Quizzes"
],
"teachers": [
{
"id": "teacher1@contoso.com",
"principalType": "Person"
}
],
"students": [
{
"id": "student1@contoso.com",
"principalType": "Person"
},
{
"id": "student2@contoso.com",
"principalType": "Person"
},
{
"id": "student3@contoso.com",
"principalType": "Person"
},
{
"id": "student4@contoso.com",
"principalType": "Person"
}
],
"hasTeacherOnlySectionGroup": true
}
Создается записная книжка для занятий с четырьмя группами секций учащихся, каждая из которых содержит разделы «Раздаточные материалы», «Записи занятий», «Домашние задания» и «Тесты». Группа разделов, созданная для каждого учащегося, доступна только учащемуся и преподавателю. Она также создает раздел Только преподаватель, который виден только преподавателю. Параметр запроса sendemail=true
определяет, отправляется ли преподавателю и учащимся уведомление по электронной почте о создании записной книжки.
Информация о запросах и ответах
Следующая информация относится к запросам POST /classNotebooks
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол 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, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Обновление записных книжек для занятий
Чтобы обновить записные книжки для занятий, отправьте запрос PATCH конечной точке classNotebooks/{notebook-id}.
Примечание
В настоящий момент в запросе PATCH можно обновить только свойство hasTeacherOnlySectionGroup.
PATCH ../classNotebooks/{notebook-id}
В тексте сообщения отправьте объект JSON с параметром обновления.
{
"hasTeacherOnlySectionGroup": true
}
Параметр | Описание |
---|---|
hasTeacherOnlySectionGroup | true для добавления группы разделов Только преподаватель, которая видна только преподавателям. false не поддерживается. |
См. эти методы для других способов замены записных книжек для занятий: Добавить учащихся или преподавателей, Удалить учащихся или преподавателей, Вставить разделы.
Пример
Следующий запрос добавляет группу разделовТолько преподаватель к указанной записной книжке для занятий.
PATCH ../v1.0/users/{teacher-id}/notes/classNotebooks/{notebook-id}
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
{
"hasTeacherOnlySectionGroup": true
}
Новая группа разделов Только преподаватель видна только преподавателям.
Информация о запросах и ответах
Следующая информация относится к запросам PATCH ../classNotebooks/{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, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Получение записных книжек для занятий
Чтобы получить одну или несколько записных книжек для занятий, отправьте запрос GET конечной точкеclassNotebooks.
Получение одной или нескольких записных книжек для занятий
GET ../classNotebooks[?filter,orderby,select,top,skip,expand,count]
Получение указанной записной книжки для занятий
GET ../classNotebooks/{notebook-id}[?select,expand]
Записные книжки могут расширять свойства teachers
и students
. По умолчанию используется порядок сортировки name asc
.
Записные книжки для занятий также возвращаются для запросов GET /notebooks
, но результаты не включают никаких свойств, характерных для записных книжек для занятий.
Пример
Следующий запрос получает записные книжки для занятий, созданные начиная с 1 января 2016 года.
GET ../v1.0/users/{teacher-id}/notes/classNotebooks?filter=createdTime%20ge%202016-01-01
Authorization: Bearer {token}
Accept: application/json
Чтобы узнать больше о получении записных книжек, включая поддерживаемые параметры строки запроса и примеры, см. статью Получение содержимого и структуры OneNote.
Информация о запросах и ответах
Следующая информация относится к запросам GET /classNotebooks
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол 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, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Удаление записных книжек для занятий
Чтобы удалить записные книжки для занятий, отправьте запрос DELETE конечной точке classNotebooks/{notebook-id}.
DELETE ../classNotebooks/{notebook-id}
Пример
Следующий запрос удаляет указанную записную книжку для занятий.
DELETE ../v1.0/users/{teacher-id}/notes/classNotebooks/{notebook-id}
Authorization: Bearer {token}
Accept: application/json
Информация о запросах и ответах
Следующая информация относится к запросам DELETE ../classNotebooks/{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, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Добавление учащихся и преподавателей
Добавление преподавателей и учащихся дает им доступ к записной книжке для занятий. Добавление учащегося также создает группу разделов учащихся. Эта группа разделов доступна только учащемуся и преподавателю и содержит разделы учащегося, определенные для записной книжки.
Чтобы добавить учащегося или преподавателя в записную книжку для занятий, отправьте запрос POST соответствующей конечной точке.
Добавление учащегося
POST ../classNotebooks/{notebook-id}/students
Добавление преподавателя
POST ../classNotebooks/{notebook-id}/teachers
Отправьте основной объект JSON в тексте сообщения. Вы можете добавить одного учащегося или одного преподавателя на каждый запрос.
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
}
Преподавателям и учащимся представляются основные объекты, которые обладают следующими свойствами:
Параметр | Описание |
---|---|
id | Имя участника-пользователя Office 365. Дополнительную информацию о пользователях и группах см. в документации API Azure AD Graph. |
principalType | Person или Group |
Пример
Следующий запрос добавляет преподавателя в указанную записную книжку для занятий.
POST ../v1.0/users/{teacher-id}/notes/classNotebooks/{notebook-id}/teachers
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
{
"id": "teacher2@contoso.com",
"principalType": "Person"
}
Информация о запросах и ответах
Следующая информация относится к запросам POST /students
и POST /teachers
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол 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, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Удаление учащихся и преподавателей
Удаление учащихся и преподавателей из записной книжки для занятий отменяет их доступ к записной книжке, но не удаляет содержимое.
Чтобы добавить учащегося или преподавателя в записную книжку для занятий, отправьте запрос DELETE соответствующей конечной точке.
Удаление учащегося
DELETE ../classNotebooks/{notebook-id}/students/{student-id}
Удаление преподавателя
DELETE ../classNotebooks/{notebook-id}/teachers/{teacher-id}
В одном запросе вы можете удалить одного учащегося или одного преподавателя.
Пример
Следующий запрос удаляет указанного учащегося из указанной записной книжки для занятий.
DELETE ../v1.0/users/{teacher-id}/notes/classNotebooks/{notebook-id}/students/{student-id}
Authorization: Bearer {token}
Accept: application/json
Информация о запросах и ответах
Следующая информация относится к запросам DELETE /students
и DELETE /teachers
.
Данные запроса | Описание |
---|---|
Протокол | Все запросы используют протокол 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, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Вставка разделов
Используйте copySectionsToContentLibrary для копирования определенных разделов из записных книжек Office 365 и вставки их в библиотеку содержимого записной книжки для занятий. Библиотека содержимого — это группа разделов внутри записной книжки для занятий, которая имеет разрешения на чтение/запись для преподавателей и разрешение на чтение для учащихся.
Чтобы вставить разделы в записную книжку для занятий, отправьте запрос POST конечной точке copySectionsToContentLibrary целевой записной книжки для занятий. Примеры:
POST ../classNotebooks/{notebook-id}/copySectionsToContentLibrary
В тексте сообщения отправьте объект JSON с параметром sectionIds.
{
"sectionIds": [
"section1-id",
"section2-id",
...
]
}
Параметр | Описание |
---|---|
sectionIds | Массив, содержащий идентификаторы разделов, которые вы хотите вставить в записную книжку для занятий. |
Пользователь должен иметь доступ к целевым разделам и записной книжке (собственной или используемой совместно). Все целевые объекты должны находиться на одном клиенте.
Пример
Следующий запрос вставляет два раздела в библиотеку содержимого указанной записной книжки для занятий.
POST ../v1.0/me/notes/classNotebooks/{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 при устранении неполадок совместно со службой поддержки Майкрософт. |
Назначение страницы для учащихся
Чтобы назначить страницу OneNote для учащегося, отправьте запрос POST конечной точке classNotebooks. Следующее действие доступно только для записных книжек объединенной группы.
POST ../groups/{id}/notes/classnotebooks/{id}/pages('{id}')/Microsoft.OneNote.Api.DistributePageToStudent
В тексте сообщения отправьте объект JSON с параметрами DistributePageToStudent.
{
"studentUserPrincipalName": "alias@tenant",
"lockStartDate": "DateTimeOffset",
"targetSectionName": "section-name",
"assignmentId":"assignment-id",
"ignoreIfStudentPageExists":true
}
Параметр | Описание |
---|---|
studentUserPrincipalName | Имя участника-пользователя Office 365. Дополнительные сведения о пользователях см. в документации по API Azure AD Graph. |
lockStartDate | Дата начала блокировки типа DateTimeOffset устанавливается на назначенной странице. После даты начала блокировки страница учащегося будет доступна только для чтения. Дополнительные сведения о блокировке страницы см. в разделе Использование блокировки страниц в записной книжке для занятий. |
targetSectionName | Страница копируется в раздел учащегося. Если страница учащегося не существует, она будет создана. |
assignmentId | (необязательно) Идентификатор задания устанавливается на назначенной странице. Если свойство установлено, для одного идентификатора задания должна быть опубликована одна страница, а значение lockStartDate будет определять дату выполнения задания. |
ignoreIfStudentPageExists | true если существует другая страница с тем же идентификатором задания, копирование страницы не выполняется. |
Данные ответа | Описание |
---|---|
Код успешного завершения | Код состояния HTTP 200 |
Текст ответа | Представление результата OData в формате JSON. Возвращаемое значение представляет собой идентификатор скопированной страницы учащегося. |
Ошибки | В случае сбоя запроса API возвращает ошибки в объекте @api.diagnostics в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Пример
POST https://www.onenote.com/api/v1.0/me/notes/classnotebooks/1-b60795e6-0345-4893-a878-ce365d246651/pages('1-b168ad794f2f469b8de2696dd737d2b3!69-d39b2f49-a8fc-4c92-894b-32a4c27595bb')/Microsoft.OneNote.Api.DistributePageToStudent
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
{
"studentUserPrincipalName": "student1@contoso.net",
"lockStartDate": "2018-12-15T23:17:16Z",
"targetSectionName": "quizes",
"assignmentId":"4cb4f3d3-d7fd-463b-beb5-526dafb7241d",
"ignoreIfStudentPageExists":true
}
Обновление даты начала блокировки страницы
Для обновления даты начала блокировки страницы OneNote отправьте запрос PATCH конечной точке страниц.
Дополнительные сведения о блокировке страницы см. в разделе Использование блокировки страниц в записной книжке для занятий.
PATCH ../pages/{page-id}
В тексте сообщения отправьте объект JSON со следующими данными запроса.
Данные запроса | Описание |
---|---|
blockEditsInClientStartDate | Структура DateTimeOffset, когда страница будет заблокирована для редактирования. Чтобы удалить дату начала блокировки, установите для свойства значение null; таким образом, оно будет удалено со страницы. |
Данные ответа | Описание |
---|---|
Код успешного завершения | Код состояния 204 HTTP No Content. |
Ошибки | В случае сбоя запроса API возвращает ошибки в объекте @api.diagnostics в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Пример
https://www..onenote.com/api/v1.0/me/notes/pages/1-126bc4155684422c827e1682b1e5f2ed!62-3a2cebc9-3121-4162-b84a-07e61671e653
{
“blockEditsInClientStartDate”:"2018-02-25T15:17:16.0938811-08:00"
}
Получение даты начала блокировки страницы
Чтобы получить дату начала блокировки, установленную на странице, отправьте запрос GET конечной точке страниц API, чтобы получить страницу (метаданные) с параметром запроса blockEditsInClientStartDate=true
.
GET ../pages/{page-id}?blockEditsInClientStartDate=true
Дополнительные сведения об отправке запроса странице см. в разделе Пути к ресурсам для запросов GET.
Дополнительные сведения о блокировке страницы см. в разделе Использование блокировки страниц в записной книжке для занятий.
Данные ответа | Описание |
---|---|
Код успешного завершения | Код состояния HTTP 200 |
Текст ответа | Представление OData страницы в формате JSON. Данное предсталвение содержит значение свойства blockEditsInClientStartDate. |
Ошибки | В случае сбоя запроса API возвращает ошибки в объекте @api.diagnostics в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Пример
GET https://www.onenote.com/api/v1.0/me/notes/pages/1-126bc4155684422c827e1682b1e5f2ed!62-3a2cebc9-3121-4162-b84a-07e61671e653?blockEditsInClientStartDate=true
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
Ответ
{
…
“blockEditsInClientStartDate”:”1985-02-25T23:17:16Z”
…
}
Обновление членства
Действие UpdateMembership выполняет синхронизацию записной книжки для занятий по умолчанию из объединенной группы с ее членством.
Владельцы объединенной группы будут добавлены в записную книжку для занятий в качестве преподавателей, а участники будут добавлены в качестве учащихся.
Для синхронизации членства записной книжки для занятий по умолчанию с объединенной группой отправьте запрос POST конечной точке classNotebooks. Следующее действие доступно только для записной книжки по умолчанию из объединенной группы.
POST ../classnotebooks/Microsoft.OneNote.Api.UpdateMembership
Данные ответа | Описание |
---|---|
Код успешного завершения | Код состояния 204 HTTP No Content. |
Ошибки | В случае сбоя запроса API возвращает ошибки в объекте @api.diagnostics в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Пример
В следующем примере выполняется синхронизация записной книжки для занятий по умолчанию с идентификатором объединенной группы.
Запрос
POST https://www.onenote.com/api/v1.0/myOrganization/groups/1d13f814-83e5-4c11-8294-53bf40defd91/notes/classnotebooks/ Microsoft.OneNote.Api.UpdateMembership
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
Восстановление записной книжки для занятий
Для восстановления записной книжки для занятий отправьте запрос POST конечной точке classNotebooks.
POST ../classnotebooks/{notebook-id}/Microsoft.OneNote.Api.RepairNotebook
Действие odata выполняет чтение списка учащихся и преподавателей из метаданных записной книжки для занятий. Затем выполняется повторное применение разрешений учащихся для групп их раздела, _Content Library и _Collaboration Space. Также выполняется повторное применение разрешений учащихся для групп раздела Students, _Content Library, _Collaboration Space и_teacher only.
Для объединенных групп членство в группе не обновляется; используйте вместо этого действие UpdateMembership.
POST ../classnotebooks/{notebook-id}/Microsoft.OneNote.Api.RepairNotebook
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
Данные ответа | Описание |
---|---|
Код успешного завершения | Код состояния 204 HTTP No Content. |
Ошибки | В случае сбоя запроса API возвращает ошибки в объекте @api.diagnostics в тексте ответа. |
Заголовок X-CorrelationId | GUID, уникальный идентификатор запроса. Это значение можно использовать вместе со значением заголовка Date при устранении неполадок совместно со службой поддержки Майкрософт. |
Пример
POST https://www.onenote.com/api/v1.0/me/notes/classnotebooks/1-b60795e6-0345-4893-a878-ce365d246651/Microsoft.OneNote.Api.RepairNotebook
Создание корневого 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 не изменяется, что означает, что вы не можете использовать путь сайта SharePoint REST API и затем добавить к нему конечную точку notes.
Пользователь, от имени которого вы осуществляете вызов, должен быть участником сайта.
FromUrl работает только с проиндексированными сайтами. Для индексации нового сайта может потребоваться несколько часов.
См. также
- Записные книжки OneNote для занятий (обзор и функции)
- Работа с асинхронными записными книжками для занятий
- Работа со служебными записными книжками
- Разработка OneNote
- Получение содержимого и структуры Onenote
- Центр разработки OneNote
- Блог разработчиков OneNote
- Вопросы разработки OneNote на сайте Stack Overflow
- Репозитории GitHub OneNote