Table of contents
TOC
Collapse the table of content
Expand the table of content
Última actualización: 25/07/2018

Obtener el contenido y la estructura de OneNote con la API de OneNote

Se aplica a: blocs de notas para consumidores de OneDrive | blocs de notas para empresa de Office 365

Para obtener la estructura y el contenido de OneNote, envíe una solicitud GET al extremo de destino. Por ejemplo:

GET ../notes/pages/{id}

Si la solicitud es correcta, la API de OneNote devuelve un código de estado HTTP 200 y las entidades o el contenido que ha solicitado. Las entidades de OneNote se devuelven como objetos JSON que cumplen la especificación de la versión 4.0 de OData.

Puede filtrar las consultas y mejorar el rendimiento usando las opciones de la cadena de consulta.

Crear el URI de la solicitud

Para crear el URI de la solicitud, comience con la dirección URL raíz del servicio:

Blocs de notas en OneDrive
https://www.onenote.com/api/v1.0/me/notes/

Blocs de notas en OneDrive para la Empresa
https://www.onenote.com/api/v1.0/me/notes/
https://www.onenote.com/api/v1.0/users/{id}/notes/

Blocs de notas del sitio de SharePoint
https://www.onenote.com/api/v1.0/myOrganization/siteCollections/{id}/sites/{id}/notes/

Blocs de notas de grupos unificados
https://www.onenote.com/api/v1.0/myOrganization/groups/{id}/notes/


Después, anexe el extremo del recurso que desea recuperar. (Las rutas de acceso de recursos se muestran en la siguiente sección).


Su URI de solicitud completa tendrá un aspecto similar a uno de estos ejemplos:

https://www.onenote.com/api/v1.0/me/notes/notebooks/{id}/sections

https://www.onenote.com/api/v1.0/myOrganization/siteCollections/{id}/sites/{id}/notes/pages

https://www.onenote.com/api/v1.0/myOrganization/groups/{id}/notes/pages?select=title,self

Obtenga más información sobre service root URL.

Rutas de acceso de recursos para las solicitudes GET

Use las siguientes rutas de acceso de recursos para obtener páginas, secciones, grupos de secciones, blocs de notas, imágenes u otros recursos de archivos.

Colección de páginas  |  Entidad de página  |  Vista previa de página  |  Contenido HTML de página  |   Colección de secciones  |  Entidad de sección  |  Colección de SectionGroup  |   Entidad de SectionGroup  |  Colección de blocs de notas  |  Entidad de bloc de notas  |   Imagen u otro recurso de archivo

Colección de páginas

Obtener páginas (metadatos) en todos los blocs de notas

../pages[?filter,orderby,select,expand,top,skip,search,count]

Obtener páginas (metadatos) de una sección específica

../sections/{section-id}/pages[?filter,orderby,select,expand,top,skip,search,count,pagelevel]


La opción de cadena de consulta search solo está disponible para los blocs de notas de clientes.

El criterio de ordenación predeterminado para páginas es lastModifiedTime desc.

La consulta predeterminada expande la sección principal y selecciona y selecciona las propiedades id, name y self de la sección.

De forma predeterminada, solo se devuelven las 20 entradas principales para las solicitudes GET pages. Las solicitudes que no se especifican una opción de cadena de consulta superior devuelven un vínculo @odata.nextLink en la respuesta que puede usar para obtener las siguientes 20 entradas.

Para la colección de páginas de una sección, use pagelevel para obtener el nivel de sangría de las páginas y su orden en la sección. Ejemplo: GET ../sections/{section-id}/pages?pagelevel=true.


Entidad de página

Obtenga los metadatos de una página específica.

../pages/{page-id}[?select,expand,pagelevel]


Las páginas pueden expandir las propiedades parentNotebook y parentSection.

La consulta predeterminada expande la sección principal y selecciona y selecciona las propiedades id, name y self de la sección.

Use pagelevel para obtener el nivel de sangría de la página y el su orden en la sección principal. Ejemplo: GET ../pages/{page-id}?pagelevel=true.


Vista previa de la página

Obtener el contenido de vista previa de texto e imágenes de una página

../pages/{page-id}/preview


La respuesta JSON contiene el contenido de la vista previa, que puede usar para ayudar a los usuarios a identificar los elementos en la página.

{
  "@odata.context":"https://www.onenote.com/api/v1.0/$metadata#Microsoft.OneNote.Api.PagePreview",
  "previewText":"text-snippet",
  "links":{
    "previewImageUrl":{
      "href":"https://www.onenote.com/api/v1.0/resources/{id}/content?publicAuth=true&mimeType=image/png"
    }
  }
}

La propiedad previewText contiene un fragmento de texto de la página. La API de OneNote devuelve frases completas, hasta un máximo de 300 caracteres.

Si la página tiene una imagen que puede usarse para crear una vista previa de la interfaz de usuario, la propiedad href en el objeto previewImageUrl contiene un vínculo a un recurso de imagen público que ya se ha autenticado. Puede usar este vínculo en HTML, por ejemplo: <img src="https://www.onenote.com/api/v1.0/resources/{id}/content?publicAuth=true&mimeType=image/png" />. En caso contrario, href devuelve un valor nulo.


Contenido HTML de página

Obtener el contenido HTML de una página

../pages/{page-id}/content[?includeIDs,preAuthenticated]
      (más información sobre contenido HTML devuelto)


Use la opción de cadena de consulta includeIDs=true para obtener ID generadas que se usan para actualizar la página.

Use la opción de cadena de consulta preAuthenticated=true para obtener las direcciones URL públicas para los recursos de imagen que están en la página. Las direcciones URL públicas son válidas durante una hora.


Colección de sitios

Obtener todas las secciones de todos los blocs de notas que posee el usuario, incluyendo las secciones en grupos de secciones anidados

../sections[?filter,orderby,select,top,skip,expand,count]

Obtener todas las secciones que están directamente en un grupo de secciones específico

../sectionGroups/{sectiongroup-id}/sections[?filter,orderby,select,top,skip,expand,count]

Obtener todas las secciones que están directamente en un bloc de notas específico

../notebooks/{notebook-id}/sections[?filter,orderby,select,top,skip,expand,count]


Las secciones pueden expandir las propiedades parentNotebook y parentSectionGroup.

El criterio de ordenación predeterminado para secciones es name asc.

La consulta predeterminada expande el bloc de notas principal y el grupo de secciones principal y selecciona y selecciona sus propiedades id, name y self.


Entidad de sección

Obtener una sección específica

../sections/{section-id}[?select,expand]


Las secciones pueden expandir las propiedades parentNotebook y parentSectionGroup.

La consulta predeterminada expande el bloc de notas principal y el grupo de secciones principal y selecciona y selecciona sus propiedades id, name y self.


Colección de SectionGroup

Obtener todos los grupos secciones de todos los blocs de notas que posee el usuario, incluyendo los grupos de secciones anidados

../sectionGroups[?filter,orderby,select,top,skip,expand,count]

Obtener todos los grupos de secciones que están directamente en un bloc de notas específico

../notebooks/{notebook-id}/sectionGroups[?filter,orderby,select,top,skip,expand,count]


Los grupos de secciones pueden expandir las propiedades sections, sectionGroups, parentNotebook y parentSectionGroup.

El criterio de ordenación predeterminado para grupos de secciones es name asc.

La consulta predeterminada expande el bloc de notas principal y el grupo de secciones principal y selecciona y selecciona sus propiedades id, name y self.


Entidad de SectionGroup

Obtener un grupo de secciones específico

../sectionGroups/{sectiongroup-id}[?select,expand]


Los grupos de secciones pueden expandir las propiedades sections, sectionGroups, parentNotebook y parentSectionGroup.

La consulta predeterminada expande el bloc de notas principal y el grupo de secciones principal y selecciona y selecciona sus propiedades id, name y self.


Colección de blocs de notas

Obtener todos los blocs de notas que posee el usuario

../notebooks[?filter,orderby,select,top,skip,expand,count]


Los blocs de notas pueden expandir las propiedades sections y sectionGroups.

El criterio de ordenación predeterminado para blocs de notas es name asc.

Puede usar el punto final classNotebooks para obtener blocs de notas de clase.


Entidad de bloc de notas

Obtener un bloc de notas específico

../notebooks/{notebook-id}[?select,expand]


Los blocs de notas pueden expandir las propiedades sections y sectionGroups.

Puede usar el punto final classNotebooks para obtener un bloc de notas de clase.


Imágenes u otros recursos de archivo

Acceder a los datos binarios de un recurso específico

../resources/{resource-id}/$value


Puede encontrar el URI del recurso de archivo en el resultado HTML de la página.

Por ejemplo, una etiqueta img incluye extremos del recurso de imagen original en el atributo data-fullres-src y de la imagen optimizada en el atributo src. Ejemplo:

<img 
    src="https://www.onenote.com/api/v1.0/me/notes/resources/{image-id}/$value"  
    data-src-type="image/png"
    data-fullres-src="https://www.onenote.com/api/v1.0/resources/{image-id}/$value"  
    data-fullres-src-type="image/png" ... />

Una etiqueta object incluye el extremo del recurso de archivos en el atributo data. Ejemplo:

<object
    data="http://www.onenote.com/api/v1.0/me/notes/resources/{file-id}/$value"
    data-attachment="fileName.pdf" 
    type="application/pdf" ... />

Para obtener las direcciones URL públicas ya autenticadas de los recursos de imagen de una página, incluya preAuthenticated=true en la cadena de consulta cuando recupere el contenido de la página (ejemplo: GET ../pages/{page-id}/content?preAuthenticated=true). Las direcciones URL públicas que se devuelven en el HTML de salida son válidas durante una hora. Sin esta etiqueta, las imágenes devueltas no se representarán directamente en un explorador porque son privadas y se necesita una autorización para recuperarlas, al igual que el contenido de la página.

No se admite la obtención de una colección de recursos.

Cuando obtiene un recurso de archivos, no es necesario incluir un tipo de contenido Accept en la solicitud.

Para obtener más información acerca de las solicitudes GET, consulte GET Pages, GET Sections, GET SectionGroupsy GET Notebooks en la referencia REST interactiva de la API de OneNote.

Solicitudes GET de ejemplo

Puede consultar las entidades de OneNote y el contenido de la página de búsqueda para obtener solo la información que necesita. Los siguientes ejemplos muestran algunas formas de usar opciones de cadena de consulta compatibles en las solicitudes GET a la API de OneNote.

Recuerde:

  • Todas las solicitudes GET empiezan con la dirección URL raíz de servicio.
      Ejemplos: https://www.onenote.com/api/v1.0/me/notes
                      https://www.onenote.com/api/v1.0/myOrganization/siteCollections/{id}/sites/{id}/notes/

  • Los espacios en la cadena de consulta URL deben usar la codificación %20.
      Ejemplo: filter=title%20eq%20'biology'

  • Los nombres de propiedad y las comparaciones de cadenas de OData distinguen mayúsculas de minúsculas. Se recomienda usar la función tolower de OData para comparaciones de cadenas.
      Ejemplo: filter=tolower(name) eq 'spring'

search & filter

Obtienen todas las páginas que contienen el término receta creadas por una aplicación específica. (search solo está disponible para los blocs de notas de consumidores)

[GET] ../pages?search=recipe&filter=createdByAppId eq 'WLID-000000004C12821A'

search & select

Obtienen el título, los vínculos de cliente de OneNote y el vínculo de contentUrl para todas las páginas que contienen el término golgi app. (search solo está disponible para los blocs de notas de consumidores)

[GET] ../pages?search=golgi app&select=title,links,contentUrl

expand

Obtienen todos los blocs de notas y expanden sus secciones y grupos de secciones.

[GET] ../notebooks?expand=sections,sectionGroups

Obtienen un grupo de secciones específico y expanden sus secciones y grupos de secciones.

[GET] ../sectionGroups/{sectiongroup-id}?expand=sections,sectionGroups

Obtienen una página y expanden su sección principal y bloc de notas principal.

[GET] ../pages/{page-id}?expand=parentSection,parentNotebook

expand (varios niveles)

Obtienen todos los blocs de notas y expanden sus secciones y grupos de secciones, y expanden todas las secciones en cada grupo de secciones.

[GET] ../notebooks?expand=sections,sectionGroups(expand=sections)

No se admite expandir elementos primarios de entidades secundarias o expandir elementos secundarios de entidades primarias. Hacer eso crearía una referencia circular.

expand & select (varios niveles)

Obtienen el nombre y el vínculo a self para un grupo de secciones específico, y obtienen el nombre y los vínculos a self para todas sus secciones.

[GET] ../sectionGroups/{sectiongroup-id}?expand=sections(select=name,self)&select=name,self

Obtienen el nombre y el vínculo a self para todas las secciones, y obtienen el nombre y la hora de creación del bloc de notas primario de cada sección.

[GET] ../sections?expand=parentNotebook(select=name,createdTime)&select=name,self

Obtienen el título y el identificador de todas las páginas, y obtienen el nombre de la sección principal y bloc de notas principal.

[GET] ../pages?select=id,title&expand=parentSection(select=name),parentNotebook(select=name)

expand & levels (varios niveles)

Obtienen todos los blocs de notas, grupos de secciones y todas las secciones.

[GET] ../notebooks?expand=sections,sectionGroups(expand=sections,sectionGroups(levels=max;expand=sections))

filtrar

Obtienen todas las secciones creadas en octubre de 2014.

[GET] ../sections?filter=createdTime ge 2014-10-01 and createdTime le 2014-10-31

Obtienen todas las páginas creadas por una aplicación específica desde el 1 de enero de 2015.

[GET] ../pages?filter=createdByAppId eq 'WLID-0000000048118631' and createdTime ge 2015-01-01

filter & expand

Obtienen todas las páginas de un bloc de notas específico. La API devuelve 20 entradas de forma predeterminada.

[GET] ../pages?filter=parentNotebook/id eq '{notebook-id}'&expand=parentNotebook

Obtienen el nombre y el vínculo a pagesUrl para todas las secciones del bloc de notas Escuela. Las comparaciones de cadenas OData distinguen mayúsculas de minúsculas, por lo que se recomienda usar la función tolower.

[GET] ../notebooks?filter=tolower(name) eq 'school'&expand=sections(select=name,pagesUrl)

filter & select & orderby

Obtienen el nombre y el vínculo a pagesUrl para todas las secciones que contienen el término spring en el nombre de la sección. Ordenan las secciones por fecha de última modificación.

[GET] ../sections?filter=contains(tolower(name),'spring')&select=name,pagesUrl&orderby=lastModifiedTime desc

orderby

Obtienen las primeras 20 páginas ordenadas por propiedad createdByAppId y luego por fecha de creación más reciente. La API devuelve 20 entradas de forma predeterminada.

[GET] ../pages?orderby=createdByAppId,createdTime desc

search & filter & top

Obtienen las cinco páginas más recientes creadas desde el 1 de enero de 2015, que contienen la frase división de celda. La API devuelve 20 entradas de forma predeterminada con un máximo de 100. El criterio de ordenación predeterminado para páginas es lastModifiedTime desc. (search solo está disponible para los blocs de notas de consumidores)

[GET] ../pages?search="cell division"&filter=createdTime ge 2015-01-01&top=5

search & filter & top & skip

Obtienen las cinco páginas siguientes en el conjunto de resultados. (search solo está disponible para los blocs de notas de consumidores)

[GET] ../pages?search=biology&filter=createdTime ge 2015-01-01&top=5&skip=5

Y las cinco siguientes. (search solo está disponible para los blocs de notas de clientes)

[GET] ../pages?search=biology&filter=createdTime ge 2015-01-01&top=5&skip=10

Si se aplican search y filter a la misma solicitud, los resultados incluyen solamente las entidades que coinciden con ambos criterios.

select

Obtienen el nombre, la hora de creación y el vínculo a self para todas las secciones en los blocs de notas del usuario.

[GET] ../sections?select=name,createdTime,self

Obtienen el título, la hora de creación y los vínculos a clientes de OneNote para una página específica.

[GET] ../pages/{page-id}?select=title,createdTime,links

select & expand & filter (varios niveles)

Obtienen el nombre y el vínculo a pagesUrl para todas las secciones en el bloc de notas predeterminado del usuario.

[GET] ../notebooks?select=name&expand=sections(select=name,pagesUrl)&filter=isDefault eq true

top & select & orderby

Obtienen el título y el vínculo self de las primeras 50 páginas, ordenadas alfabéticamente por título. La API devuelve 20 entradas de forma predeterminada con un máximo de 100. El criterio de ordenación predeterminado para páginas es lastModifiedTime desc.

[GET] ../pages?top=50&select=title,self&orderby=title

skip & top & select & orderby

Obtienen las páginas 51 a 100. La API devuelve 20 entradas de forma predeterminada con un máximo de 100.

[GET] ../pages?skip=50&top=50&select=title,self&orderby=title

Las solicitudes GET para páginas que recuperan el número predeterminado de entradas (es decir, no especifican una expresión top) devuelven un vínculo a @odata.nextLink en la respuesta que puede usar para obtener las 20 entradas siguientes.

Opciones de cadena de consultas OData admitidas

Al enviar solicitudes GET a la API de OneNote, puede usar las opciones de cadena de consulta OData para personalizar la consulta y obtener solo la información que necesita. También puede mejorar el rendimiento al reducir el número de llamadas al servicio y el tamaño de la carga de respuesta.

Con el fin de hacerlos más legibles, los ejemplos de este artículo no usan el código %20 que se requiere para los espacios en la cadena de consulta de la URL: filter=isDefault%20eq%20true

Opción de consultaEjemplo y descripción
count

count=true

El recuento de entidades de la colección. El valor se devuelve en la propiedad @odata.count de la respuesta.

expand

expand=sections,sectionGroups

Las propiedades de navegación para devolver la respuesta en línea. Las siguientes propiedades son compatibles con las expresiones expand:
- Páginas: parentNotebook, parentSection
- Secciones: parentNotebook, parentSectionGroup
- Grupos de secciones: sections, sectionGroups, parentNotebook, parentSectionGroup
- Blocs de notas: sections, sectionGroups

De forma predeterminada, las solicitudes GET para páginas expanden parentSection y seleccionan las propiedades id, name y self de la sección. Las solicitudes GET predeterminadas para secciones y grupos de secciones expanden tanto parentNotebook como parentSectionGroup, y seleccionan las propiedades id, name y self del elemento primario.

Puede usarse para una única entidad o una colección. Separe las distintas propiedades mediante comas. Los nombres de las propiedades distinguen mayúsculas de minúsculas.

filtrar

filter=isDefault eq true

Una expresión booleana por si desea incluir una entrada en el conjunto de resultados. Es compatible con las funciones y operadores de OData siguientes:
- Operadores de comparación: eq, ne, gt, ge, lt, le
- Operadores lógicos: and, or, not
- Funciones de cadena: contains, endswith, startswith, length, indexof, substring, tolower, toupper, trim, concat

Los nombres de propiedad y las comparaciones de cadenas de OData distinguen mayúsculas de minúsculas. Se recomienda usar la función tolower de OData para comparaciones de cadenas. Ejemplo: filter=tolower(name) eq 'spring'

orderby

orderby=title,createdTime desc

Las propiedades según las cuales ordenar, con un asc opcional (predeterminado) u orden desc. Puede ordenar según cualquier propiedad de la entidad en la colección solicitada.

El orden predeterminado para blocs de notas, secciones y grupos de secciones es name asc, y para páginas es lastModifiedTime desc (última página modificada primero).

Si tiene varias propiedades, sepárelas con comas, y ordénelas con el orden en que desea que se apliquen. Los nombres de las propiedades distinguen mayúsculas de minúsculas.

buscar

search=cell div

Solo está disponible para los blocs de notas de clientes.

El término o la frase para buscar en el título de la página, el cuerpo de la página, el texto alternativo de la imagen y el texto OCR de la imagen. De forma predeterminada, las consultas de búsqueda devuelven resultados ordenados por relevancia.

OneNote usa la búsqueda de texto completo de Bing para admitir búsqueda de frases, lematización, omisión ortográfica, relevancia y clasificación, separación de palabras, varios idiomas y otras características de búsqueda de texto completo. Las cadenas de búsqueda distinguen mayúsculas de minúsculas.

Solo se aplica a las páginas de los blocs de notas que posee el usuario (no a los que se comparten con el usuario). El contenido indexado es privado y solo puede acceder a él su propietario. Las páginas protegidas con contraseña no están indexadas. Solo se aplica al extremo pages.

select

select=id,title

Las propiedades que se devuelven. Puede usarse para una única entidad o para una colección. Separe las distintas propiedades mediante comas. Los nombres de las propiedades distinguen mayúsculas de minúsculas.

skip

skip=10

El número de entradas que se omiten del conjunto de resultados. Se usa normalmente para los resultados de paginación.

top

top=50

El número de entradas para devolver en el conjunto de resultados, hasta un máximo de 100. El valor predeterminado es 20.

OneNote también proporciona la opción de cadena de consulta pagelevel, que puede usar para obtener el nivel y el orden de las páginas en la sección principal. Solo se aplica a las consultas para las páginas de una sección específica o para una página específica. Por ejemplo:

GET ../sections/{section-id}/pages?pagelevel=true

GET ../pages/{page-id}?pagelevel=true

Operadores y funciones OData compatibles

La API de OneNote admite los siguientes operadores y funciones de OData en expresiones filter. Al usar expresiones OData, recuerde:

  • Debe reemplazar los espacios en la cadena de consulta URL con la codificación %20.
      Ejemplo: filter=isDefault%20eq%20true
  • Los nombres de propiedad y las comparaciones de cadenas de OData distinguen mayúsculas de minúsculas. Se recomienda usar la función tolower de OData para comparaciones de cadenas.
      Ejemplo: filter=tolower(name) eq 'spring'
Operador de comparaciónEjemplo
eq
(igual a)
createdByAppId eq '{app-id}'
ne
(no es igual a)
userRole ne 'Owner'
gt
(mayor que)
createdTime gt 2014-02-23
ge
(mayor o igual que)
lastModifiedTime ge 2014-05-05T07:00:00Z
lt
(menor que)
createdTime lt 2014-02-23
le
(menor que o igual que)
lastModifiedTime le 2014-02-23
Operador lógicoEjemplo
ycreatedTime le 2014-01-30 and createdTime gt 2014-01-23
ocreatedByAppId eq '{app-id}' or createdByAppId eq '{app-id}'
notnot contains(tolower(title),'school')
Función StringEjemplo
containscontains(tolower(title),'spring')
endswithendswith(tolower(title),'spring')
startswithstartswith(tolower(title),'spring')
lengthlength(title) eq 19
indexofindexof(tolower(title),'spring') eq 1
substringsubstring(tolower(title),1) eq 'spring'
tolowertolower(title) eq 'spring'
touppertoupper(title) eq 'SPRING'
trimtrim(tolower(title)) eq 'spring'
concatconcat(title,'- by MyRecipesApp') eq 'Carrot Cake Recipe - by MyRecipesApp'

Propiedades de página, sección, grupo de secciones y bloc de notas

Las expresiones de consulta filter, select, expand y orderby pueden incluir propiedades de las entidades de OneNote. Por ejemplo:

../sections?filter=createdTime ge 2015-01-01&select=name,pagesUrl&orderby=lastModifiedTime desc

Los nombres de las propiedades distinguen mayúsculas de minúsculas en las expresiones de consulta.

Para la lista de propiedades y tipos de propiedades, consulte:

La opción de cadena de consulta expand se puede usar con las siguientes propiedades de navegación:

  • Páginas: parentNotebook, parentSection
  • Secciones: parentNotebook, parentSectionGroup
  • Grupos de secciones: sections, sectionGroups, parentNotebook, parentSectionGroup
  • Blocs de notas: sections, sectionGroups

Información de la solicitud y respuesta para las solicitudes GET

Datos de solicitudDescripción
ProtocoloTodas las solicitudes usan el protocolo HTTPS SSL/TLS.
Encabezado Authorization

Bearer {token}, donde {token} es un token de acceso de OAuth 2.0 válido para la aplicación registrada.

Si falta o no es válido, la solicitud producirá errores con el código de estado 401. Vea Authentication and permissions (Autenticación y permisos).

Encabezado Accept

- application/json para las entidades y los conjuntos de entidades de OneNote

- text/html para contenido de la página

Datos de respuestaDescripción
Código de correctoUn código de estado HTTP 200.
Cuerpo de la respuestaUna representación de OData de la entidad o entidad establecida en formato JSON, el HTML de la página, o datos binarios recursos de un recurso de archivo.
ErroresSi se produce un error en la solicitud, la API devuelve errors en el objeto @api.diagnostics en el cuerpo de la respuesta.
Encabezado X-CorrelationIdGUID que identifica la solicitud de forma única. Puede usar este valor, además del valor del encabezado de fecha, al trabajar con el soporte técnico de Microsoft para solucionar problemas.

Crear la URL raíz del servicio de OneNote

La dirección URL raíz del servicio de OneNote utiliza el siguiente formato para todas las llamadas a la API de OneNote.

https://www.onenote.com/api/{version}/{location}/notes/


El segmento version de la URL representa la versión de la API de OneNote que desea utilizar.

  • Utilice v1.0 para un código de producción estable.
  • Use beta para probar una característica que esté en desarrollo. Las características y funciones pueden cambiar en la versión beta, por lo que le recomendamos que no la use en su código de producción.


El segmento location de la URL representa la ubicación de los blocs de notas a los que desea acceder.

Blocs de notas en OneDrive (consumidor)
Utilice me para el contenido de OneNote al que puede acceder el usuario actual (contenido compartido y del que sea propietario).

Blocs de notas en OneDrive para la Empresa
Use me para el contenido de OneNote que sea propiedad del usuario actual.

Utilice users/{id} para el contenido de OneNote que el usuario especificado (en la URL) haya compartido con el usuario actual. Use la API de Azure AD Graph para obtener id. de usuario.

Blocs de notas del sitio de SharePoint
Los sitios de grupo y otros sitios de SharePoint pueden contener blocs de notas de OneNote en sus bibliotecas de documentos.

Utilice myOrganization/siteCollections/{id}/sites/{id} para el contenido de OneNote en un sitio de la cuenta empresarial en la que el usuario actual haya iniciado sesión. Solo se admite la cuenta empresarial actual, a la que se accede empleando la palabra clave myOrganization. Descubra cómo obtener id. de sitio.

Blocs de notas de grupo de Office 365
Los grupos de Office 365 son parte de la experiencia conectada de Office 365. Los miembros del grupo pueden compartir blocs de notas, archivos y correos electrónicos.

Utilice myOrganization/groups/{id} para el contenido de OneNote en el grupo especificado del que el usuario actual sea miembro. Los grupos de Office 365 (que devuelven el unified groupType) son el único tipo de grupo admitido. Use la API de Azure AD Graph para obtener id. de usuario.


Utilizar el método FromUrl para obtener la colección y los id. de sitios

Puede usar el método FromUrl para obtener la colección y los id. de sitios para una URL de sitio absoluta y específica. Debe realizar esta llamada solo cuando sea necesario y luego guardar los valores para usarlos en el futuro.

El formato de la URL de sitio depende de su configuración, por ejemplo https://domain.sharepoint.com/site-a o https://domain.com/sites/site-a.

Ejemplo de solicitud:

GET https://www.onenote.com/api/v1.0/myOrganization/siteCollections/FromUrl(url='{full-path-to-SharePoint-site}')
Authorization: Bearer {token}
Accept: application/json

Ejemplo de respuesta:

{
  "@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 usar FromUrl y trabajar con blocs de notas del sitio de SharePoint:

  • Solo puede crear blocs de notas de OneNote, grupos de secciones, secciones y páginas en sitios que tengan una biblioteca de documentos predeterminada. (Algunas plantillas de sitio no crean una biblioteca de documentos predeterminada). Sin embargo, las solicitudes GET devuelven contenido de OneNote de todas las bibliotecas de documentos del sitio.
  • La URL raíz del servicio de OneNote es inmutable, lo que significa que no puede usar una ruta de sitio de la API de REST de SharePoint y luego añadirle el punto de conexión notes.
  • El usuario en cuyo nombre está realizando la llamada debe ser miembro del sitio.
  • FromUrl funciona solo con sitios que hayan sido indexados. Puede llevar varias horas indexar un nuevo sitio.

Permisos de solicitudes GET

Para obtener el contenido o la estructura de OneNote, debe solicitar los permisos adecuados.

Los siguientes ámbitos permiten solicitudes GET a la API de OneNote. Elija el nivel más bajo de permisos que necesita la aplicación para hacer su trabajo.

PlataformaÁmbito de permisos
Consumidoroffice.onenote, office.onenote_update_by_app, office.onenote_update
EmpresaNotes.Read, Notes.ReadWrite.CreatedByApp, Notes.ReadWrite, Notes.ReadWrite.All

Para obtener más información sobre los ámbitos de permiso y cómo funcionan, consulte los ámbitos de permisos de OneNote.

Recursos adicionales

© 2018 Microsoft