Vista previa pública
El Blob Storage API para notebooks está actualmente en vista previa pública. Esta característica se proporciona de acuerdo con nuestras políticas de prelanzamiento.
La API Notebooks de New Relic te permite crear, leer, actualizar y eliminar cuadernos de forma programática, incluido el contenido completo de sus bloques (NRQL consultas, texto). Los cuadernos se almacenan como blobs versionados, lo que significa que cada guardado produce una nueva revisión inmutable que puedes recuperar más tarde.
Utilice esta API para:
- Automatizar la creación de notebooks a partir de plantillas de incidentes, runbooks o pipelines de CI/CD
- Sincronizar el contenido del notebook desde el control de versiones o herramientas de creación externas
- Cree integraciones que completen los notebooks de forma programática durante las investigaciones
Importante
Notebooks usar múltiples API
La superficie de la API de Notebooks se divide entre dos sistemas:
Blob Storage API maneja el contenido del cuaderno (bloques, historial de versiones)
NerdGraph maneja operaciones a nivel de entidad (lista, cambio de nombre, etiquetas, metadatos de organización)
Esta separación es por diseño. El Blob Storage API está optimizado para la transferencia de contenido de archivos y el control de versiones; NerdGraph está optimizado para consultas y mutaciones de entidades estructuradas.
Requisitos previos
- Una cuenta deNew Relic con una clave de API de usuario
- Tu ID de organización de New Relic
- Los permisos adecuados para administrar notebooks
Autenticación
Todas las solicitudes a la API de Notebooks requieren autenticación mediante una clave de API de usuario de New Relic.
Generar una clave de API:
- Vaya a one.newrelic.com
- Haga clic en su nombre en la esquina superior derecha
- Seleccionar API Keys
- Crea una clave de User (no una clave de Browser o clave de licencia)
Incluir en los encabezados de la solicitud:
$Api-Key: NRAK-YOUR-USER-API-KEYSugerencia
El Blob Storage API también admite el contexto de inicio de sesión, por lo que al llamar a la API desde una UI autenticada como usuario de New Relic, no se requiere el encabezado Api-Key.
Endpoint base
https://blob-api.service.newrelic.com/v1/ePara las cuentas de la región de la UE, use:
https://blob-api.service.eu.newrelic.com/v1/eOperaciones de contenido de notebooks
Operaciones de entidad (NerdGraph)
Las operaciones a nivel de entidad, como listar, renombrar y asignar etiquetas, usan NerdGraph en lugar de Blob Storage API.
Listar todos los notebooks
query listAllNotebooks { actor { entityManagement { entitySearch(query: "type='NOTEBOOK'") { entities { id name } } } }}Sugerencia
La creación de la entidad es completamente transaccional, por lo que un notebook está disponible de inmediato a través de la API. Sin embargo, si enumera los notebooks a través de la consulta legacy actor.entitySearch, puede haber un breve retraso de propagación entre la creación y la aparición del notebook en los resultados de la lista.
Renombrar un notebook
mutation changeNotebookName { entityManagementUpdateNotebook( id: "<entity guid>" notebookEntity: { name: "<new name>" } ) { entity { name } }}Actualizar las etiquetas del notebook
Importante
Las actualizaciones de etiquetas son una operación de reemplazo. Debes incluir el conjunto completo de etiquetas, incluso las que no cambian — cualquier etiqueta omitida de la mutación será eliminada.
mutation updateNotebookTags { entityManagementUpdateNotebook( id: "<entity guid>" notebookEntity: { tags: [ { key: "<key>", values: "<value>" } { key: "<key>", values: "<value>" } ] } ) { entity { name tags { key values } } }}Recuperar el ID de su organización
Necesitará el ID de su organización para todas las llamadas de Blob Storage API:
query getOrgId { actor { organization { id } }}Mejores practicas
- Almacena los GUID de la entidad: guarda el
entityGuiddevuelto por las operaciones de creación. Lo necesitarás para leer, actualizar y eliminar cuadernos. - Validar JSON antes de cargarlo: asegúrese de que la carga de su notebook sea un JSON válido y cumpla con el esquema
versionantes de enviarlo. - Use nombres descriptivos: los nombres de los notebooks deben ser únicos dentro de una organización, así que elija nombres que indiquen claramente su propósito (por ejemplo,
prod-checkout-investigationen lugar denotebook-1). - Incluye todas las etiquetas en la actualización: las actualizaciones de etiquetas reemplazan el conjunto completo de etiquetas. Lee siempre las etiquetas existentes antes de mutar.
- Recuperación rápida: el historial de versiones se conserva durante solo 1 día. Si necesita un historial a largo plazo, archive el contenido del notebook en su propio almacenamiento en cada actualización.
- Proteja su clave de API: Nunca exponga su clave de API de usuario en el código del lado del cliente ni en repositorios públicos.
- Verifique los códigos de estado HTTP: La API devuelve 2xx para operaciones exitosas, 404 para no encontrado y otros códigos de estado para errores.
Respuestas de error comunes
Código de estado | Descripción | Solución |
|---|---|---|
| Parámetros de solicitud no válidos, JSON mal formado en el cuerpo o en el encabezado
, o el nombre del cuaderno ya existe en esta organización | Verifica el formato de la solicitud, los valores del encabezado y que el nombre del cuaderno sea único dentro de tu organización |
| Clave de API faltante o inválida | Verifica que tu clave de API de usuario sea válida y esté incluida en el encabezado
|
| Notebook o versión no encontrada | Verifica que el GUID de la entidad sea correcto |
| Encabezado
incorrecto | Usar
|
Recursos adicionales
- Descripción general de notebooks — cómo usar notebooks en la UI de New Relic
- Introducción a NerdGraph — referencia de la API de GraphQL
- API de Blob Storage para las configuraciones del agente — API hermana utilizada por Fleet Control
- Claves de API de New Relic — tipos de claves y gestión