Gestione dei prodotti API
Utilizza i comandi apic productsapic apis e per gestire i prodotti e le API pubblicati nei IBM®
API Connect cataloghi. Utilizza --scope space l'opzione per gestire i prodotti e le API pubblicati negli Spaces all'interno dei cataloghi.
Riepilogo comandi di gestione prodotti
| Comando di esempio | Descrizione |
|---|---|
apic config:set
catalog=https://platform-api.myserver.com/api/catalogs/myorg/sandbox |
Impostare il catalogo predefinito. |
apic login --username some-user --password some-password --server
platform-api.myserver.com --realm provider/my-identity-provider |
Accedere al server di gestione. Per i dettagli completi su come accedere al tuo server di gestione dalla CLI, vedi Accesso al server di gestione. |
apic create:api --title Routes --product "ClimbOn" |
Crea il prodotto e l'API. |
apic products:publish climbon.yaml |
Pubblicare il prodotto nel catalogo predefinito. Aggiungere l'argomento --stage per mettere in scena il Prodotto. |
apic products:list-all --scope catalog |
Elenca i Prodotti nel catalogo predefinito. |
apic products:get climbon:1.0.0 --output - |
Visualizzare le proprietà del prodotto. Omettere l'argomento di emissione da scaricare in un file. |
apic apis:list-all --scope catalog |
Elenca le API nel Catalogo. |
apic apis:get routes:1.0.0 --output - |
Ottenere le proprietà API. Omettere l'argomento di emissione da scaricare in un file. |
apic products:replace climbon:1.0.0 mapfile.txt |
Sostituire il prodotto indicato nell'ordine con il prodotto in fase di sviluppo o pubblicato specificato nel file di mappatura. Il prodotto sostituito è fuori produzione. |
apic products:supersede climbon:1.0.0 mapfile.txt |
Sostituire il prodotto indicato nell'ordine con il prodotto in fase di lancio o già pubblicato specificato nel file di mappatura. Il prodotto sostituito è obsoleto. |
apic products:delete climbon:1.0.0 |
Eliminare il Prodotto dal Catalogo. Il prodotto deve essere ritirato o obsoleto. |
Utilizzo dei comandi products e apis attraverso un ciclo di vita completo
Questo esempio mostra un ciclo di vita complesso in cui una nuova versione di un prodotto e di un'API sostituisce la versione originale al runtime.
$ref per fare riferimento a un frammento di codice OpenAPI definito in un file separato, il campo $ref viene sostituito con il contenuto del file di destinazione prima che il prodotto che contiene l'API venga preparato o pubblicato con il comando apic publish . Per ulteriori informazioni, vedi Utilizzo di $ref per riutilizzare i frammenti di codice nei tuoi file OpenAPI.- Imposta il catalogo predefinito ed effettua l'accesso al cloud API Connectmgmnthost.com
apic config:set catalog=https://platform-api.myserver.com/api/catalogs/climbon/sandbox apic login --username some-user --password some-password --server platform-api.myserver.com --realm my-identity-providerPer i dettagli completi su come accedere al tuo server di gestione dalla CLI, vedi Accesso al server di gestione.
- Crea e pubblica una versione iniziale
apic create:api --title Routes --version 1.0.0 --filename routes100.yaml apic create:product --title "Climb On" --version 1.0.0 --apis routes100.yaml --filename climbon100.yaml apic products:publish climbon100.yaml- Crea una nuova versione per correggere un bug nell'API, preparalo al catalogo
apic create:api --title Routes --version 1.0.1 --filename routes101.yaml apic create:product --title "Climb On" --version 1.0.1 --apis routes101.yaml --filename climbon101.yaml apic products:publish --stage climbon101.yaml- Esamina il catalogo
apic products:list-all --scope catalogQuesto comando elenca tutti i prodotti presenti nel catalogo. Copiare l'ID del prodottoclimbon:1.0.1. L'ID è simile al seguente esempio.https:/server/api/catalogs/3eca6046-3c27-4ad/ab8772bf-0f65-45/products/8f854623-bda1-4f9- Crea un file di associazione
Ad esempio, se si sostituisce un prodotto, il file di mappatura specifica il prodotto da sostituire e mappa i piani dal prodotto di origine al prodotto di destinazione. Ad esempio, se si sta sostituendo
climbon:1.0.0conclimbon:1.0.1, la proprietàproduct_urlspecifica l' URL e diclimbon:1.0.0.Questo file ha il modulo seguente:product_url: https:/server/api/catalogs/{id}/products/{id} plans: - source: {source_plan_name_1} target: {target_plan_name_1} - source: {source_plan_name_2} target: {target_plan_name_2} . . .Nota:- I nomi del piano di origine e di destinazione possono essere uguali o diversi.
- Ogni piano nel prodotto che si sta sostituendo deve essere associato a un piano nel prodotto di sostituzione.
- "Hot-replace" versione 1.0.0 con 1.0.1
Una volta sostituito in questo modo, il prodotto indicato viene ritirato dal mercato. Non è più attivo.apic products:replace climbon:1.0.1 PRODUCT_PLAN_MAPPING_FILENota:Il prodotto indicato nel comando è il prodotto sostitutivo. Ad esempio, se si sostituisce
climbon:1.0.0conclimbon:1.0.1, il prodotto specificato nel comando èclimbon:1.0.1.- Sostituire la versione 1.0.0 con 1.0.1
- Invece di sostituire a sistema acceso un prodotto esistente con uno nuovo (di norma una versione aggiornata), è possibile sostituire il prodotto esistente con uno nuovo. Quando si sostituisce un prodotto, tutte le sottoscrizioni dell'applicazione esterna a tale prodotto vengono automaticamente spostate nel nuovo prodotto. Quando si sostituisce un prodotto, le sottoscrizioni non vengono automaticamente spostate nel nuovo prodotto, è necessaria un'azione per sottoscrivere le applicazioni esterne al prodotto sostitutivo.Il comando per sostituire un prodotto utilizza lo stesso file di associazione del comando per sostituire un prodotto. Il nome del prodotto sostitutivo è indicato nel comando.
Una volta che un prodotto è stato sostituito, viene contrassegnato come "obsoleto", il che significa che non è più possibile sottoscrivere nuovi abbonamenti a tale prodotto, sebbene esso rimanga attivo e gli abbonamenti esistenti continuino a funzionare.apic products:supersede climbon:1.0.1 PRODUCT_PLAN_MAPPING_FILENota: il prodotto indicato nel comando è quello che sostituisce il precedente. Ad esempio, se si sostituisceclimbon:1.0.0conclimbon:1.0.1, il prodotto specificato nel comando èclimbon:1.0.1. Il file di mappatura specifica l' URL e del prodotto che si sta sostituendo. - Imposta una destinazione di migrazione
- È possibile impostare una destinazione di migrazione per il prodotto esistente. Ciò consente la migrazione.Utilizzare un comando simile al seguente per impostare la destinazione della migrazione.
apic products:set-migration-target climbon:1.0.0 PRODUCT_PLAN_MAPPING_FILENota: il prodotto specificato nel comando è quello dal quale si desidera trasferire gli abbonamenti. Il file di associazione specifica il prodotto di destinazione per le sottoscrizioni.Una volta definita una destinazione di migrazione, gli sviluppatori di applicazioni esterne possono migrare facilmente i propri abbonamenti alle applicazioni tramite il Catalogo dei consumatori. È inoltre possibile eseguire una migrazione degli abbonamenti utilizzando il seguente comando.apic products:execute-migration-target climbon:1.0.0 - Elimina un prodotto
- Quando il prodotto sostituito o sostituito non è più necessario, può essere eliminato.
apic products:delete climbon:1.0.0
Operazioni aggiuntive relative ai prodotti e alle API
clone sottocomando:| Comando | Descrizione |
|---|---|
| prodotti apici: clone | Scarica tutti i prodotti e le relative API dal catalogo o spazio. |
| apic apis: clone | Scarica tutte le API dal catalogo o dallo spazio. |
--confirm parametro:apic products:clear --confirm catalog_namedove catalog_name è il nome del catalogo.Puoi utilizzare uno Spazio per suddividere in partizioni un catalogo in modo che più team possano gestire i Prodotti e le API in modo indipendente in un singolo catalogo. Uno "Spazio" è concettualmente simile a un sottocatalogo, con la differenza che i prodotti e le API presenti in tutti gli spazi all'interno di un catalogo vengono pubblicati nello stesso catalogo dei consumatori. Per ulteriori informazioni su Spaces, consultare la sezione "Utilizzo della syndication" all'indirizzo IBMAPI Connect.
--scope space l'opzione con i comandi apic productsapic
apis e. Ad esempio, per elencare i prodotti contenuti in uno spazio denominato "flights", utilizzare il seguente comando:apic products --scope space --space flights --catalog production --org climbonorg --server platform-api.myserver.com
Modifica dello stato del ciclo di vita di un prodotto in un catalogo o in uno spazio
Per modificare direttamente lo stato del ciclo di vita di un prodotto che è stato precedentemente preparato o pubblicato in un catalogo o in uno spazio, completa la seguente procedura:
- Digita il seguente comando (il trattino finale indica che il comando richiede un input da parte dell'utente):
dove:apic products:update product_name:version --server mgmt_endpoint_url --org organization --scope scope --catalog catalog [--space space] -Il comando restituisce:Reading PRODUCT_FILE arg from stdin - Immettere i seguenti dati, seguiti da una nuova linea:
dove new_state è lo stato in cui si desidera modificare il prodotto e deve avere uno dei seguenti valori.state: new_state- Sottoposto a staging
- Pubblicato
- Obsoleto
- Ritirato
- Archiviato
- Premere
CTRL Dper terminare l'input. Se il comando ha esito positivo, viene confermata la modifica dello stato del ciclo di vita.Ad esempio:apic products:update finance:1.0.0 --server https://myserver.com --org development --scope catalog --catalog sandbox - Reading PRODUCT_FILE arg from stdin state: published finance:1.0.0 [state: published] https://myserver.com/api/catalogs/dce12994-a6a1-487b-83b6-c73bd8498799/006827d5-9e82-427a-abe6-be5b126210f7/products/0f0af980-f505-4f36-b09c-d7b1c9c1a2f2
Il comando fallisce se la modifica dello stato del ciclo di vita non è consentita.
- Dalla messa in scena alla pubblicazione
- Da "obsoleto" a "ritirato"
- Dalla pubblicazione alla messa in scena
- Da pensionato a autore pubblicato
Per i dettagli completi, consultare Il ciclo di vita del prodotto.
apic products:list-all --server mgmt_endpoint_url --org organization --scope scope --catalog catalog [--space space]apic products:list-all --server https://myserver.com --org development --scope catalog --catalog sandbox
graphql-services:1.0.0 [state: staged] https://myserver.com/api/catalogs/dce12994-a6a1-487b-83b6-c73bd8498799/006827d5-9e82-427a-abe6-be5b126210f7/products/7652d568-b396-4bfa-bf71-2f18cea63737
finance:1.0.0 [state: published] https://myserver.com/api/catalogs/dce12994-a6a1-487b-83b6-c73bd8498799/006827d5-9e82-427a-abe6-be5b126210f7/products/0f0af980-f505-4f36-b09c-d7b1c9c1a2f2apic products:get product_name:version --server mgmt_endpoint_url --org organization --scope scope --catalog catalog [--space space] --fields state --output -apic products:get finance:1.0.0 --server https://myserver.com --org development --scope catalog --catalog sandbox --fields state --output -
state: published
Script di esempio
All'indirizzo https://github.com/ibm-apiconnect/example-toolkit-scripts è disponibile una raccolta di script di esempio del toolkit che illustrano come creare e gestire organizzazioni, utenti, app, prodotti e API.