Le API API Connect REST
Come iniziare a utilizzare le API API Connect REST
Le API API Connect REST possono essere utilizzate per le seguenti operazioni:
- Automatizzare la gestione di API Connect.
- Implementare script e strumenti per supportare un ambiente di integrazione continuo per lo sviluppo e la pubblicazione di API.
- Gestire i cataloghi delle API e i relativi sottoscrittori.
- Visualizza i dati analitici.
La documentazione di riferimento completa per le API API Connect REST è disponibile qui: Documentazione API Connect API REST.
Prerequisiti
Per utilizzare le API API Connect REST, è necessario soddisfare i seguenti prerequisiti:
- Si consideri un API Connect utente che fa parte di un'organizzazione di fornitori o di consumatori.
- Credenziali dell'app: un client_id e un client_secret. Queste credenziali possono essere ottenute dall'interfaccia utente di API Manager oppure fornite dal proprio API Connect amministratore.
Per ottenere gli URL degli endpoint API e le credenziali dell'app, segui questi passaggi:
- Nella pagina iniziale dell'interfaccia utente di API Manager, fare clic sul riquadro "Scarica il toolkit".
- Scarica le credenziali del Toolkit (non è necessario scaricare la CLI o l'API Designer).
- Apri il file
credentials.jsonscaricato per visualizzare la piattaforma e gli endpoint client, nonché le credenziali necessarie per richiamare le API su tali endpoint:{ "cloud_id": "e8fcdec3-bfb9-44bd-bf90-03d8639c4916", "toolkit": { "endpoint": "https://example-platform-api.ibm.com/api", "client_id": "7ad7b6c5-fa07-4222-808d-8de7266dcd1a", "client_secret": "b7127e44-4811-48be-be9d-6591302de04a" }, "consumer_toolkit": { "endpoint": "https://example-consumser-api.ibm.com/consumer-api", "client_id": "3b10e0db-1cd4-4aa8-af02-51a83e334f1c", "client_secret": "a5a672b7-e3b2-4d2b-984b-4059ea82ae65" }, "governance": { "endpoint": "https://example-governance.ibm.com/governance", "client_id": "ba48537c-7a6e-4232-92b6-ae67ad764933", "client_secret": "790d8a6d-e323-46bd-a05c-3d212e93d794" }, "discovery": { "endpoint": "https://example-discovery.ibm.com/discovery", "client_id": "d872a2f4-bc6e-4e91-b187-bbb5b99d4605", "client_secret": "c0b5ddf9-58e6-4246-88de-243ce217731a" } }Gli endpoint e le credenziali contenuti nelcredentials.jsonfile sonotoolkit: L'endpoint dell'API della piattaforma. Utilizzare questa opzione per le chiamate API a livello di organizzazione del fornitore.consumer_toolkit: L'endpoint dell'API per i consumatori. Utilizza questa opzione per le chiamate API relative a un'organizzazione cliente, come ad esempio la creazione di un'app in un'organizzazione cliente.governance: Consulta la funzione "Governance delle API ".discovery: Consulta la funzione "API Discovery".
Draft comment: iainsoed@uk.ibm.com
what is cloud_id for?
credentials.json file.Ottenere un token al portatore
Ogni chiamata alle API REST deve essere autenticata tramite un token bearer nell'intestazione Authorization HTTP. Crea una chiave API. Per ulteriori informazioni su come creare una chiave API, consulta la sezione Gestione delle chiavi API REST della piattaforma.
curl -v -k -X POST -d '{"api_key": "<api_key>", "client_id": "<client_id>", "client_secret": "<client_secret>", "grant_type": "api_key"}' -H 'Content-Type: application/json' -H 'Accept: application/json' https://<management_server_platform_api_endpoint>/api/token<api-key>è la chiave API che hai generato.<client_id>è l'ID cliente riportato nella sezione "toolkit" delcredentials.jsonfile, oppure quello fornito dall'amministratore del cloud di API Connect.<client_secret>è il segreto client riportato nella sezione "toolkit" delcredentials.jsonfile, oppure fornito dal proprio amministratore del cloud API Connect.provider/default-idp-2per i membri dell'organizzazione dei fornitori.- consumatori:
<provider org>:<catalog>/<catalog>-idpper i membri delle associazioni dei consumatori.
Il token al portatore viene restituito nella access_token proprietà:
{
"access_token": "<bearer_token>",
"token_type": "Bearer",
"expires_in": 28800
}
expires_in valore indica il numero di secondi che mancano alla scadenza del token. Alla scadenza, è necessario richiedere un nuovo token al portatore.Effettuare chiamate all'API REST
curl -k -X <HTTP Method> --url 'https://<rest api endpoint>/<api path> -H 'Authorization: Bearer <bearer_token>'-H 'X-IBM-Consumer-Context: <provider org>.<catalog>'Esempi di chiamate all'API REST
- Ottieni un elenco delle organizzazioni di fornitori
- Utilizza un token al portatore creato con le credenziali di un membro dell'organizzazione del fornitore e specifica l'endpoint dell'API della piattaforma:
curl -k -X GET --url 'https://<platform api endpoint>/api/orgs' -H 'Authorization: Bearer <bearer_token>' - Ottieni un elenco delle app presenti in un catalogo
- Utilizza un token al portatore creato con le credenziali di un membro dell'organizzazione consumatrice, specifica l'endpoint API del consumatore e includi
X-IBM-Consumer-Contextl'intestazione:curl -k -X GET --url 'https://<consumer api endpoint>/consumer-api/orgs/<consumer org>/apps' -H 'X-IBM-Consumer-Context: <provider org>.<catalog>' -H 'Authorization: Bearer <bearer_token>' - Ottieni i dati degli eventi dell'API di analisi per un catalogo:
curl -k -X GET --url 'https://<platform api endpoint>/analytics/<analytics service>/orgs/<provider org>/events' -H 'Authorization: Bearer <bearer_token>'Per i dati analitici relativi alle organizzazioni di fornitori, utilizzare <endpoint API della piattaforma>.
Per i dati analitici relativi alle organizzazioni dei consumatori, utilizzare <endpoint API per i consumatori> e/consumer-analyticsal posto di/analytics. Includi ancheX-IBM-Consumer-Contextl'intestazione. Ad esempio:curl -k -X GET --url 'https://<consumer api endpoint>/consumer-analytics/orgs/<consumer org>/dashboard' -H 'X-IBM-Consumer-Context: <provider org>.<catalog>' -H 'Authorization: Bearer <bearer_token>'Per ulteriori informazioni sull'interrogazione dei dati di analisi tramite l'API REST, consultare la sezione "Utilizzo dell'API REST di analisi ".
Documentazione di riferimento per le API API Connect REST: Documentazione API Connect delle API REST.
Risoluzione dei problemi relativi alle chiamate API REST non riuscite
Il codice di ritorno e il messaggio di errore di HTTP forniscono informazioni sulle possibili cause dell'errore:
- HTTP 403:
Accesso negato
. Verifica che il tuo token al portatore sia stato creato con le credenziali corrette per la chiamata API. - HTTP 404:
Pagina non trovata
. Verifica che l'endpoint dell'API URL e il percorso siano corretti. Stai effettuando una chiamata API di consumo sull'endpoint API della piattaforma? - HTTP 401:
Accesso non autorizzato
. Verifica che il tuo token al portatore sia corretto e non sia scaduto. Se viene restituito questo messaggio quando richiedi un token bearer, verifica che,usernamepassword,realm,client_id, eclient_secretsiano corretti.
It is confusing that the first part of the path for platform api calls is included here. The platform endpoint as the user defines on install is
example-platform-api.ibm.com, it is notexample-platform-api.ibm.com/api. Same with consumer-api.