Como trabalhar com blocos de anotações de classe
Aplica-se aos: Blocos de anotações corporativos no Office 365
Escolas, faculdades e universidades em todo o mundo usam blocos de anotações de classe para ajudar a promover a produtividade, o compromisso e a colaboração. Você pode usar blocos de anotações de classe para cada aula, projeto, semestre e tarefa.
Você pode usar o ponto de extremidade de classNotebooks para executar tarefas comuns de blocos de anotações de classe, como criar blocos de anotações de classe e adicionar ou remover alunos.
Observação
A API do OneNote fornece o ponto de extremidade de classNotebooks para operações específicas para blocos de anotações de classe.
Construção do URI de solicitação
Para construir o URI de solicitação, inicie com a URL raiz do serviço para a sua plataforma:
Blocos de anotações no OneDrive for Business
https://www.onenote.com/api/v1.0/me/notes/
https://www.onenote.com/api/v1.0/users/{id}/notes/
Blocos de anotações do site do SharePoint
https://www.onenote.com/api/v1.0/myOrganization/siteCollections/{id}/sites/{id}/notes/
Blocos de anotações de grupo unificados
https://www.onenote.com/api/v1.0/myOrganization/groups/{id}/notes/
Acrescente o ponto de extremidade classNotebooks, seguido de um caminho de recurso, conforme necessário:
Criação de blocos de anotações de classe
../classNotebooks[?omkt,sendemail]
Atualizar um bloco de anotações de classe
../classNotebooks/{notebook-id}
Obter um ou mais blocos de anotações de classe
../classNotebooks
../classNotebooks/{notebook-id}
Excluir um bloco de anotações de classe
../classNotebooks/{notebook-id}
Adicionar alunos ou professores
../classNotebooks/{notebook-id}/students
../classNotebooks/{notebook-id}/teachers
../classNotebooks/{notebook-id}/students/{student-id}
../classNotebooks/{notebook-id}/teachers/{teacher-id}
../classNotebooks/{notebook-id}/copySectionsToContentLibrary
Seu URI completo da solicitação será parecido com estes exemplos:
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
Observação
Saiba mais sobre a URL raiz de serviço.
Criação de blocos de anotações de classe
Para criar um bloco de anotações de classe, envie uma solicitação POST para o ponto de extremidade de classNotebooks.
POST ../classNotebooks[?omkt,sendemail]
No corpo da mensagem, envie um objeto JSON com os parâmetros de criação do bloco de anotações de classe.
{
"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
}
Parâmetro | Descrição |
---|---|
name | O nome do bloco de anotações. |
studentSections | Uma matriz contendo um ou mais nomes de seção. Essas seções são criadas no grupo de seções de cada aluno. |
teachers | Uma matriz contendo um ou mais objetos de segurança. |
alunos | Uma matriz contendo um ou mais objetos de segurança. Um grupo de seções é criado para cada aluno. |
hasTeacherOnlySectionGroup | true para criar um grupo de seções Somente para professores, que é visível apenas para professores. |
omkt | Parâmetro de consulta de URL que especifica o idioma do bloco de anotações. O padrão é en-us . Exemplo: ?omkt=es-es |
sendemail | Parâmetro de consulta de URL que especifica se é necessário enviar uma notificação por email quando o bloco de anotações é criado para os professores e alunos atribuídos ao bloco de anotações. O padrão é false . |
Professores e alunos são representados por objetos de segurança, que contêm as seguintes propriedades:
Parâmetro | Descrição |
---|---|
id | O nome UPN do Office 365. Confira a Documentação da API do Azure AD Graph para saber mais sobre usuários e grupos. |
principalType | Person ou Group |
Idiomas compatíveis
Você pode usar o omkt={language-code}
Parâmetro de consulta de URL para criar um bloco de anotações de classe em um idioma específico. Por exemplo:
POST ../classNotebooks?omkt=de-de
Os seguintes códigos de idioma são suportados. O padrão é en-us
.
Código | Idioma |
---|---|
bg-bg | Български (България) |
cs-cz | Čeština (Česká republika) |
da-dk | Dansk (Dinamarca) |
de-de | Deutsch (Deutschland) |
el-gr | Ελληνικά (Ελλάδα) |
en-us | Inglês (Estados Unidos) |
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 | 繁體中文 (台灣) |
Exemplo
A solicitação a seguir cria um bloco de anotações de classe chamado Matemática 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
}
Isso cria um bloco de anotações de classe com quatro grupos de seções de alunos, cada um contendo uma seção de folhetos, anotações de aula, lição de casa e questionários. O grupo de seções criado para cada aluno é acessível apenas pelo aluno e pelo professor. Também cria um grupo de seções Somente para professores, visível apenas para o professor. O parâmetro de consulta sendemail=true
especifica o envio de uma notificação por email para o professor e alunos quando o bloco de anotações é criado.
Informações de solicitação e resposta
As informações a seguir aplicam-se às solicitações POST /classNotebooks
.
Dados da solicitação | Descrição |
---|---|
Protocolo | Todas as solicitações usam o protocolo HTTPS de SSL/TLS. |
Cabeçalho de autorização |
Se ausente ou inválido, a solicitação falhará com um código de status 401. Confira Autenticar usando o Azure AD (aplicativos para empresas). |
Cabeçalho Content-Type | application/json |
Cabeçalho Accept | application/json |
Escopo de permissão | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite ou Notes.ReadWrite.All |
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status HTTP 201. |
Corpo da resposta | Uma representação OData do novo bloco de anotações no formato JSON. Além das propriedades do bloco de anotações regular, os blocos de anotações de classe também apresentam as seguintes propriedades:
|
Erros | Se a solicitação falhar, a API retornará erros no objeto @api.diagnostics no corpo da resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor juntamente com o valor do cabeçalho Date ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Atualização de blocos de anotações de classe
Para atualizar um bloco de anotações de classe, envie uma solicitação PATCH para o ponto de extremidade classNotebooks/{notebook-id}.
Observação
No momento, apenas a propriedade hasLeaderOnlySectionGroup pode ser atualizada em uma solicitação PATCH.
PATCH ../classNotebooks/{notebook-id}
No corpo da mensagem, envie um objeto JSON com o parâmetro de atualização.
{
"hasTeacherOnlySectionGroup": true
}
Parâmetro | Descrição |
---|---|
hasTeacherOnlySectionGroup | true para criar um grupo de seções Somente para professores, visível apenas para professores. false não é suportado. |
Veja estes métodos para outras formas de alterar os blocos de anotações de classe: Adicionar alunos ou professores, Remover alunos ou professores, Inserir seções.
Exemplo
A solicitação a seguir adiciona um grupo de seções Somente para professores ao bloco de anotações de classe especificado.
PATCH ../v1.0/users/{teacher-id}/notes/classNotebooks/{notebook-id}
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
{
"hasTeacherOnlySectionGroup": true
}
O novo grupo de seções Somente para professor é visível apenas para professores.
Informações de solicitação e resposta
As informações a seguir aplicam-se às solicitações PATCH ../classNotebooks/{notebook-id}
.
Dados da solicitação | Descrição |
---|---|
Protocolo | Todas as solicitações usam o protocolo HTTPS de SSL/TLS. |
Cabeçalho de autorização |
Se ausente ou inválido, a solicitação falhará com um código de status 401. Confira Autenticar usando o Azure AD (aplicativos para empresas). |
Cabeçalho Content-Type | application/json |
Cabeçalho Accept | application/json |
Escopo de permissão | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite ou Notes.ReadWrite.All |
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status HTTP 204. |
Erros | Se a solicitação falhar, a API retornará erros no corpo de resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor juntamente com o valor do cabeçalho Date ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Obter blocos de anotações de classe
Para obter um ou mais blocos de anotações, envie uma solicitação GET para o ponto de extremidade de classNotebooks.
Obter um ou mais blocos de anotações de classe
GET ../classNotebooks[?filter,orderby,select,top,skip,expand,count]
Obter um bloco de anotações de classe específico
GET ../classNotebooks/{notebook-id}[?select,expand]
Os blocos de anotações podem expandir as propriedades teachers
e students
. A ordem de classificação padrão é name asc
.
Blocos de anotações de classe também são devolvidos para solicitações GET /notebooks
, mas os resultados não incluem propriedades específicas do bloco de anotações de classe.
Exemplo
A solicitação a seguir obtém blocos de anotações de classe criados a partir de 1º de janeiro de 2016.
GET ../v1.0/users/{teacher-id}/notes/classNotebooks?filter=createdTime%20ge%202016-01-01
Authorization: Bearer {token}
Accept: application/json
Para saber mais sobre como obter blocos de anotações de classe, incluindo exemplos e opções de sequência de caracteres de consulta compatíveis, confira Obter conteúdo e estrutura do OneNote.
Informações de solicitação e resposta
As informações a seguir aplicam-se às solicitações GET /classNotebooks
.
Dados da solicitação | Descrição |
---|---|
Protocolo | Todas as solicitações usam o protocolo HTTPS de SSL/TLS. |
Cabeçalho de autorização |
Se ausente ou inválido, a solicitação falhará com um código de status 401. Confira Autenticar usando o Azure AD (aplicativos para empresas). |
Cabeçalho Accept | application/json |
Escopo de permissão | Notes.Read, Notes.ReadWrite.CreatedByApp, Notes.ReadWrite, or Notes.ReadWrite.All |
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status de HTTP 200. |
Corpo da resposta | Uma representação OData dos blocos de anotações de classe no formato JSON. Além das propriedades do bloco de anotações regular, os blocos de anotações de classe também apresentam as seguintes propriedades:
|
Erros | Se a solicitação falhar, a API retornará erros no objeto @api.diagnostics no corpo da resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor juntamente com o valor do cabeçalho Date ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Excluir blocos de anotações de classe
Para excluir um bloco de anotações de classe, envie uma solicitação DELETE ao ponto de extremidade de classNotebooks / {notebook-id}.
DELETE ../classNotebooks/{notebook-id}
Exemplo
Exemplo
DELETE ../v1.0/users/{teacher-id}/notes/classNotebooks/{notebook-id}
Authorization: Bearer {token}
Accept: application/json
Informações de solicitação e resposta
As informações a seguir aplicam-se às solicitações DELETE ../classNotebooks/{notebook-id}
.
Dados da solicitação | Descrição |
---|---|
Protocolo | Todas as solicitações usam o protocolo HTTPS de SSL/TLS. |
Cabeçalho de autorização |
Se ausente ou inválido, a solicitação falhará com um código de status 401. Confira Autenticar usando o Azure AD (aplicativos para empresas). |
Cabeçalho Accept | application/json |
Escopo de permissão | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite ou Notes.ReadWrite.All |
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status HTTP 204. |
Erros | Se a solicitação falhar, a API retornará erros no corpo de resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor com o valor do cabeçalho de Data ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Adicionar alunos e professores
Adicionar professores e alunos dá acesso ao bloco de notificações de classe. Adicionar um aluno também cria um grupo de seções do aluno. Este grupo de seções só é acessível pelo aluno e pelo professor e contém as seções do aluno que são definidas para o bloco de anotações.
Para adicionar um aluno ou professor a um bloco de anotações de classe, envie uma solicitação POST para o ponto de extremidade apropriado.
Adicionar um aluno
POST ../classNotebooks/{notebook-id}/students
Adicionar um professor
POST ../classNotebooks/{notebook-id}/teachers
Envie um objeto de segurança JSON no corpo da mensagem. Você pode adicionar um aluno ou um professor por solicitação.
{
"id": "alias@tenant",
"principalType": "Person-or-Group"
}
Professores e alunos são representados por objetos de segurança, que contêm as seguintes propriedades:
Parâmetro | Descrição |
---|---|
id | O nome UPN do Office 365. Confira a Documentação da API do Azure AD Graph para saber mais sobre usuários e grupos. |
principalType | Person ou Group |
Exemplo
A solicitação a seguir adiciona um professor ao bloco de anotações de classe especificado.
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"
}
Informações de solicitação e resposta
As informações a seguir aplicam-se às solicitações POST /students
e POST /teachers
.
Dados da solicitação | Descrição |
---|---|
Protocolo | Todas as solicitações usam o protocolo HTTPS de SSL/TLS. |
Cabeçalho de autorização |
Se ausente ou inválido, a solicitação falhará com um código de status 401. Confira Autenticar usando o Azure AD (aplicativos para empresas). |
Cabeçalho Content-Type | application/json |
Cabeçalho Accept | application/json |
Escopo de permissão | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite ou Notes.ReadWrite.All |
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status HTTP 201. |
Corpo da resposta | O aluno ou professor que foi adicionado. |
Erros | Se a solicitação falhar, a API retornará erros no objeto @api.diagnostics no corpo da resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor com o valor do cabeçalho de Data ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Remover alunos ou professores
A remoção de alunos e professores de um bloco de anotações de classe revoga seu acesso ao bloco de anotações, mas não exclui nenhum conteúdo.
Para adicionar um aluno ou professor a um bloco de anotações de classe, envie uma solicitação DELETE para o ponto de extremidade apropriado.
Remover um aluno
DELETE ../classNotebooks/{notebook-id}/students/{student-id}
Remover um professor
DELETE ../classNotebooks/{notebook-id}/teachers/{teacher-id}
Você pode remover um aluno ou um professor por solicitação.
Exemplo
A solicitação a seguir remove o aluno especificado do bloco de anotações de classe especificado.
DELETE ../v1.0/users/{teacher-id}/notes/classNotebooks/{notebook-id}/students/{student-id}
Authorization: Bearer {token}
Accept: application/json
Informações de solicitação e resposta
As informações a seguir aplicam-se às solicitações DELETE /students
e DELETE /teachers
.
Dados da solicitação | Descrição |
---|---|
Protocolo | Todas as solicitações usam o protocolo HTTPS de SSL/TLS. |
Cabeçalho de autorização |
Se ausente ou inválido, a solicitação falhará com um código de status 401. Confira Autenticar usando o Azure AD (aplicativos para empresas). |
Cabeçalho Accept | application/json |
Escopo de permissão | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite ou Notes.ReadWrite.All |
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status HTTP 204. |
Erros | Se a solicitação falhar, a API retornará erros no objeto @api.diagnostics no corpo da resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor com o valor do cabeçalho de Data ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Inserir seções
Use copySectionsToContentLibrary para copiar seções específicas de blocos de anotações do Office 365 e inseri-las na biblioteca de conteúdo de um bloco de anotações de classe. Uma biblioteca de conteúdo é um grupo de seções dentro do bloco de anotações de classe que tem permissões de leitura/gravação para professores e permissão de leitura para os alunos.
Para inserir seções em um bloco de anotações de classe, envie uma solicitação POST para o ponto de extremidade de copySectionsToContentLibrary do bloco de anotações de classe de destino. Por exemplo:
POST ../classNotebooks/{notebook-id}/copySectionsToContentLibrary
No corpo da mensagem, envie um objeto JSON com o parâmetro sectionIds.
{
"sectionIds": [
"section1-id",
"section2-id",
...
]
}
Parâmetro | Descrição |
---|---|
sectionIds | Uma matriz que contém as IDs das seções que você deseja inserir no bloco de anotações de classe. |
O usuário deve ter acesso ao bloco de anotações e seções de destino (próprios ou compartilhados). Todos os destinos devem estar no mesmo locatário.
Exemplo
A solicitação a seguir insere duas seções na Biblioteca de Conteúdo do bloco de anotações de classe especificado.
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"
]
}
Informações de solicitação e resposta
As informações a seguir aplicam-se às solicitações POST /copySectionsToContentLibrary
.
Dados da solicitação | Descrição |
---|---|
Protocolo | Todas as solicitações usam o protocolo HTTPS de SSL/TLS. |
Cabeçalho de autorização |
Se ausente ou inválido, a solicitação falhará com um código de status 401. Confira Autenticar usando o Azure AD (aplicativos para empresas). |
Cabeçalho Content-Type | application/json |
Cabeçalho Accept | application/json |
Escopo de permissão | Notes.ReadWrite.CreatedByApp, Notes.ReadWrite ou Notes.ReadWrite.All |
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status HTTP 201. |
Erros | Se a solicitação de criação falhar, a API retornará erros no corpo de resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor juntamente com o valor do cabeçalho Date ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Distribuição de página para o aluno
Para distribuir a uma página do OneNote para um aluno, envie uma solicitação POST para o ponto de extremidade de classNotebooks. A seguinte ação só está disponível para os blocos de anotações de grupo unificados.
POST ../groups/{id}/notes/classnotebooks/{id}/pages('{id}')/Microsoft.OneNote.Api.DistributePageToStudent
No corpo da mensagem, envie um objeto JSON com os parâmetros DistributePageToStudent.
{
"studentUserPrincipalName": "alias@tenant",
"lockStartDate": "DateTimeOffset",
"targetSectionName": "section-name",
"assignmentId":"assignment-id",
"ignoreIfStudentPageExists":true
}
Parâmetro | Descrição |
---|---|
studentUserPrincipalName | O nome UPN do Office 365. Para saber mais sobre usuários, confira a Documentação da API do Azure AD Graph. |
lockStartDate | O bloqueio de data de início do tipo DateTimeOffset a ser definida na página distribuída. A página do aluno terá acesso somente para leitura quando a data de início de bloqueio for atingida. Para obter mais informações sobre o bloqueio de página, confira Utilização do bloqueio de página em blocos de anotações de classe. |
targetSectionName | A página é copiada para a seção do aluno. Se a seção do aluno não existir, ela será criada. |
assignmentId | (opcional) A identificação da atribuição a ser definida na página distribuída. Se a propriedade estiver definida, deve haver uma página publicada para um id de atribuição e o lockStartDate deve ser a data de conclusão da atribuição. |
ignoreIfStudentPageExists | true para ignorar a cópia da página se houver outra página com o mesmo id de atribuição. |
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status de HTTP 200. |
Corpo da resposta | Uma representação OData do resultado no formato JSON. O valor retornado é o id da página do aluno que foi copiada. |
Erros | Se a solicitação falhar, a API retornará erros no objeto @api.diagnostics no corpo da resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor juntamente com o valor do cabeçalho Date ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Exemplo
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
}
Atualizar a data de início de bloqueio de página
Para atualizar a data de início do bloqueio de uma página do OneNote, envie uma solicitação de PATCH para o ponto de extremidade de páginas.
Para obter mais informações sobre o bloqueio de página, confira Utilização do bloqueio de página em blocos de anotações de classe.
PATCH ../pages/{page-id}
No corpo da mensagem, envie um objeto JSON com os seguintes dados de solicitação.
Dados da solicitação | Descrição |
---|---|
blockEditsInClientStartDate | Uma estrutura DateTimeOffset de quando a página será bloqueada para edição. Para limpar a data de início de bloqueio, defina a propriedade como null; assim ela será descartada da página. |
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status HTTP 204 Nenhum conteúdo. |
Erros | Se a solicitação falhar, a API retornará erros no objeto @api.diagnostics no corpo da resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor juntamente com o valor do cabeçalho Date ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Exemplo
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"
}
Obter a data de início de bloqueio de página
Para obter a data de início de bloqueio que está definida na página, envie uma solicitação GET para a API do ponto de extremidade de páginas para obter page(metadata) com um parâmetro de consulta de páginas blockEditsInClientStartDate=true
.
GET ../pages/{page-id}?blockEditsInClientStartDate=true
Para obter mais informações sobre como consultar uma página, confira Caminhos de recurso para solicitações GET.
Para obter mais informações sobre o bloqueio de página, confira Utilização do bloqueio de página em blocos de anotações de classe.
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status de HTTP 200. |
Corpo da resposta | Uma representação OData da página no formato JSON. Ela inclui o valor da propriedade blockEditsInClientStartDate. |
Erros | Se a solicitação falhar, a API retornará erros no objeto @api.diagnostics no corpo da resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor juntamente com o valor do cabeçalho Date ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Exemplo
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
Resposta
{
…
“blockEditsInClientStartDate”:”1985-02-25T23:17:16Z”
…
}
Atualizar associação
UpdateMembership sincroniza um bloco de anotações de classe padrão de um grupo unificado com a sua associação.
Proprietários do grupo unificado serão adicionados como professores para um bloco de anotações de classe, e membros serão adicionados como alunos para um bloco de anotações de classe.
Para sincronizar a associação de bloco de anotações de classe padrão com um grupo unificado, envie uma solicitação POST para o ponto de extremidade classNotebooks. A seguinte ação só está disponível para o bloco de anotações padrão do grupo unificado.
POST ../classnotebooks/Microsoft.OneNote.Api.UpdateMembership
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status HTTP 204 Nenhum conteúdo. |
Erros | Se a solicitação falhar, a API retornará erros no objeto @api.diagnostics no corpo da resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor juntamente com o valor do cabeçalho Date ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Exemplo
O exemplo a seguir sincroniza o bloco de anotações de classe padrão do id de um grupo unificado.
Solicitação
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
Reparar um bloco de anotações de classe
Para reparar um bloco de anotações de classe, envie uma solicitação POST para o ponto de extremidade de classNotebooks.
POST ../classnotebooks/{notebook-id}/Microsoft.OneNote.Api.RepairNotebook
A ação de odata lê a lista de alunos e professores dos metadados do bloco de anotações da classe. Ela então reaplica as permissões dos alunos aos seus grupos de seção, _Content Library e _Collaboration Space. Ele também reaplica as permissões dos professores para Students, _Content Library, _Collaboration Space e grupos de seção _teacher only.
Para grupos unificados, ela não atualizar a associação do grupo; para isso, use a ação UpdateMembership.
POST ../classnotebooks/{notebook-id}/Microsoft.OneNote.Api.RepairNotebook
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
Dados da resposta | Descrição |
---|---|
Código de êxito | Um código de status HTTP 204 Nenhum conteúdo. |
Erros | Se a solicitação falhar, a API retornará erros no objeto @api.diagnostics no corpo da resposta. |
Cabeçalho X-CorrelationId | Um GUID que identifica de forma exclusiva a solicitação. Você pode usar esse valor juntamente com o valor do cabeçalho Date ao trabalhar com o suporte da Microsoft para solucionar problemas. |
Exemplo
POST https://www.onenote.com/api/v1.0/me/notes/classnotebooks/1-b60795e6-0345-4893-a878-ce365d246651/Microsoft.OneNote.Api.RepairNotebook
Construção da URL raiz de serviço do OneNote
A URL raiz do serviço do OneNote usa o formato a seguir para todas as chamadas para a API do OneNote.
https://www.onenote.com/api/{version}/{location}/notes/
O segmento version
na URL representa a versão da API do OneNote que você deseja usar.
Use
v1.0
para o código de produção estável.Use
beta
para experimentar um recurso que está em desenvolvimento. Os recursos e funcionalidades na versão beta podem ser alterados, por isso, você não deve usá-los no código de produção.
O segmento location
na URL representa a localização dos blocos de anotações que você deseja acessar:
Blocos de anotações no OneDrive for Business
Use
me
para conteúdos do OneNote pertencentes ao usuário atual.Use
users/{id}
para o conteúdo do OneNote que o usuário especificado (na URL) compartilhou com o usuário atual. Use a API do Azure AD Graph para obter IDs de usuários.
Blocos de anotações do site do SharePoint
Sites de equipe e outros sites do SharePoint podem conter blocos de anotações do OneNote em suas bibliotecas de documentos.
Use
myOrganization/siteCollections/{id}/sites/{id}
para conteúdo do OneNote em um site no locatário no qual o usuário atual está conectado. Apenas o locatário atual é suportado, acessado com a palavra-chavemyOrganization
. Saiba como obter IDs de site.
Blocos de anotações de grupo unificados
Grupos unificados (também chamados de grupos do Office 365) fazem parte da experiência conectada do Office 365. Os membros do grupo podem compartilhar blocos de anotações, arquivos e emails.
Use
myOrganization/groups/{id}
para conteúdos do OneNote no grupo especificado do qual o usuário atual é membro. Grupos unificados são os únicos tipos de grupo com suporte. Use a API do Azure AD Graph para obter IDs de grupos.
Use o método FromUrl para obter o conjunto de sites e os IDs dos sites
Você pode usar o método FromUrl para obter o conjunto de sites e os IDs dos sites para uma URL absoluta do site especificado. Você deve fazer essa chamada somente quando necessário e armazenar os valores para uso futuro.
O formato da URL do site depende da sua configuração, por exemplo https://domain.sharepoint.com/site-a
ou https://domain.com/sites/site-a
.
Exemplo de solicitação
GET https://www.onenote.com/api/v1.0/myOrganization/siteCollections/FromUrl(url='{full-path-to-SharePoint-site}')
Authorization: Bearer {token}
Accept: application/json
Resposta de exemplo
{"@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"}
Requisitos para uso de FromUrl e como trabalhar com os blocos de anotações do site do SharePoint:
Você só pode criar blocos de anotações, grupos de seções, seções e páginas do OneNote em sites que tenham uma biblioteca de documentos padrão. (Alguns modelos de site não criam uma biblioteca de documentos padrão.) No entanto, as solicitações GET retornam o conteúdo do OneNote de todas as bibliotecas de documentos no site.
A URL raiz do serviço do OneNote é imutável, o que significa que você não pode usar um caminho de site da API REST do SharePoint e depois adicionar o ponto de extremidade notes a ele.
O usuário em nome do qual você está fazendo a chamada deve ser membro do site.
O método FromUrl funciona apenas com sites que foram indexados. Pode demorar várias horas para indexar um site novo.
Confira também
- Blocos de anotações de classe do OneNote (visão geral e recursos)
- Como trabalhar com blocos de anotações de classe assíncronos
- Como trabalhar com blocos de anotações de equipe
- Desenvolvimento do OneNote
- Obter a estrutura e o conteúdo do OneNote
- Centro de Desenvolvimento do OneNote
- Blog do desenvolvedor do OneNote
- Perguntas sobre desenvolvimento do OneNote no Stack Overflow
- Repositórios do OneNote no GitHub