Работа с записными книжками для занятий

Область применения: корпоративные записные книжки в Office 365

В школах, колледжах и университетах по всему миру записные книжки для занятий используются для повышения уровня производительности, взаимодействия и сотрудничества. Вы можете использовать записные книжки для занятий для каждого занятия, проекта, условия и назначения.

Вы можете использовать конечную точку classNotebooks для выполнения общих задач для записных книжек для занятий, таких как их создание и добавление или удаление учащихся.

Примечание

API OneNote предоставляет конечную точкуclassNotebooks для операций, характерных для записных книжек для занятий.

Создание URI запроса

  1. Чтобы создать 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/

  1. Затем добавьте конечную точку 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

Bearer {token}, где {token} — это действительный маркер доступа OAuth 2.0 для зарегистрированного приложения.

Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 401. См. статью Аутентификация с использованием Azure AD (программы предприятия).

Заголовок Content-Type application/json
Заголовок Accept application/json
Область разрешений Notes.ReadWrite.CreatedByApp, Notes.ReadWrite или Notes.ReadWrite.All


Данные ответа Описание
Код успешного завершения Код состояния HTTP 201
Текст ответа Представление OData новой записной книжки в формате JSON.

Кроме обычных свойств записной книжки, записные книжки для занятий содержат следующие свойства:
  • studentSections. Разделы учащихся в записных книжках.
  • teachers. Преподаватели, которые могут получить доступ к записной книжке.
  • учащиеся. Учащиеся, которые могут получать доступ к записной книжке.
  • hasTeacherOnlySectionGroup. true если записная книжка содержит группу разделов Только преподаватель, в противном случае — false.
Ошибки В случае сбоя запроса 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

Bearer {token}, где {token} — это действительный маркер доступа OAuth 2.0 для зарегистрированного приложения.

Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 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

Bearer {token}, где {token} — это действительный маркер доступа OAuth 2.0 для зарегистрированного приложения.

Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 401. См. статью Аутентификация с использованием Azure AD (программы предприятия).

Заголовок Accept application/json
Область разрешений Notes.Read, Notes.ReadWrite.CreatedByApp, Notes.ReadWrite или Notes.ReadWrite.All


Данные ответа Описание
Код успешного завершения Код состояния HTTP 200
Текст ответа Представление записных книжек для занятий OData в формате JSON.

Кроме обычных свойств записной книжки, записные книжки для занятий содержат следующие свойства:
  • studentSections. Разделы учащихся в записных книжках.
  • teachers. Учителя, которые могут получить доступ к записной книжке.
  • student. Учащиеся, которые могут получать доступ к записной книжке.
  • hasTeacherOnlySectionGroup. true если записная книжка содержит группу разделов Только преподаватель, в противном случае — false.
Ошибки В случае сбоя запроса 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

Bearer {token}, где {token} — это действительный маркер доступа OAuth 2.0 для зарегистрированного приложения.

Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 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

Bearer {token}, где {token} — это действительный маркер доступа OAuth 2.0 для зарегистрированного приложения.

Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 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

Bearer {token}, где {token} — это действительный маркер доступа OAuth 2.0 для зарегистрированного приложения.

Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 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

Bearer {token}, где {token} — это действительный маркер доступа OAuth 2.0 для зарегистрированного приложения.

Если отсутствует или недействительно, при выполнении запроса будет возвращена ошибка с кодом состояния 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/

СегментversionURL-адреса представляет собой версию 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 работает только с проиндексированными сайтами. Для индексации нового сайта может потребоваться несколько часов.

См. также