Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione
Documentazione di Apigee X. Informazioni
Configura i criteri di registrazione delle transazioni per ciascun prodotto API nel tuo pacchetto di prodotti API, come descritto nelle sezioni seguenti.
Introduzione
Le norme di registrazione delle transazioni consentono alla monetizzazione di acquisire i parametri delle transazioni e attributi personalizzati. La monetizzazione ha bisogno di queste informazioni per eseguire l'elaborazione della monetizzazione come l'applicazione di piani tariffari.
Ad esempio, se configuri un piano tariffario di quota di condivisione delle entrate, viene generata una percentuale delle entrate generate da ogni transazione relativa al tuo prodotto API monetizzato viene condivisa con lo sviluppatore dell'app che invia la richiesta. La quota di condivisione delle entrate si basa sul valore netto prezzo della transazione (specifica quale), ossia una percentuale del prezzo lordo o netto di ogni transazione viene utilizzata per determinare la quota di condivisione delle entrate. Per questo motivo, la monetizzazione deve per conoscere il prezzo lordo o netto di una transazione, a seconda dei casi. Ottiene il prezzo lordo o netto dalle impostazioni configurate nel criterio di registrazione delle transazioni.
Se imposti un tariffario , dove addebiti allo sviluppatore ogni transazione, puoi impostare la tariffa per il piano in base a un attributo personalizzato come il numero di byte trasmessi in una transazione. La monetizzazione deve sapere cos'è l'attributo personalizzato e dove trovarlo. Quindi devi specificare l'attributo personalizzato nel criterio di registrazione delle transazioni.
Oltre a specificare gli attributi delle transazioni nel criterio di registrazione delle transazioni, puoi specificare i criteri di successo delle transazioni per determinare quando una transazione è andata a buon fine (ad finalità di ricarica). Consulta la sezione Esempi di impostazione dei criteri di successo delle transazioni per impostare i criteri di successo delle transazioni in una registrazione delle transazioni. . Puoi anche specificare attributi personalizzati per un prodotto API (sulla base del quale addebiti relativi al piano tariffario).
Configurazione di un criterio di registrazione delle transazioni
Accedi alla pagina Pacchetti di prodotti, come descritto di seguito.
Edge
Quando aggiungi un bundle di prodotti API utilizzando l'interfaccia utente di Edge, devi configurare il criterio di registrazione delle transazioni procedendo nel seguente modo:
- Seleziona il prodotto API da configurare nella sezione Criterio di registrazione delle transazioni (se nel set di prodotti sono presenti più prodotti API).
- Configura gli attributi delle transazioni.
- Configurare gli attributi personalizzati.
- Collega le risorse con ID transazione univoci.
- Configurare i rimborsi.
- Ripeti l'operazione per ciascun prodotto API definito nel pacchetto di prodotti API.
Perimetrale classico (Private Cloud)
Per configurare un criterio di registrazione delle transazioni utilizzando l'interfaccia utente di Edge classico:
- Accedi a
http://ms-ip:9000
, dove ms-ip è Indirizzo IP o nome DNS del nodo del server di gestione. - Seleziona Pubblica > Prodotti nella barra di navigazione in alto.
- Fai clic su + Norme di registrazione delle transazioni nella riga dell'API applicabile. prodotto. Viene visualizzata la finestra Nuova norma registrazione transazioni.
- Per configurare il criterio di registrazione delle transazioni:
- Fai clic su Salva.
Configurazione degli attributi delle transazioni
Nella sezione Attributi transazione, specifica i criteri che indicano che una transazione di monetizzazione è andata a buon fine.
- Nel campo Criteri di successo della transazione, specifica l'espressione in base al valore dell'attributo Stato
(descritto di seguito) per determinare il momento in cui la transazione è andata a buon fine (ai fini dell'addebito). Transazioni non riuscite
(ovvero, non soddisfano i criteri dell'espressione) vengono registrati, ma non vengono applicati piani tariffari. Ad esempio:
txProviderStatus == 'OK'
- L'attributo Status contiene il valore utilizzato dall'espressione configurata in
nel campo Criteri di successo delle transazioni. Configura l'attributo Status definendo i seguenti campi:
Campo Descrizione Risorsa API Pattern URI definiti nel prodotto API che verranno utilizzati per identificare le transazioni monetizzate. Località risposta Posizione della risposta in cui è specificato l'attributo. I valori validi includono: Variabile di flusso, Intestazione, Corpo JSON e Corpo XML. Valore Valore della risposta. Per specificare più di un valore, fai clic su + Aggiungi x (ad esempio, + Aggiungi variabile di flusso). - Per configurare attributi facoltativi della transazione, attiva l'opzione di attivazione/disattivazione Usa attributi facoltativi e configura
uno qualsiasi degli attributi di transazione definiti nella seguente tabella.
Attributo Descrizione Prezzo lordo Questo attributo è valido solo per i piani tariffari che utilizzano il modello di quota di condivisione delle entrate. Per i piani tariffari, è obbligatorio specificare il prezzo lordo o il prezzo netto. Assicurati che il valore numerico è espresso come tipo di stringa. Prezzo lordo di una transazione. Per piani di quota di condivisione delle entrate, devi registrare l'attributo Prezzo lordo o il Prezzo netto . L'attributo obbligatorio dipende dalla base della quota di condivisione delle entrate. Per Ad esempio, puoi configurare un piano tariffario di quota di condivisione delle entrate basato sul prezzo lordo di un transazione. In tal caso, il campo Prezzo lordo è obbligatorio.
Prezzo netto Questo attributo è valido solo per i piani tariffari che utilizzano il modello di quota di condivisione delle entrate. Per i piani tariffari, è obbligatorio specificare il prezzo lordo o il prezzo netto. Assicurati che il valore numerico è espresso come tipo di stringa. Prezzo netto di una transazione. Per piani di quota di condivisione delle entrate, devi registrare il campo Prezzo netto o . Il campo obbligatorio dipende dalla quota di condivisione delle entrate. Ad esempio: puoi configurare un piano tariffario di quota di condivisione delle entrate basato sul prezzo netto di una transazione. In tal caso, il campo Prezzo netto è obbligatorio.
Valuta Questo attributo è obbligatorio per i piani tariffari che utilizzano il modello di quota di condivisione delle entrate. Il tipo di valuta applicabile alla transazione.
Codice di errore Codice di errore associato alla transazione. Offre ulteriori le informazioni su una transazione non riuscita.
Descrizione elemento Descrizione della transazione.
Tasse Questo attributo è pertinente solo per i modelli di condivisione delle entrate e solo se l'importo delle imposte viene registrato nelle chiamate API. Assicurati che il valore numerico sia espresso come tipo String. Importo dell'imposta sull'acquisto. Prezzo netto più tasse = prezzo lordo.
Ad esempio, impostando i seguenti valori, la monetizzazione ottiene il valore della variabile di flusso dalla risposta al messaggio in una
denominata response.reason.phrase
. Se il valore è OK e
le norme relative al controllo dei limiti di monetizzazione sono
associato alla richiesta ProxyEndpoint del proxy API, la monetizzazione la conteggia come una transazione.
Campo | Valore |
---|---|
Criteri delle transazioni riuscite | txProviderStatus == 'OK' |
Stato: risorsa API | ** |
Stato: posizione risposta | Variabile di flusso |
Stato: variabile di flusso | response.reason.phrase |
Configurazione degli attributi personalizzati
Nella sezione Attributi personalizzati, identifica gli attributi personalizzati da includere nel di registrazione delle transazioni. Ad esempio, se imposti un piano tariffario, in cui addebiti allo sviluppatore l'addebito per ogni transazione, puoi impostare la tariffa per il piano in base a un attributo personalizzato come il numero di di byte trasmessi in una transazione. Devi quindi includere quell'attributo personalizzato nel di registrazione delle transazioni.
Ciascuno di questi attributi viene memorizzato nel log delle transazioni, sul quale puoi eseguire una query. Sono inoltre disponibili visualizzate quando crei un piano tariffario (in modo da poter scegliere uno o più di questi attributi su cui basare la tariffa per il piano).
Puoi includere nelle tue entrate attributi personalizzati definiti nelle norme di registrazione delle transazioni report di riepilogo, come descritto Inclusione di una transazione personalizzata nei report di riepilogo delle entrate.
Per configurare attributi personalizzati, attiva il pulsante di attivazione/disattivazione Utilizza attributi personalizzati e definisci fino a 10 attributi personalizzati. Per ogni attributo personalizzato che includi nelle norme di registrazione delle transazioni, devi specificare le seguenti informazioni.
Campo | Descrizione |
---|---|
Nome attributo personalizzato | Inserisci un nome che descriva l'attributo personalizzato. Se il piano tariffario si basa su un attributo personalizzato, questo nome viene mostrato all'utente nei dettagli del piano tariffario. Ad esempio, se l'attributo personalizzato acquisisce la durata, devi assegnare un nome alla durata dell'attributo. Le unità effettive per l'attributo personalizzato (ad esempio ore, minuti o secondi) vengono impostate nel campo dell'unità di valutazione quando crei un piano tariffario per gli attributi personalizzato. (consulta la sezione Specificare il piano tariffario con dettagli degli attributi personalizzati). |
Risorsa API | Seleziona uno o più suffissi URI (ovvero il frammento URI che segue il percorso di base) di una risorsa API a cui si accede nella transazione. Le risorse disponibili corrispondono a quelle degli attributi delle transazioni. |
Località risposta | Seleziona la posizione nella risposta in cui è specificato l'attributo. I valori validi includono: Variabile di flusso, Intestazione, Corpo JSON e Corpo XML. |
Valore | Specifica un valore per l'attributo personalizzato. Ogni valore specificato corrisponde a un campo, un parametro
o elemento di contenuti che fornisce l'attributo personalizzato nella posizione da te specificata. Per specificare più di un valore, fai clic su + Aggiungi x (ad esempio, + Aggiungi variabile di flusso).
Ad esempio, se configuri un attributo personalizzato denominato Lunghezza contenuto e selezioni Intestazione come posizione della risposta,
Se il valore Lunghezza contenuto è fornito nel campo Content-Length HTTP, dovrai specificare |
Collega risorse con ID transazione univoco
Alcune transazioni sono semplici e prevedono una chiamata API a una risorsa. Tuttavia, altri transazioni possono essere più complesse. Ad esempio, supponiamo che venga eseguita una transazione per l'acquisto di un prodotto in-app comporta più chiamate alle risorse:
- Una chiamata a un'API di prenotazione che garantisce che un utente che ha scelto il pagamento anticipato disponga di credito sufficiente per acquistare il prodotto e assegna ("riserva") i fondi per l'acquisto.
- Una chiamata a un'API Charge che deduce i fondi dall'account dell'utente che ha effettuato il pagamento anticipato.
Per elaborare l'intera transazione, la monetizzazione ha bisogno di un modo per collegare la prima risorsa (la chiamata e risposta da e verso l'API di prenotazione) con la seconda risorsa (la chiamata e la risposta e dall'API Charge). A tal fine, si basa sulle informazioni da te specificate nel Collega le risorse con l'ID transazione univoco.
Per configurare attributi personalizzati, attiva il pulsante di attivazione/disattivazione Utilizza ID transazione univoci e collegalo le transazioni. Per ogni transazione, devi specificare una risorsa, una località di risposta e un valore dell'attributo che essere collegati ai valori corrispondenti nell'altro transazioni.
Ad esempio, supponiamo che la chiamata API Reserve e la chiamata API Charge siano collegate come segue:
un campo denominato session_id
nell'intestazione della risposta dall'API di prenotazione corrisponde a un
intestazione della risposta denominata reference_id
dall'API Charge. In questo caso, potresti impostare le voci
nella sezione Collega risorse con ID transazione univoco:
Risorsa | Località della risposta | Valore |
---|---|---|
reserve/{id}** |
Intestazione |
session_id |
/charge/{id}** |
Intestazione |
reference_id |
Configurazione dei rimborsi
Nella sezione Rimborsi, specifichi gli attributi che la monetizzazione utilizzata per elaborare i rimborsi.
Ad esempio, supponiamo che un utente acquisti un prodotto da un app mobile che utilizza le tue API monetizzate. La transazione viene monetizzata in base ai dati condivisi il piano delle entrate. Tuttavia, supponiamo che l'utente non sia soddisfatto del prodotto e voglia restituirlo. Se il prodotto viene rimborsato usando una chiamata all'API che effettua il rimborso, la monetizzazione le modifiche necessarie alla monetizzazione. Questo avviene in base alle informazioni specificate nel Sezione Rimborsi delle norme di registrazione delle transazioni.
Per configurare i rimborsi, attiva il pulsante di attivazione/disattivazione Utilizza attributi rimborso e definisci i dettagli del rimborso:
- Definisci i criteri di rimborso definendo i seguenti campi:
Campo Descrizione Località risposta Risorsa per la transazione di rimborso. Se il prodotto API fornisce per più risorse, puoi selezionare solo quella che esegue il rimborso. Criteri di successo del rimborso Espressione basata sul valore di L'attributo Status (descritto di seguito) per determinare il momento in cui la transazione di rimborso è andata a buon fine (per l'addebito finalità). Le transazioni di rimborso non andate a buon fine (ovvero che non soddisfano i criteri del ) vengono registrati, ma non vengono applicati i piani tariffari. Ad esempio: txProviderStatus == 'OK'
- Configura l'attributo Status definendo i seguenti campi:
Campo Descrizione Località risposta Posizione della risposta in cui è specificato l'attributo. I valori validi includono: Variabile di flusso, Intestazione, Corpo JSON e Corpo XML. Valore Valore della risposta. Per specificare più di un valore, fai clic su + Aggiungi x (ad esempio, + Aggiungi variabile di flusso). - Configura l'attributo ID padre definendo i seguenti campi:
Campo Descrizione Località risposta Posizione della risposta in cui è specificato l'attributo. I valori validi includono: Variabile di flusso, Intestazione, Corpo JSON e Corpo XML. Valore ID della transazione per la quale è stato elaborato un rimborso. Ad esempio, se un utente acquista un prodotto e poi richiede un rimborso, L'ID transazione principale è l'ID della transazione di acquisto. Per specificare più di un valore, fai clic su + Aggiungi x (ad esempio, + Aggiungi variabile di flusso). - Per configurare attributi facoltativi per il rimborso, attiva l'opzione Utilizza attributi rimborso facoltativi e configura gli attributi. Gli attributi facoltativi per il rimborso corrispondono a quelli facoltativi per la transazione, come definito in Configurazione degli attributi delle transazioni.
Gestione dei criteri di registrazione delle transazioni tramite l'API
Le seguenti sezioni descrivono come gestire i criteri di registrazione delle transazioni utilizzando l'API.
Creazione di un criterio di registrazione delle transazioni tramite l'API
Puoi specificare una norma di registrazione delle transazioni come attributo di un prodotto API. Il valore del parametro identifica:
- Il suffisso URI della risorsa di prodotto a cui si trova il criterio di registrazione delle transazioni
in allegato. Il suffisso include una variabile di pattern racchiusa tra parentesi graffe. Lo schema
viene valutata dai servizi API in fase di runtime. Ad esempio, il seguente suffisso URI
include la variabile pattern
{id}
./reserve/{id}**
In questo caso, i servizi API valutano il suffisso URI della risorsa come
/reserve
seguito da qualsiasi sottodirectory che inizia con un ID definito dall'API o il provider di servizi di terze parti. - La risorsa nella risposta a cui è collegata. Un prodotto API può avere più delle risorse e ogni risorsa può avere un criterio di registrazione delle transazioni collegato a una risposta da quella risorsa.
- Un criterio delle variabili di estrazione che consente al criterio di registrazione delle transazioni di estrarre contenuti da un messaggio di risposta per i parametri della transazione che vuoi acquisire.
Puoi aggiungere l'attributo del criterio di registrazione delle transazioni a un prodotto API inviando una richiesta PUT
all'API di gestione
https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/{apiproduct_Id}
(e non a un'API di monetizzazione).
Specificare i criteri di successo delle transazioni utilizzando l'API
Puoi specificare i criteri di successo delle transazioni per determinare quando una transazione ha esito positivo (ai fini della ricarica). Transazioni non riuscite (ossia, soddisfano i criteri nell'espressione) vengono registrati, ma non vengono applicati i piani tariffari. Per esempi di configurazione criteri di successo delle transazioni, consulta Esempi di impostazione dei criteri di riuscita delle transazioni in un criterio di registrazione delle transazioni.
Puoi specificare i criteri di successo delle transazioni come attributo di un prodotto API. Per farlo
l'invio di una richiesta PUT all'API di gestione
https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/{apiproduct_Id}
(e non all'API di monetizzazione).
Ad esempio, nella richiesta seguente una transazione ha esito positivo se il valore
txProviderStatus
è success
(correlato ai criteri di successo delle transazioni
specifiche sono evidenziate).
$ curl -H "Content-Type: application/json" -X PUT -d \ '{ "apiResources": [ "/reserve/{id}**" ], "approvalType": "auto", "attributes": [ { "name": "MINT_TRANSACTION_SUCCESS_CRITERIA", "value": "txProviderStatus == 'OK'" } ], "description": "Payment", "displayName": "Payment", "environments": [ "dev" ], "name": "payment", "proxies": [], "scopes": [ "" ] }' \ "https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/payment" \ -u email:password
Specificare gli attributi personalizzati utilizzando l'API
Puoi specificare attributi personalizzati per un prodotto API a cui si applicano gli addebiti del piano tariffario base. Per Ad esempio, se imposti un piano tariffario, in cui addebiti allo sviluppatore ogni transazione, puoi impostare la tariffa per il piano in base a un attributo personalizzato come il numero di byte trasmessi in una transazione. Quando crei un piano tariffario, puoi specificare uno o più attributi personalizzati: su cui basare la tariffa per il piano. Tuttavia, qualsiasi prodotto specifico in un piano tariffario può avere solo un attributo personalizzato su cui basare la tariffa per il piano.
Puoi specificare gli attributi personalizzati come attributi di un prodotto API. A questo scopo, emetti un PUT
richiesta all'API di gestione
https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/{apiproduct_Id}
(e non all'API di monetizzazione).
Per ogni attributo personalizzato che aggiungi a un prodotto API, devi specificare un nome e un
valore dell'attributo. Il nome deve essere nel formato MINT_CUSTOM_ATTRIBUTE_{num}
, dove
{num} è un numero intero.
Ad esempio, la seguente richiesta specifica tre attributi personalizzati.
$ curl -H "Content-Type: application/json" -X PUT -d \ '{ "apiResources": [ "/reserve/{id}**", "/charge/{id}**" ], "approvalType": "auto", "attributes": [ { "name": "MINT_CUSTOM_ATTRIBUTE_1", "value": "test1" }, { "name": "MINT_CUSTOM_ATTRIBUTE_2", "value": "test2" } ], "name": "payment", "proxies": [], "scopes": [ "" ] }' \ "https://api.enterprise.apigee.com/v1/organizations/{org_name}/apiproducts/payment" \ -u email:password
Esempi di impostazione dei criteri di successo delle transazioni in una transazione criterio di registrazione
La tabella seguente fornisce esempi di transazioni riuscite e non riuscite, in base ai
l'espressione dei criteri di successo della transazione e il valore txProviderStatus
restituito
dal proxy API. txProviderStatus
è la variabile interna utilizzata dalla monetizzazione
per determinare il successo delle transazioni.
Espressione dei criteri di successo | Espressione valida? | Valore txProviderStatus dal proxy API | Risultato valutazione |
---|---|---|---|
null |
true | "200" |
falso |
"" |
falso | "200" |
falso |
" " |
falso | "200" |
falso |
"sdfsdfsdf" |
falso | "200" |
falso |
"txProviderStatus =='100'" |
true | "200" |
falso |
"txProviderStatus =='200'" |
true | "200" |
true |
"true" |
true | "200" |
true |
"txProviderStatus=='OK' OR |
true | "OK" |
true |
"txProviderStatus matches '(OK)|(Not Found)|(Bad Request)'" |
true | "OK" |
true |
"txProviderStatus matches '(OK)|(Not Found)|(Bad Request)'" |
true | "Not Found" |
true |
"txProviderStatus matches '(OK)|(Not Found)|(Bad Request)'" |
true | "Bad Request" |
true |
"(txProviderStatus?:'') matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | "Bad Request" |
true |
"(txProviderStatus?:'') matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | null |
falso |
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | "bad request" |
true |
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | "Redirect" |
falso |
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | "heeeelllooo" |
falso |
"txProviderStatus matches '(?i)(OK)|(Not Found)|(Bad Request)'" |
true | null |
falso |
"txProviderStatus == 100" |
true | "200" |
falso |