Publica tus API

Estás viendo la documentación de Apigee Edge.
Ve a la documentación de Apigee X.
info

Publica las API en tu portal a fin de que estén disponibles para su consumo por parte de los desarrolladores de apps, como se describe en las siguientes secciones.

Descripción general de la publicación de API

El proceso de publicación de API en tu portal es un proceso de dos pasos:

  1. Selecciona el producto de API que deseas publicar en tu portal.
  2. Procesa la documentación de referencia de la API a partir de tu documento de OpenAPI o esquema de GraphQL para que los desarrolladores de apps puedan aprender sobre tus APIs. (Para obtener más información sobre las instantáneas, consulta ¿Qué es una instantánea?)

¿Qué se publica en el portal?

Cuando publicas una API, las siguientes actualizaciones se realizan en tu portal automáticamente:

  • Documentación de referencia de la API. La interfaz proporcionada depende de si publicas tu API con un documento de OpenAPI o un esquema de GraphQL. Ver:
  • Se agrega un vínculo a la página de referencia de la API.

    La página de APIs (que se incluye en el portal de muestra) proporciona una lista de todas las APIs publicadas en tu portal, en orden alfabético con vínculos a la documentación de referencia de la API correspondiente para obtener más información. De manera opcional, puedes personalizar lo siguiente:

    • Imagen que se muestra para cada tarjeta de la API
    • Categorías usadas para etiquetar APIs que permiten a los desarrolladores descubrir APIs relacionadas en la página de las APIs

    Página de APIs del portal en vivo que muestra dos categorías y el uso de imágenes

SmartDocs (OpenAPI)

Cuando publicas una API con un documento de OpenAPI, la documentación de referencia de la API de SmartDocs se agrega a tu portal.

Los desarrolladores pueden revisar la documentación de referencia de la API de SmartDocs y usar el panel Probar esta API para realizar una solicitud a la API y ver el resultado. Prueba esta API con extremos no seguros o extremos seguros con Basic, clave de API, o autenticación de OAuth, según el método de seguridad definido en tu documento de OpenAPI. Para OAuth, se admiten los siguientes flujos: código de autorización, contraseña y credenciales del cliente.

Página de documentación de referencia de la API con solicitudes de oferta que muestran cómo autorizar tu llamada a la API, deshacer el panel Prueba esta API, descargar la especificación relevante y ejecutar la API.

Haz clic en Pantalla completa para expandir el panel Probar esta API. El panel expandido te permite ver los ejemplos de llamada y código curl en varios formatos, como HTTP, Python, Node.js y muchos más, como se muestra en la siguiente imagen.

Panel ampliado de la sección Prueba esta API

GraphQL Explorer

Cuando publicas una API con un esquema de GraphQL, se agrega GraphQL Explorer a tu portal. GraphQL Explorer es una zona de pruebas interactiva para ejecutar consultas en la API. El explorador se basa en GraphiQL, una implementación de referencia del IDE de GraphQL que desarrolló GraphQL Foundation.

Los desarrolladores pueden usar GraphQL Explorer para explorar la documentación interactiva basada en esquemas, compilar y ejecutar consultas, ver los resultados de las consultas y descargar el esquema. Para asegurar el acceso a tu API, los desarrolladores pueden pasar los encabezados de autorización en el panel Encabezados de solicitud.

Para obtener más información sobre GraphQL, consulta graphql.org.

GraphQL Explorer en el portal

¿Qué es una instantánea?

Cada documento de OpenAPI o GraphQL funciona como la fuente de información durante todo el ciclo de vida de una API. Se usa el mismo documento en cada fase del ciclo de vida de la API, desde el desarrollo hasta la publicación y la supervisión. Cuando modificas un documento, debes conocer el efecto que los cambios tienen en tu API a través de otras fases del ciclo de vida, como se describe en ¿Qué sucede si modifico un documento?.

Cuando publicas tu API, tomas una instantánea del documento de OpenAPI o GraphQL para procesar la documentación de referencia de la API. Esa instantánea representa una versión particular del documento. Si modificas el documento, puedes decidir tomar otra instantánea para reflejar los cambios más recientes en la documentación de referencia de la API.

Acerca de las URL de devolución de llamada

Si tus apps requieren una URL de devolución de llamada, como la que se usa cuando se utiliza el tipo de autorización de código de autorización OAuth 2.0 (que a menudo se denomina OAuth de tres segmentos), puedes requerir que los desarrolladores especifiquen una URL de devolución de llamada cuando registren sus aplicaciones. La URL de devolución de llamada generalmente especifica la URL de una aplicación designada para recibir un código de autorización en nombre de la app cliente. Para obtener más información, consulta la sección sobre cómo implementar el tipo de otorgamiento de código de autorización.

Puedes configurar si necesitas o no una URL de devolución de llamada durante el registro de la app cuando se agrega una API a tu portal. Puedes modificar este parámetro de configuración en cualquier momento, como se describe en Administra la URL de devolución de llamada de una API.

Cuando se registra una app, los desarrolladores deben ingresar una URL de devolución de llamada para todas las APIs que la requieren, como se describe en la sección sobre cómo registrar apps.

Configura tu proxy de API para que admita "Probar esta API"

Antes de publicar tus APIs con un documento de OpenAPI, deberás configurar tu proxy de API para admitir solicitudes en el panel Probar esta API en la documentación de referencia de la API de SmartDocs, de la siguiente manera:

  • Agrega compatibilidad con CORS a tus proxies de API para aplicar solicitudes de origen cruzado del cliente

    CORS es un mecanismo estándar que permite que las llamadas XMLHttpRequest (XHR) de JavaScript que se ejecutan en una página web interactúen con recursos de dominios ajenos a origen. CORS es una solución implementada con frecuencia en la política del mismo origen que aplican todos los navegadores.

  • Actualiza la configuración de tu proxy de API si usas la autenticación básica o la OAuth2

En la siguiente tabla, se resumen los requisitos de configuración del proxy de API para admitir el panel Probar esta API en la documentación de referencia de la API de SmartDocs según el acceso de autenticación.

Acceso a la autenticación Requisitos de configuración de la política
Ninguna o clave de API Agrega compatibilidad con CORS al proxy de tu API Para mayor comodidad, usa la solución de ejemplo de CORS que se proporciona en GitHub o sigue los pasos que se describen en Cómo agregar compatibilidad con CORS a un proxy de API.
Autenticación básica Sigue los siguientes pasos:
  1. Agrega compatibilidad con CORS al proxy de tu API Para mayor comodidad, usa la solución de ejemplo de CORS que se proporciona en GitHub o sigue los pasos que se describen en Cómo agregar compatibilidad con CORS a un proxy de API.
  2. En Agregar política AssignMessage de CORS, asegúrate de que el encabezado Access-Control-Allow-Headers incluya el atributo authorization. Por ejemplo:
    <Header name="Access-Control-Allow-Headers">
      origin, x-requested-with, accept, content-type, authorization
    </Header>
OAuth2
  1. Agrega compatibilidad con CORS al proxy de tu API Para mayor comodidad, usa la solución de ejemplo de CORS que se proporciona en GitHub o sigue los pasos que se describen en Cómo agregar compatibilidad con CORS a un proxy de API.
  2. En Agregar política AssignMessage de CORS, asegúrate de que el encabezado Access-Control-Allow-Headers incluya el atributo authorization. Por ejemplo:
    <Header name="Access-Control-Allow-Headers">
      origin, x-requested-with, accept, content-type, authorization
    </Header>
  3. Corrige el comportamiento que no cumple con RFC en la política de OAuth2. Para mayor comodidad, usa la solución OAuth2 de muestra proporcionada en GitHub o realiza los siguientes pasos:
    • Asegúrate de que el elemento <GrantType> de la política de OAuth2 esté configurado como request.formparam.grant_type (parámetro de formulario). Para obtener más información, consulta <GrantType>.
    • Asegúrate de que el token_type de la política de OAuth2 esté configurado en Bearer y no el BearerToken predeterminado.

Administra APIs

Administra tus APIs como se describe en las siguientes secciones.

Ver todas las APIs

Usa la IU o el comando curl para ver las APIs que se encuentran en tu portal.

IU

Para ver el catálogo de APIs, haz lo siguiente:

  1. Selecciona Publicar > Portales y selecciona tu portal.
  2. Haz clic en Catálogo de APIs en la página principal del portal. También puedes seleccionar Catálogo de APIs en el menú desplegable del portal en la barra de navegación superior.

La pestaña APIs del catálogo de APIs muestra una lista de las APIs que se agregaron a tu portal.

Pestaña API que muestra información sobre las API, como el nombre, la descripción, la visibilidad, las categorías, las especificaciones asociadas y la hora modificada

Como se destacó en la figura anterior, la pestaña de APIs te permite hacer lo siguiente:

curl

Para enumerar las APIs, haz lo siguiente:

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs" \
    -H "Authorization: Bearer ACCESS_TOKEN"

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • ACCESS_TOKEN con el token de autenticación que se usa para acceder a la API de Apigee Edge. Para obtener más información sobre la autenticación y los tokens, consulta Cómo autenticar el acceso a la API de Edge.

Consulta Notas sobre la paginación para obtener instrucciones sobre el uso de la paginación en la carga útil de la respuesta.

Respuesta de carga útil:

{
  "status": "success",
  "message": "one page of apidocs returned",
  "data": [
    {
      "id": 622759,
      "siteId": "my-org-myportal",
      "title": "Test",
      "description": "",
      "published": false,
      "visibility": false,
      "apiId": "apiproducttest18",
      "apiProductName": "apiproduct_test18",
      "edgeAPIProductName": "apiproduct_test18",
      "specId": null,
      "specContent": null,
      "specTitle": null,
      "snapshotExists": false,
      "snapshotModified": null,
      "modified": 1724144471000,
      "anonAllowed": false,
      "imageUrl": null,
      "snapshotState": null,
      "requireCallbackUrl": false,
      "categoryIds": [],
      "specFormat": null,
      "specModified": null,
      "snapshotOutdated": false,
      "snapshotSourceMissing": false,
      "graphqlSchema": null,
      "graphqlEndpointUrl": null,
      "graphqlSchemaDisplayName": null,
      "grpcFileName": null,
      "grpcZipContent": null
    }
  ],
  "code": null,
  "request_id": "1452867334",
  "error_code": null,
  "next_page_token": ""
}

Aquí:

  • modified: Es la hora en la que se modificó el elemento del catálogo por última vez, en milisegundos desde la época. Por ejemplo, 1698165480000
  • id: Es el ID del elemento del catálogo. Por ejemplo, 399668

Notas sobre la paginación:

  • Tamaño de la página: Usa pageSize para especificar la cantidad de elementos de la lista que se mostrarán en una página. El valor predeterminado es 25 y el máximo es 100. Si hay páginas adicionales, nextPageToken se propaga con un token:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs?pageSize=PAGE_SIZE" \
       -H "Authorization: Bearer ACCESS_TOKEN"
    

    Reemplaza lo siguiente:

    • PAGE_SIZE por el número de elementos de lista que se devuelven en una página. Por ejemplo, 10.

    Respuesta de carga útil:

    {
      "status": "success",
      "message": "one page of apidocs returned",
      "data": [
        {
          "id": 638007,
          "siteId": "tsnow-mint-liztest",
          "title": "Testing",
          "description": "",
          "published": false,
          "visibility": false,
          "apiId": "testcatalog",
          "apiProductName": "testcatalog",
          "edgeAPIProductName": "testcatalog",
          "specId": "Petstore",
          "specContent": null,
          "specTitle": null,
          "snapshotExists": true,
          "snapshotModified": 1726508367000,
          "modified": 1728582504000,
          "anonAllowed": false,
          "imageUrl": null,
          "snapshotState": "OK_SUBMITTED",
          "requireCallbackUrl": false,
          "categoryIds": [],
          "specFormat": "YAML",
          "specModified": null,
          "snapshotOutdated": false,
          "snapshotSourceMissing": false,
          "graphqlSchema": null,
          "graphqlEndpointUrl": null,
          "graphqlSchemaDisplayName": null,
          "grpcFileName": null,
          "grpcZipContent": null
        }
      ],
      "code": null,
      "request_id": "1068810934",
      "error_code": null,
      "next_page_token": ""
    }
    

  • Token de página: Usa pageToken para recuperar páginas posteriores cuando haya más de una:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN" \
          -H "Authorization: Bearer ACCESS_TOKEN"
    

    Reemplaza lo siguiente:

    • PAGE_SIZE por el número de elementos de lista que se devuelven en una página. Por ejemplo, 10.
    • PAGE_TOKEN con el valor nextPageToken por ejemplo, 7zcqrin9l6xhi4nbrb9.

Agrega una API

Usa la IU o el comando curl para agregar APIs a tu portal:

IU

Para agregar una API a tu portal, sigue estos pasos:

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en + Agregar.

    Se muestra el cuadro de diálogo Agregar producto de API al catálogo .

  4. Selecciona el producto de API que quieres agregar a tu portal.

  5. Haz clic en Siguiente. Se mostrará la página de detalles de la API.

  6. Configura el contenido de la documentación de referencia de la API y su visibilidad en el portal:

    Campo Descripción
    Publicada Selecciona Publicado para publicar la API en tu portal. Si no estás listo para publicar la API, anula la selección de la casilla de verificación. Puedes cambiar la configuración más adelante, como se describe en Publica o anula la publicación de una API en tu portal.
    Título para mostrar Actualiza el título de la API que se muestra en el catálogo. De forma predeterminada, se usa el nombre del producto de API. Puedes cambiar el título del visualización más adelante, como se describe en Edita el título y la descripción de la pantalla.
    Descripción para mostrar Actualiza la descripción de la API que se muestra en el catálogo. De forma predeterminada, se usa la descripción del producto de la API. Puedes cambiar la descripción de la pantalla más adelante, como se describe en Edita el título y la descripción de la pantalla.
    Requerir que los desarrolladores especifiquen una URL de devolución de llamada Habilita esta opción si deseas exigir que los desarrolladores de aplicaciones especifiquen una URL de devolución de llamada. Puedes agregar o actualizar la URL de devolución de llamada más tarde, como se describe en Administra la URL de devolución de llamada para una API.
    Documentación de la API

    Para usar un documento de OpenAPI, sigue estos pasos:

    1. Selecciona Documento de OpenAPI.
    2. Haz clic en Seleccionar documento.
    3. Realiza uno de los siguientes pasos:
      • Haz clic en la pestaña Mis especificaciones y selecciona una especificación de la tienda de especificaciones.
      • Haz clic en la pestaña Subir archivo y sube un archivo.
      • Haz clic en la pestaña Importar desde una URL y, luego, importa una especificación desde una URL.
    4. Haz clic en Seleccionar.

    Para usar un esquema de GraphQL, haz lo siguiente:

    1. Selecciona Esquema de GraphQL.
    2. Haz clic en Seleccionar documento.
    3. Navega hasta el esquema de GraphQL y selecciónalo.
    4. Haz clic en Seleccionar.

    Como alternativa, puedes seleccionar Sin documentación y agregar una más tarde, después de agregar la API, como se describe en Administra la instantánea del documento.

    Visibilidad de la API

    Si no te inscribiste en la versión beta de la función de administración de públicos, selecciona una de las siguientes opciones:

    • Usuarios anónimos para permitir que todos los usuarios vean la página
    • Usuarios registrados para permitir que solo los usuarios registrados vean la página

    Si te inscribiste en la versión beta de la función de administración de públicos, selecciona una de las siguientes opciones:

    • Pública (visible para todos) para que todos los usuarios vean la API.
    • Usuarios autenticados para permitir que solo los usuarios registrados vean la API.
    • Públicos seleccionados para seleccionar los públicos específicos que deseas que puedan ver la API.

    Puedes administrar la visibilidad del público más adelante, como se describe en Administra la visibilidad de una API en tu portal.

    Imagen visible Para mostrar una imagen en la tarjeta de la API en la página de API, haz clic en Seleccionar imagen. En el diálogo Seleccionar imagen, selecciona una imagen existente, sube una imagen nueva o proporciona la URL de una imagen externa y haz clic en Seleccionar. Obtén una vista previa de la miniatura de la API y haz clic en Seleccionar. Luego, puedes agregar una imagen como se describe en Administra la imagen para una tarjeta de API. Si especificas una imagen con una URL externa, esta no se subirá a tus recursos. Además, la carga de la imagen en el portal integrado estará sujeta a su disponibilidad, que puede estar bloqueada o restringida por las políticas de seguridad del contenido.
    Categorías

    Agrega las categorías en las que se etiquetará la API para permitir que los desarrolladores de apps descubran las APIs relacionadas en la página de APIs. Para identificar una categoría, haz lo siguiente:

    • Selecciona una categoría de la lista desplegable.
    • Escribe su nombre y presiona Intro para agregar una categoría nueva. La nueva categoría se agregará a la página Categorías y estará disponible cuando se agreguen o editen otras APIs.

  7. Haz clic en Guardar.

curl

Para agregar una API a tu portal, sigue estos pasos :

curl -X POST "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{
       "title": "TITLE",
       "description": "DESCRIPTION",
       "anonAllowed": ANON_TRUE_OR_FALSE,
       "imageUrl": "IMAGE_URL",
       "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
       "categoryIds": [
         "CATEGORY_ID1",
         "CATEGORY_ID2"
       ],
       "published": PUBLISHED_TRUE_OR_FALSE,
        "apiProductName": "API_PRODUCT"
    }'

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • ACCESS_TOKEN con el token de autenticación que se usa para acceder a la API de Apigee Edge. Para obtener más información sobre la autenticación y los tokens, consulta Cómo autenticar el acceso a la API de Edge.
  • TITLE con el título visible. Por ejemplo, Hello World 2
  • DESCRIPTION con la descripción de la pantalla Por ejemplo:Simple hello world example
  • ANON_TRUE_OR_FALSE con true o false (predeterminada), donde true significa que esta API tiene visibilidad pública y se puede ver de forma anónima. De lo contrario, solo los usuarios registrados pueden verla.
  • IMAGE_URL con la URL de una imagen externa que se usa para el elemento de catálogo o una ruta de acceso de archivo para archivos de imagen almacenados en el portal, por ejemplo, /files/book-tree.jpg. Si especificas la URL de una imagen externa, esta no se subirá a tus recursos. Además, la carga de la imagen en el portal integrado estará sujeta a su disponibilidad, que puede estar bloqueada o restringida por las políticas de seguridad del contenido.
  • CALLBACK_TRUE_OR_FALSE con true o false (predeterminado), en el que true requiere que un usuario del portal ingrese una URL cuando administra la app.
  • CATEGORY_ID por el ID de la categoría. Por ejemplo, bf6505eb-2a0f-47af-a00a-ded40ac72960. Separa los diferentes IDs de categoría con una coma. Obtén el ID de categoría con el comando list API categories.
  • PUBLISHED_TRUE_OR_FALSE con true o false (predeterminado), donde true indica que la API está disponible de forma pública. Cuando se publique, podrás permitir el acceso a todos los usuarios, a los usuarios autenticados o a usuarios específicos.
  • API_PRODUCT con el nombre del producto de API. Por ejemplo, Hello World 2.

Respuesta de carga útil:

{
  "status": "success",
  "message": "API created",
  "data": {
    "id": 662423,
    "siteId": "my-org-myportal",
    "title": "My Test Catalog 4",
    "description": "",
    "published": false,
    "visibility": false,
    "apiId": "uxb9wjua",
    "apiProductName": "uXB9wJUa",
    "edgeAPIProductName": "uXB9wJUa",
    "specId": null,
    "specContent": null,
    "specTitle": null,
    "snapshotExists": false,
    "snapshotModified": null,
    "modified": 1729635493000,
    "anonAllowed": false,
    "imageUrl": null,
    "snapshotState": null,
    "requireCallbackUrl": false,
    "categoryIds": [],
    "specFormat": null,
    "specModified": null,
    "snapshotOutdated": null,
    "snapshotSourceMissing": false,
    "graphqlSchema": null,
    "graphqlEndpointUrl": null,
    "graphqlSchemaDisplayName": null,
    "grpcFileName": null,
    "grpcZipContent": null
  },
  "code": null,
  "request_id": "893346193",
  "error_code": null
}

Aquí:

  • modified: Es la hora en la que se modificó el elemento del catálogo por última vez, en milisegundos desde la época. Por ejemplo, 1698165480000
  • id: Es el ID del elemento del catálogo. Por ejemplo, 399668

Edita una API

Una vez que hayas agregado una API, usa la IU o una llamada a la API para realizar modificaciones.

En esta sección, se proporciona un ejemplo detallado de los pasos que debes seguir para modificar una API existente en tu portal.

Consulta las secciones siguientes para conocer la configuración de modificación específica.

IU

Para editar una API, sigue estos pasos:

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Haz clic en ícono para editarEditar.
  5. En Detalles de la API, realiza las modificaciones necesarias. Consulta las descripciones de las opciones en Agrega una API.
  6. Haz clic en Guardar.

curl

Una vez que hayas agregado una API, usa la llamada update para realizar ediciones.

En este ejemplo, se describen los pasos necesarios para cambiar el estado publicado de tu API en tu portal de true a false. Si es necesario, puedes cambiar más de un parámetro de configuración en una sola llamada a la API.

  1. Para ubicar el id generado que identifica cada API de forma única, obtén una lista de las APIs de tu portal como se describe en Explora APIs.
  2. Devuelve los valores actuales de una API específica:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
    -H "Authorization: Bearer ACCESS_TOKEN"
    

    Reemplaza lo siguiente:

    • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
    • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
    • API_DOC con el id generado del documento. Por ejemplo, 399668. Usa el comando list API docs para encontrar este valor.
    • ACCESS_TOKEN con el token de autenticación que se usa para acceder a la API de Apigee Edge. Para obtener más información sobre la autenticación y los tokens, consulta Cómo autenticar el acceso a la API de Edge.

    Respuesta de carga útil:

    {
      "status": "success",
      "message": "apidoc returned",
      "data": {
        "id": 662423,
        "siteId": "my-org-myportal",
        "title": "My Test Catalog 4",
        "description": "",
        "published": false,
        "visibility": false,
        "apiId": "uxb9wjua",
        "apiProductName": "uXB9wJUa",
        "edgeAPIProductName": "uXB9wJUa",
        "specId": null,
        "specContent": null,
        "specTitle": null,
        "snapshotExists": false,
        "snapshotModified": null,
        "modified": 1729635493000,
        "anonAllowed": false,
        "imageUrl": null,
        "snapshotState": null,
        "requireCallbackUrl": false,
        "categoryIds": [],
        "specFormat": null,
        "specModified": null,
        "snapshotOutdated": false,
        "snapshotSourceMissing": false,
        "graphqlSchema": null,
        "graphqlEndpointUrl": null,
        "graphqlSchemaDisplayName": null,
        "grpcFileName": null,
        "grpcZipContent": null
      },
      "code": null,
      "request_id": "601210268",
      "error_code": null
    }
    

  1. Incluye los valores mutables que deseas conservar en la llamada update y modifica los valores que deseas cambiar. Si omites una línea, se usa la configuración predeterminada. En este ejemplo, cambia el parámetro de configuración publicado de false a true:

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
     -H "Authorization: Bearer ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
        "title": "TITLE",
        "anonAllowed": true,
        "published": true
     }'
    

    Reemplaza lo siguiente:

    • TITLE con el título visible. Por ejemplo, Hello World 2

    Respuesta de carga útil:

    {
      "status": "success",
      "message": "ApiDoc updated",
      "data": {
        "id": 662423,
        "siteId": "my-org-myportal",
        "title": "My Test Catalog 4",
        "description": "",
        "published": true,
        "visibility": true,
        "apiId": "uxb9wjua",
        "apiProductName": "uXB9wJUa",
        "edgeAPIProductName": "uXB9wJUa",
        "specId": null,
        "specContent": null,
        "specTitle": null,
        "snapshotExists": false,
        "snapshotModified": null,
        "modified": 1729989250000,
        "anonAllowed": true,
        "imageUrl": null,
        "snapshotState": null,
        "requireCallbackUrl": false,
        "categoryIds": [],
        "specFormat": null,
        "specModified": null,
        "snapshotOutdated": null,
        "snapshotSourceMissing": false,
        "graphqlSchema": null,
        "graphqlEndpointUrl": null,
        "graphqlSchemaDisplayName": null,
        "grpcFileName": null,
        "grpcZipContent": null
      },
      "code": null,
      "request_id": "738172002",
      "error_code": null
    }
    

Administra la instantánea del documento

Después de publicar la API, puedes obtener una nueva instantánea del documento de OpenAPI o GraphQL en cualquier momento para actualizar la documentación de referencia de la API publicada en tu portal.

Para administrar la instantánea del documento, sigue estos pasos:

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Verifica el estado de la instantánea. Si está desactualizado, se muestra el siguiente mensaje: Icono y mensaje que indican que la instantánea está desactualizada
  5. Haga clic en Editar ícono.
  6. Realiza una de las siguientes tareas:
    • Para actualizar una instantánea de un documento de OpenAPI desactualizado, haz clic en Actualizar instantánea.
    • Para cambiar el documento que se usa para generar la documentación de la API, en la documentación de la API, haz clic en Seleccionar documento y selecciona el documento nuevo.
  7. Haz clic en Guardar.

Publica o anula la publicación de una API en tu portal

La publicación es el proceso de hacer que tus APIs estén disponibles para los desarrolladores de apps.

Usa la IU o el comando curl para publicar o anular la publicación de una API en tu portal.

IU

Publica o anula la publicación de una API en tu portal

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Haz clic en Ícono Editar Editar.
  5. En detalles de la API, selecciona o anula la selección de Publicada (incluida en el catálogo) para publicar o anular la publicación de la API en tu portal, respectivamente.
  6. Haz clic en Guardar.

curl

Incluye una de las siguientes opciones en la llamada de actualización:

"published": true,    # API is published to your portal
"published": false,   # API is not published in your portal

Para editar la API, sigue estos pasos:

  1. Devuelve los valores actuales:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs" \
    -H "Authorization: Bearer ACCESS_TOKEN"
  2. Usa la llamada update para editar la API. Incluye los valores mutables que deseas conservar y modifica los valores que deseas cambiar. Si omites un parámetro de configuración mutable, se reemplazará con el valor predeterminado.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/  ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
     -H "Authorization: Bearer ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
        "title": "TITLE",
        "description": "DESCRIPTION",
        "anonAllowed": ANON_TRUE_OR_FALSE,
        "imageUrl": IMAGE_URL,
        "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
        "categoryIds": [
          "CATEGORY_ID1",
         "CATEGORY_ID2"
        ],
        "published": PUBLISHED_TRUE_OR_FALSE
    }

Consulta Cómo administrar la versión del documento para ver un ejemplo detallado de los pasos, las variables y la carga útil que se devuelve.

Administra la visibilidad de una API en tu portal:

Para administrar la visibilidad de una API en tu portal, debes permitir el acceso a lo siguiente:

  • Pública (visible para todos)
  • Usuarios autenticados
  • Públicos seleccionados (si te inscribiste en la versión beta de la función de administración de públicos)

Usa la IU o el comando curl para administrar la visibilidad de una API en tu portal:

IU

Para administrar la visibilidad de una API en tu portal, haz lo siguiente:

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Haz clic en Ícono Editar Editar.
  5. Selecciona la configuración de visibilidad. Si te inscribiste en la versión beta de la función de públicos, selecciona una de las siguientes opciones:

    • Pública (visible para todos) para que todos los usuarios vean la página.
    • Usuarios Autenticados para que solo los usuarios registrados vean la página.
    • Públicos seleccionados para seleccionar los públicos específicos que deseas que puedan ver la página. Consulta Administra los públicos de tu portal.
    De lo contrario, selecciona una de las siguientes opciones:
    • Usuarios anónimos para que todos los usuarios vean la página.
    • Usuarios registrados para que solo los usuarios registrados vean la página.

  6. Haz clic en Enviar.

curl

Si te inscribiste en la versión beta de la función de administración de públicos, usa la IU para administrar los públicos.

Si no te inscribiste en la función de administración de públicos, la visibilidad se administra con anonAllowed.

Incluye una de las siguientes opciones en la llamada a update:

  # When not enrolled in the beta release of the audience management feature:

  "anonAllowed": true,      # Anonymous users can see the API
  "anonAllowed": false,     # Only registered users can see the API

Para editar la API, sigue estos pasos:

  1. Devuelve los valores actuales:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. Usa la llamada update para editar la API. Incluye los valores mutables que deseas conservar y modifica los valores que deseas cambiar. Si omites un parámetro de configuración mutable, se usa el valor predeterminado.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

Consulta Edita una API para ver un ejemplo detallado de los pasos, las variables y la carga útil que se devuelve.

Administra la URL de devolución de llamada para una API

Administra la URL de devolución de llamada para una API, consulta Acerca de las URL de devolución de llamada.

Usa la IU o el comando curl para administrar la URL de devolución de llamada de una API:

IU

Administra la URL de devolución de llamada para una API

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Haz clic en Ícono Editar Editar.
  5. En Detalles de la API, selecciona o desmarca la casilla de verificación Requerir que los desarrolladores especifiquen una URL de devolución de llamada.
  6. Haz clic en Guardar.

curl

Incluye una de las siguientes opciones en la llamada a update:

  "requireCallbackUrl": true,    # Portal user is required to input a URL
  "requireCallbackUrl": false,   # Portal user is not required to input a URL

Para editar la API, sigue estos pasos:

  1. Devuelve los valores actuales:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. Usa la llamada update para editar la API. Incluye los valores mutables que deseas conservar y modifica los valores que deseas cambiar. Si omites un parámetro de configuración mutable, se usa el valor predeterminado.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

Consulta Edita una API para ver un ejemplo detallado de los pasos, las variables y la carga útil que se devuelve.

Administrar la imagen de una tarjeta de API

Para administrar la imagen que aparece con una tarjeta de API en la página de API, agrega o cambia la imagen actual.

Usa la IU o el comando curl para administrar la imagen de una tarjeta de API:

IU

Para administrar la imagen de una tarjeta de API, haz lo siguiente:

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Haz clic en Ícono Editar Editar.
  5. En los detalles de API, haz lo siguiente:

    • Haz clic en Seleccionar imagen para especificar o subir una imagen si no hay ninguna imagen seleccionada.
    • Haz clic en Cambiar imagen para especificar o subir una imagen diferente.
    • Haz clic en x en la imagen para quitarla.

    Cuando especifiques una imagen, especifica una imagen con una URL externa usada para el elemento de catálogo o una ruta de acceso para archivos de imagen almacenados en el portal, por ejemplo, /files/book-tree.jpg. Si especificas la URL de una imagen externa, esta no se subirá a tus elementos. Además, la carga de la imagen en el portal integrado estará sujeta a su disponibilidad, que puede estar bloqueada o restringida por las políticas de seguridad del contenido.

  6. Haz clic en Guardar.

curl

Incluye lo siguiente en la llamada a update:

  # Omit line for no image file

  "imageUrl": "IMAGE_URL"    # URL of the external image or name of the image file

Para editar la API, sigue estos pasos:

  1. Devuelve los valores actuales:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. Usa la llamada update para editar la API. Incluye los valores mutables que deseas conservar y modifica los valores que deseas cambiar. Si omites un parámetro de configuración mutable, se usa el valor predeterminado.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

Consulta Edita una API para ver un ejemplo detallado de los pasos, las variables y la carga útil que se devuelve.

Etiquetar una API a través de categorías

El uso de categorías ayuda a los desarrolladores de apps a descubrir APIs relacionadas. Consulta también Administra categorías.

Etiqueta una API mediante categorías de una de las siguientes maneras:

  • Administra las categorías a las que se etiqueta una API cuando la editas, como se describe a continuación.
  • Administra las APIs etiquetadas a una categoría cuando editas la categoría.

Usa la IU o el comando curl para etiquetar una API con categorías:

IU

Para etiquetar una API a las categorías cuando editas la API, sigue estos pasos:

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Haz clic en Ícono Editar Editar.
  5. Haz clic en el campo Categorías y realiza uno de los siguientes pasos:
    • Selecciona una categoría de la lista desplegable.
    • Escribe su nombre y presiona Intro para agregar una categoría nueva. La nueva categoría se agregará a la página Categorías y estará disponible cuando se agreguen o editen otras APIs.
  6. Repite para etiquetar la API a más categorías.
  7. Haz clic en Guardar.

curl

Incluye lo siguiente en la llamada a update:

  # Omit line for no categories

  "categoryIds": [
      "CATEGORY_ID1",      # A category ID number
      "CATEGORY_ID2"       # A category ID number
    ],

Usa el comando list categories para obtener los números de ID de categoría.

Para editar la API, sigue estos pasos:

  1. Devuelve los valores actuales:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. Usa la llamada update para editar la API. Incluye los valores mutables que deseas conservar y modifica los valores que deseas cambiar. Si omites un parámetro de configuración mutable, se usa el valor predeterminado.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

Consulta Edita una API para ver un ejemplo detallado de los pasos, las variables y la carga útil que se devuelve.

Edita el título y la descripción visibles

Usa la IU o el comando curl para editar el título y la descripción visibles:

IU

Para editar el título y la descripción de la pantalla, sigue estos pasos:

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Haz clic en Ícono Editar Editar.
  5. Edita los campos Título para mostrar y Descripción para mostrar, según sea necesario.
  6. Haz clic en Guardar.

curl

Incluye lo siguiente en la llamada a update:

  "title": "TITLE",    # Display title
  "description": "DESCRIPTION",  # Display description

Para editar la API, sigue estos pasos:

  1. Devuelve los valores actuales:

    curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN"
    
  2. Usa la llamada update para editar la API. Incluye los valores mutables que deseas conservar y modifica los valores que deseas cambiar. Si omites un parámetro de configuración mutable, se usa el valor predeterminado.

    curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
         -H "Authorization: Bearer ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{
            "title": "TITLE",
            "description": "DESCRIPTION",
            "anonAllowed": ANON_TRUE_OR_FALSE,
            "imageUrl": IMAGE_URL,
            "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE,
            "categoryIds": [
              "CATEGORY_ID1",
              "CATEGORY_ID2"
            ],
            "published": PUBLISHED_TRUE_OR_FALSE
         }'

Consulta Edita una API para ver un ejemplo detallado de los pasos, las variables y la carga útil que se devuelve.

Quita una API de tu portal

Usa la IU o el comando curl para quitar una API de tu portal:

IU

Para quitar una API de tu portal, sigue estos pasos:

  1. Accede al catálogo de API.
  2. Selecciona las API si aún no lo están.
  3. Coloca el cursor sobre la API de la lista para ver el menú de acciones.
  4. Haz clic en Ícono Borrar Borrar.

curl

Para quitar una API de tu portal, sigue estos pasos:

curl -X DELETE "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \
    -H "Authorization: Bearer ACCESS_TOKEN"

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • API_DOC con el id generado del documento. Por ejemplo, 399668. Usa el comando list API docs para encontrar este valor.
  • ACCESS_TOKEN con el token de autenticación que se usa para acceder a la API de Apigee Edge. Para obtener más información sobre la autenticación y los tokens, consulta Cómo autenticar el acceso a la API de Edge.

Respuesta de carga útil:

{
  "status": "success",
  "message": "Apidoc deleted",
  "data": {
  },
  "code": null,
  "request_id": "1790036484",
  "error_code": null
}

Administra la documentación de la API

En las siguientes secciones, se describe cómo actualizar, descargar o quitar la documentación de la API.

Actualiza la documentación de la API

Para subir una versión diferente de la documentación de la API, sigue estos pasos:

IU

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Verifica el estado de la instantánea. Si está desactualizado, se muestra el siguiente mensaje: Icono y mensaje que indican que la instantánea está desactualizada
  5. Haz clic en  Editar.
  6. Realiza una de las siguientes tareas:
    • Para actualizar una instantánea de un documento de OpenAPI desactualizado, haz clic en Actualizar instantánea.
    • Para cambiar el documento que se usa para generar la documentación de la API, en la documentación de la API, haz clic en Seleccionar documento y selecciona el documento nuevo.
  7. En el panel Documentación de la API, selecciona una de las siguientes opciones:
    • Documento de OpenAPI
    • Esquema de GraphQL
  8. Haz clic en Seleccionar documento y selecciona la versión más reciente del documento.
  9. Para GraphQL, especifica la URL de extremo.
  10. Haz clic en Guardar.

La documentación de referencia de la API se renderiza desde el documento y se agrega a la página Referencia de la API. El estado de la instantánea se actualiza a la versión actual:

El ícono y el mensaje indican que la instantánea es actual

curl

Para actualizar el contenido de la documentación de OpenAPI o GraphQL, sigue estos pasos:

OpenAPI

curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{"oasDocumentation": {
           "spec":{ "displayName":"DISPLAY_NAME",
                    "contents":"CONTENTS"}
            }
        }'

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • API_DOC con el id generado del documento. Por ejemplo, 399668. Usa el comando list API docs para encontrar este valor.
  • DISPLAY_NAME por el nombre visible de la documentación de la API. Por ejemplo: Hello World 2.
  • CONTENTS por la cadena de contenido codificada en Base64 de la documentación de la API. La mayoría de los entornos de desarrollo contienen una utilidad de conversión base64, o bien hay muchas herramientas de conversión en línea.

Respuesta de carga útil:

{
 "status":"success",
 "message":"Api documentation updated",
 "requestId":"645138278"
 "data": {
   "oasDocumentation": {
     "spec": {
        "displayName": "Hello World 2"
      },
     "Format": "YAML"
   }
 }
}

GraphQL

curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"graphqlDocumentation": {
         "schema":{"displayName":"DISPLAY_NAME",
         "contents":"CONTENTS"},
         "endpointUri": "ENDPOINT_URI"
          }
      }'

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • API_DOC con el id generado del documento. Por ejemplo, 399668. Usa el comando list API docs para encontrar este valor.
  • DISPLAY_NAME por el nombre visible de la documentación de la API. Por ejemplo: Hello World 2.
  • ENDPOINT_URI por el nombre de dominio del URI de tu extremo. Por ejemplo, https://demo.google.com/graphql
  • CONTENTS por la cadena de contenido codificada en Base64 de la documentación de la API. La mayoría de los entornos de desarrollo contienen una utilidad de conversión base64, o bien hay muchas herramientas de conversión en línea.

Respuesta de carga útil:

{
"status": "success",
"message": "ApiDocDocumentation updated",
"data": {
  "oasDocumentation": null,
  "graphqlDocumentation": {
    "schema": {
      "displayName": "schema.docs.graphql",
      "contents": ""
    },
    "endpointUri": "https://demo.google.com/graphql"
  }
},
"code": null,
"request_id": "640336173",
"error_code": null
}

La documentación de referencia de la API se renderiza desde el documento y se agrega a la página de APIs del portal publicado.

Descarga la documentación de la API

Para descargar la documentación de la API, sigue estos pasos:

IU

curl

Para descargar la documentación de la API con get documentation, haz lo siguiente:

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \
    -H "Authorization: Bearer ACCESS_TOKEN"

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • API_DOC con el id generado del documento. Por ejemplo, 399668. Usa el comando list API docs para encontrar este valor.

    Respuesta de carga útil:

{
  "status": "success",
  "message": "ApiDocDocumentation returned",
  "data": {
    "oasDocumentation": {
      "spec": {
        "displayName": "mock",
        "contents": "b3BlbmFwaTogMy4wLjAKaW5mbzoKICBkZXNjcmlw ..."
      },
      "format": "YAML"
    },
    "graphqlDocumentation": null
  },
  "code": null,
  "request_id": "269996898",
  "error_code": null
}

Aquí:

contents: Es la cadena de contenido codificada en Base64 de la documentación de la API.

Quita la documentación de la API

Para quitar la documentación de la API, sigue estos pasos:

IU

  1. Accede al catálogo de API.
  2. Haz clic en la pestaña APIs si no está seleccionada.
  3. Haz clic en la fila de la API que quieres editar.
  4. Haz clic en Editar.
  5. En el panel Documentación de la API, selecciona Sin documentación.
  6. Haz clic en Guardar.

curl

Para borrar el contenido existente, usa la API de Update:

curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{}'

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • API_DOC con el id generado del documento. Por ejemplo, 399668. Usa el comando list API docs para encontrar este valor.

Respuesta de carga útil:

{
  "status": "success",
  "message": "ApiDocDocumentation updated",
  "data": {
    "oasDocumentation": null,
    "graphqlDocumentation": null
  },
  "code": null,
  "request_id": "304329676",
  "error_code": null
}

Administra categorías usadas para descubrir APIs relacionadas

Etiqueta una API con categorías para permitir que los desarrolladores de apps descubran APIs relacionadas en la página de APIs del portal en vivo. Agrega y administra categorías, como se describe en las siguientes secciones.

Explorar categorías

Usa la IU o el comando curl para ver las APIs que se encuentran en tu portal.

IU

Para ver la página Categorías, haz lo siguiente:

  1. Selecciona Publicar > Portales y selecciona tu portal.
  2. Haz clic en Catálogo de APIs en la página principal del portal.

    También puedes seleccionar Catálogo de API en el menú desplegable del portal en la barra de navegación superior.

  3. Haga clic en la pestaña Categorías.

La pestaña Categorías en el catálogo de API muestra la lista de las categorías que se definieron para tu portal.

Pestaña Categorías que muestra el nombre de la categoría, los nombres y la cantidad total de API asignadas

Como se destacó en la figura anterior, la página APIs te permite hacer lo siguiente:

curl

Para enumerar categorías, haz lo siguiente:

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories" \
    -H "Authorization: Bearer ACCESS_TOKEN"

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • ACCESS_TOKEN con el token de autenticación que se usa para acceder a la API de Apigee Edge. Para obtener más información sobre la autenticación y los tokens, consulta Cómo autenticar el acceso a la API de Edge.

Respuesta de carga útil:

{
  "status": "success",
  "message": "all ApiCategory items returned",
  "data": [
    {
      "id": "e0518597-ece2-4d7d-ba7c-d1793df0f8db",
      "siteId": "my-org-myportal",
      "name": "My Category"
    },
    {
      "id": "61c1014c-89c9-40e6-be3c-69cca3505620",
      "siteId": "my-org-myportal",
      "name": "test2"
    }
  ],
  "code": null,
  "request_id": "1263510680",
  "error_code": null
}

Aquí:

  • id: Es el ID del elemento de categoría. Por ejemplo:61c1014c-89c9-40e6-be3c-69cca3505620

Agregar una categoría

Agrega una categoría de una de las siguientes maneras:

  • Ingresa el nombre de una categoría cuando agregues una API al portal.
  • Agrega una categoría manualmente como se describe a continuación

La nueva categoría se agregará a la página Categorías y estará disponible cuando se agreguen o editen otras APIs.

Usa la IU o el comando curl para agregar una categoría:

IU

Para agregar una categoría de forma manual, haz lo siguiente:

  1. Accede a la página Categorías.
  2. Haz clic en + Agregar.
  3. Ingresa el nombre de la nueva categoría.
  4. De manera opcional, selecciona una o más API que quieras etiquetar a la categoría.
  5. Haz clic en Crear.

curl

Para agregar una categoría, sigue estos pasos:

curl -X POST "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{"name": "CATEGORY_NAME" }'

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • ACCESS_TOKEN con el token de autenticación que se usa para acceder a la API de Apigee Edge. Para obtener más información sobre la autenticación y los tokens, consulta Cómo autenticar el acceso a la API de Edge.
  • CATEGORY_NAME por el nombre de la categoría. Por ejemplo:demo-backend

Respuesta de carga útil:

{
  "status": "success",
  "message": "API category created",
  "data": {
    "id": "61de810e-b48b-4cc1-8f22-959038aadcce",
    "siteId": "my-org-myportal",
    "name": "demo-backend"
  },
  "code": null,
  "request_id": "363146927",
  "error_code": null
}

Editar una categoría

Usa la IU o el comando curl para editar una categoría:

IU

Para editar una categoría, sigue estos pasos:

  1. Accede a la página Categorías.
  2. Haz clic en  Editar.
  3. Edita el nombre de la categoría.
  4. Agrega o quita etiquetas de API
  5. Haz clic en Guardar.

curl

Para editar una categoría, sigue estos pasos:

curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories/CATEGORY_ID"  \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{"name": "CATEGORY_NAME" }'

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • CATEGORY_ID por el ID de la categoría. Por ejemplo, bf6505eb-2a0f-47af-a00a-ded40ac72960. Separa los diferentes IDs de categoría con una coma. Obtén el ID de categoría con el comando list API categories.
  • ACCESS_TOKEN con el token de autenticación que se usa para acceder a la API de Apigee Edge. Para obtener más información sobre la autenticación y los tokens, consulta Cómo autenticar el acceso a la API de Edge.
  • CATEGORY_NAME por el nombre de la categoría. Por ejemplo:demo-backend

Respuesta de carga útil:

{
  "status": "success",
  "message": "ApiCategory updated",
  "data": {
    "id": "61de810e-b48b-4cc1-8f22-959038aadcce",
    "siteId": "my-org-myportal",
    "name": "demo-backend-test"
  },
  "code": null,
  "request_id": "1976875617",
  "error_code": null
}

Borrar una categoría

Cuando borras una categoría, también se borran todas las etiquetas de la API.

Usa la IU o el comando curl para borrar una categoría:

IU

Para borrar una categoría, haz lo siguiente:

  1. Accede a la página Categorías.
  2. Coloca el cursor sobre la categoría que quieras editar para que se muestre el menú de acciones.
  3. Haz clic en Borrar.
  4. Haz clic en Borrar para confirmar tu decisión.

curl

Para borrar una categoría, haz lo siguiente:

curl -X DELETE "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories/CATEGORY_ID" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -H "Content-Type: application/json"

Reemplaza lo siguiente:

  • ORG_NAME por el nombre de la organización. Por ejemplo, my-org
  • SITE_ID con el nombre del portal, en el formato ORG_NAME-PORTAL_NAME, en el que ORG_NAME es el nombre de la organización y PORTAL_NAME es el nombre del portal convertido a minúsculas y sin espacios ni guiones. Por ejemplo, my-org-myportal.
  • CATEGORY_ID por el ID de la categoría. Por ejemplo, bf6505eb-2a0f-47af-a00a-ded40ac72960. Obtén el ID de categoría con el comando categoría list API.
  • ACCESS_TOKEN con el token de autenticación que se usa para acceder a la API de Apigee Edge. Para obtener más información sobre la autenticación y los tokens, consulta Cómo autenticar el acceso a la API de Edge.

Respuesta de carga útil:

{
  "status": "success",
  "message": "ApiCategory deleted",
  "data": {
  },
  "code": null,
  "request_id": "2032819627",
  "error_code": null
}

Soluciona problemas con tus APIs publicadas

En las siguientes secciones, se proporciona información para ayudarte a solucionar errores específicos con nuestras API publicadas.

Error: No se pudo recuperar el error que se mostró cuando se usó la API

Cuando uses Prueba esta API, si se muestra el error TypeError: Failed to fetch, ten en cuenta las siguientes causas y resoluciones posibles:

  • En el caso de los errores de contenido mixto, el error puede deberse a un problema conocido de una IU de Swagger. Una posible solución es asegurarte de especificar HTTPS antes de HTTP en la definición schemes en tu documento de OpenAPI. Por ejemplo:

    schemes:
       - https
       - http
    
  • En el caso de los errores de restricción de uso compartido de recursos entre dominios (CORS), asegúrate de que el CORS sea compatible con los proxies de API. CORS es un mecanismo estándar que habilita las solicitudes de orígenes cruzados del cliente. Consulta cómo configurar tu proxy de API para admitir Prueba esta API.

Error: El encabezado “Access-Control-Allow-Origin” contiene múltiples valores “*, *”, pero solo se permite uno.

Cuando uses Prueba esta API, es posible que recibas el siguiente mensaje de error si el encabezado Access-Control-Allow-Origin ya existe:

The Access-Control-Allow-Origin header contains multiple values '*, *', but only one is allowed.

Para corregir este error, modifica la política de AssignMessage para que use <Set> a fin de establecer los encabezados de CORS en lugar de <Add>, como se muestra en el siguiente extracto. Para obtener más información, consulta Error de CORS : El encabezado contiene varios valores "*, *", pero solo se permite uno.

<AssignMessage async="false" continueOnError="false" enabled="true" name="add-cors">
    <DisplayName>Add CORS</DisplayName>
    <FaultRules/>
    <Properties/>
    <Set>
        <Headers>
            <Header name="Access-Control-Allow-Origin">{request.header.origin}</Header>
            <Header name="Access-Control-Allow-Headers">origin, x-requested-with, accept, content-type, authorization</Header>
            <Header name="Access-Control-Max-Age">3628800</Header>
            <Header name="Access-Control-Allow-Methods">GET, PUT, POST, DELETE</Header>
        </Headers>
    </Set>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
    <AssignTo createNew="false" transport="http" type="response"/>
</AssignMessage>

Error: No se permite el campo del encabezado de la solicitud

Cuando se usa Prueba esta API, si recibes un error Request header field not allowed, similar al ejemplo que se muestra a continuación, es posible que debas actualizar los encabezados compatibles con la política de CORS. Por ejemplo:

Access to XMLHttpRequest ... has been blocked by CORS policy: Request header field
content-type is not allowed by Access-Control-Allow-Headers in preflight response

En este ejemplo, debes agregar el encabezado content-type a la sección Access-Control-Allow-Headers en tu política de CORS MessageMessage, como se describe en Cómo adjuntar una política de Agregar CORS a un nuevo proxy de API.

Error: Se denegó el acceso cuando se realizó una llamada a un proxy de API mediante OAuth2

La política OAuthV2 de Apigee muestra una respuesta de token que contiene ciertas propiedades que no cumplen con RFC. Por ejemplo, la política mostrará un token con el valor BearerToken, en lugar del valor esperado compatible con RFC Bearer. Esta respuesta token_type no válida puede dar como resultado un error Access denied cuando se usa Prueba esta API.

Para corregir este problema, puede crear una política de JavaScript o de AssignMessage para transformar el resultado de la política en un formato que cumpla con los requisitos. Para obtener más información, consulta Comportamiento que no cumple con RFC.