Documentation de référence sur les variables de flux

Cette page s'applique à Apigee et à Apigee hybrid.

Consultez la documentation d'Apigee Edge.

Cette section fournit des informations de référence sur les variables de flux.

Apigee définit les variables de flux suivantes :

apigee                 is                       request
apiproduct             loadbalancing            response
apiproxy               message                  route
client                 messageid                servicecallout
current                mint                     system
environment            organization             target
error                  proxy                    variable
fault                  publishmessage           
graphql                ratelimit                

Chacune de ces variables est décrite plus en détail dans les sections suivantes.

apigee

Une variable d'aide qui fournit des informations sur la durée d'exécution de la règle.

Le tableau suivant décrit les propriétés de la variable apigee :

Propriété Type Lecture/Écriture Description Début du champ d'application
apigee.metrics.policy.policy_name.timeTaken Entier Lecture seule Durée d'exécution de la règle, en nanosecondes. Règle

apiproduct

Variable d'aide qui fournit des informations sur les produits API.

Le tableau suivant décrit les propriétés de la variable apiproduct :

Propriété Type Lecture/Écriture Description Début du champ d'application
apiproduct.operation Chaîne Lecture seule

Nom de l'opération associée au produit API. Cette variable vous permet de faire la distinction entre les paramètres de la règle de quota et les paramètres de quota d'une opération d'un produit API.

Par exemple, my-operation.

Requête de proxy
apiproduct.operation.resource Chaîne Lecture seule

Nom de ressource de l'opération correspondant à une requête.

Requête de proxy
apiproduct.operation.methods Tableau Lecture seule

Tableau des méthodes HTTP que l'opération mise en correspondance autorise.

Requête de proxy
apiproduct.operation.attributes.key_name Tableau Lecture seule

Récupère la valeur d'attribut personnalisé correspondant à key_name.

Requête de proxy

Pour en savoir plus, consultez les ressources suivantes :

apiproxy

Décrit le proxy d'API.

Le tableau suivant décrit les propriétés de la variable apiproxy :

Propriété Type Lecture/Écriture Description Début du champ d'application
apiproxy.name Chaîne Lecture seule Nom du proxy d'API. Par exemple, My Proxy. Requête de proxy
apiproxy.revision Chaîne Lecture seule Numéro de révision d'un proxy d'API. Par exemple, 6. Requête de proxy
apiproxy.basepath Chaîne Lecture seule Chemin de base du déploiement (spécifié lors du déploiement de l'API). Requête de proxy

Pour en savoir plus sur l'utilisation des proxys d'API, consultez la section Comprendre les API et les proxys d'API.

client

Application ou système qui a envoyé une requête à l'équilibreur de charge.

Le tableau suivant décrit les propriétés de la variable client :

Propriété Type Lecture/Écriture Description Début du champ d'application
client.cn Chaîne Lecture seule

Nom commun spécifié dans le certificat TLS/SSL présenté par l'application cliente.

Requête de proxy
client.country Chaîne Lecture seule

Pays spécifié dans le certificat TLS/SSL présenté par l'application cliente.

Requête de proxy
client.email.address Chaîne Lecture seule

Adresse e-mail spécifiée dans le certificat TLS/SSL présenté par l'application cliente.

Requête de proxy
client.host Chaîne Lecture seule

Adresse IP de l'hôte HTTP associée à la requête reçue par le ProxyEndpoint.

Requête de proxy
client.ip Chaîne Lecture seule

Adresse IP du client ou du système qui envoie le message à l'équilibreur de charge. Il peut s'agir, par exemple, de l'adresse IP du client d'origine ou d'une adresse IP d'équilibreur de charge.

Requête de proxy
client.locality Chaîne Lecture seule

Localité (ville) du certificat TLS/SSL présenté par le client.

Requête de proxy
client.organization Chaîne Lecture seule Organisation spécifiée dans le certificat TLS/SSL présenté par le client. (Pas nécessairement équivalente à l'organisation sur Apigee.) Requête de proxy
client.organization.unit Chaîne Lecture seule

Unité organisationnelle spécifiée dans le certificat TLS/SSL présenté par le client.

Requête de proxy
client.port Entier Lecture seule

Port HTTP associé à la requête du client d'origine au ProxyEndpoint.

Requête de proxy
client.received.end.time Chaîne Lecture seule

Heure, exprimée sous forme de chaîne, à laquelle le proxy a fini de recevoir la requête du client d'origine au ProxyEndpoint. Par exemple : mer, 21 août 2013 19:16:47 UTC.

Cette valeur temporelle est la représentation sous forme de chaîne de la quantité d'horodatage 32 bits correspondante. Par exemple, "mer 21 août 2013 19:16:47 UTC" correspond à la valeur d'horodatage 1377112607413.

Requête de proxy
client.received.end.timestamp Long Lecture seule

Valeur d'horodatage spécifiant le moment où le proxy a fini de recevoir la requête du client d'origine au ProxyEndpoint. Cette valeur est un entier (long) de 64 bits contenant le nombre de millisecondes écoulées depuis minuit, le 1er janvier 1970 UTC.

Requête de proxy
client.received.start.time Chaîne Lecture seule

Heure, exprimée sous forme de chaîne, à laquelle le proxy a commencé à recevoir la requête du client d'origine au ProxyEndpoint. Par exemple : mer, 21 août 2013 19:16:47 UTC.

Cette valeur temporelle est la représentation sous forme de chaîne de la quantité d'horodatage 32 bits correspondante. Par exemple, "mer 21 août 2013 19:16:47 UTC" correspond à la valeur d'horodatage 1377112607413.

Requête de proxy
client.received.start.timestamp Long Lecture seule

Valeur d'horodatage spécifiant le moment où le proxy a commencé à recevoir la requête du client d'origine au ProxyEndpoint. Cette valeur est un entier (long) de 64 bits contenant le nombre de millisecondes écoulées depuis minuit, le 1er janvier 1970 UTC.

Requête de proxy
client.scheme Chaîne Lecture seule

Renvoie HTTP ou HTTPS en fonction du transport utilisé par l'application cliente pour envoyer le message de requête.

Requête de proxy
client.sent.end.time Chaîne Lecture seule

Heure, exprimée sous forme de chaîne, à laquelle le proxy a fini d'envoyer la réponse du ProxyEndpoint au client. Par exemple : mer, 21 août 2013 19:16:47 UTC.

Cette valeur est une représentation sous forme de chaîne du client.sent.end.timestamp 32 bits correspondant. Par exemple, "mer, 21 août 2013 19:16:47 UTC" correspond à la valeur d'horodatage 1377112607413.

PostClientFlow
client.sent.end.timestamp Long Lecture seule Valeur d'horodatage spécifiant le moment où le ProxyEndpoint a fini de renvoyer la réponse à l'application cliente d'origine. Cette valeur est un entier (long) de 64 bits contenant le nombre de millisecondes écoulées depuis minuit, le 1er janvier 1970 UTC. PostClientFlow
client.sent.start.time Chaîne Lecture seule Heure, exprimée sous forme de chaîne, lorsque le ProxyEndpoint a commencé à renvoyer la réponse à l'application cliente d'origine. Par exemple : mer, 21 août 2013 19:16:47 UTC.

Cette valeur est une représentation sous forme de chaîne du client.sent.start.timestamp 32 bits correspondant. Par exemple, "mer, 21 août 2013 19:16:47 UTC" correspond à la valeur d'horodatage 1377112607413.

PostClientFlow
client.sent.start.timestamp Long Lecture seule Moment où le proxy a commencé à envoyer la réponse au client depuis le ProxyEndpoint. Cette valeur est exprimée sous la forme d'un entier (long) de 64 bits contenant le nombre de millisecondes écoulées depuis minuit, le 1er janvier 1970 UTC. PostClientFlow
client.ssl.enabled Chaîne Lecture seule

true si le ProxyEndpoint est configuré pour TLS/SSL, false dans le cas contraire.

Requête de proxy
client.state Chaîne Lecture seule

État spécifié dans le certificat TLS/SSL présenté par le client.

Requête de proxy

current

Contient des informations sur le flux de proxy d'API actuel.

Le tableau suivant décrit les propriétés de la variable current :

Propriété Type Lecture/Écriture Description Début du champ d'application
current.flow.name Chaîne Lecture seule Nom du flux en cours d'exécution (par exemple, PreFlow, PostFlow ou le nom d'un flux conditionnel). Requête de proxy
current.flow.description Chaîne Lecture seule Description du flux en cours d'exécution. Il s'agit de la valeur de l'élément <Description> dans la configuration XML du flux. Requête de proxy

Vous pouvez afficher ces propriétés dans la vue Trace de l'UI Apigee.

environment

Conteneur pour la propriété environment.name.

Le tableau suivant décrit les propriétés de la variable environment :

Propriété Type Lecture/Écriture Description Début du champ d'application
environment.name Chaîne Lecture seule Nom de l'environnement dans lequel la transaction a été exécutée. Requête de proxy

error

Objet contextuel représentant un message d'erreur dans le flux d'erreur.

Le tableau suivant décrit les propriétés de la variable error :

Propriété Type Lecture/Écriture Description Début du champ d'application
error message Lecture/Écriture Erreur de type message, qui est un objet contextuel dans le flux d'erreur. Erreur
error.content Chaîne Lecture/Écriture Contenu de l'erreur. Erreur
error.message Chaîne Lecture seule

Message associé à une erreur dont la valeur n'est disponible qu'avant l'exécution du flux d'erreur.

Erreur
error.status.code Entier Lecture seule

Code d'état HTTP associé à l'erreur. Par exemple, 400.

Erreur
error.reason.phrase Chaîne Lecture seule

Expression de motif associée à l'erreur. Exemple : Bad Request.

Erreur
error.transport.message TransportMessage Lecture seule

Toute erreur de type TransportMessage.

Erreur
error.state Entier Lecture seule

État dans le Flux où une erreur s'est produite.

Erreur
error.header.header_name Chaîne Lecture/Écriture

Obtenir ou définir l'en-tête de réponse.

Erreur

fault

Fournit des informations sur une source d'erreur d'exécution, sa cause et les détails s'y rapportant. Apigee définit ces variables lorsqu'une règle génère une erreur et que les valeurs sont spécifiques à la règle concernée. Pour savoir dans quels cas des variables fault sont définies, consultez la section À propos des erreurs liées aux règles.

Propriété Type Lecture/Écriture Description Début du champ d'application
fault.name Chaîne Lecture seule Nom de l'erreur, comme décrit dans le tableau Erreurs d'exécution, inclus dans chaque rubrique de référence de la règle. Cette variable peut être utile dans les conditions appliquées aux règles d'erreur. Erreur
fault.reason Chaîne Lecture seule Raison de l'erreur. Par exemple, lorsque la règle OASValidation détecte qu'une requête entrante n'est pas conforme à la spécification OpenAPI, elle définit cette variable sur une chaîne décrivant le nom de la règle, le nom de la spécification, et les raisons de la non-validation de la requête selon la spécification. D'autres règles vont définir cette variable sur des messages correspondant à leurs erreurs respectives. Erreur
fault.category Chaîne Lecture seule Catégorie. Par exemple, si l'erreur se produit lors d'une étape d'une règle, cette variable peut contenir la valeur "Step". Cette variable peut être utile dans les conditions appliquées aux règles d'erreur. Erreur
fault.subcategory Chaîne Lecture seule Sous-catégorie. Par exemple, si la règle OASValidation détecte qu'une requête n'est pas conforme à une spécification OpenAPI, elle définit cette variable sur "OASValidationFailure". Cette variable peut être utile dans les conditions appliquées aux règles d'erreur. Erreur

graphql

Vous donne accès aux résultats d'une requête GraphQL au moment de l'exécution. Pour en savoir plus, consultez la section règle GraphQL.

Le tableau suivant décrit les propriétés de la variable graphql :

Propriété Type Lecture/Écriture Description
graphql Type complexe LECTURE SEULE/LECTURE ÉCRITURE La requête GraphQL racine. CHAMP D'APPLICATION
graphql.fragment Type complexe LECTURE SEULE/LECTURE ÉCRITURE Une référence au fragment par défaut pour cette requête. CHAMP D'APPLICATION
graphql.fragment.count Entier Lecture seule Nombre de fragments générés par cette requête GraqhQL. CHAMP D'APPLICATION
graphql.fragment.INDEX.selectionSet.INDEX TYPE LECTURE SEULE/LECTURE ÉCRITURE Référence à l'ensemble de sélection au niveau de l'index spécifié. CHAMP D'APPLICATION
graphql.fragment.INDEX.selectionSet.INDEX.name Chaîne LECTURE SEULE/LECTURE ÉCRITURE Nom de l'ensemble de sélection au niveau de l'index spécifié. CHAMP D'APPLICATION
graphql.fragment.INDEX.selectionSet.count Entier Lecture seule Nombre d'ensembles de sélection dans ce fragment. CHAMP D'APPLICATION
graphql.fragment.INDEX.selectionSet.name Chaîne LECTURE SEULE/LECTURE ÉCRITURE Nom de l'ensemble de sélection par défaut défini dans le fragment. CHAMP D'APPLICATION
graphql.operation Type complexe LECTURE SEULE/LECTURE ÉCRITURE Référence à l'opération par défaut de la requête.

Vous ne pouvez pas définir de quotas au niveau de l'opération. Définissez-les plutôt au niveau de l'environnement.

CHAMP D'APPLICATION
graphql.operation.name Chaîne Lecture seule Nom de l'opération par défaut de la requête. CHAMP D'APPLICATION
graphql.operation.operationType Enumeration Lecture seule Type d'opération par défaut de la requête pouvant être exécuté sur ce proxy d'API. Les valeurs possibles sont query, mutation ou all. CHAMP D'APPLICATION
graphql.operation.selectionSet Type complexe Ensemble de sélection par défaut définie pour l'opération par défaut de la requête. CHAMP D'APPLICATION
graphql.operation.selectionSet.count Entier Lecture seule Nombre d'ensembles de sélection dans l'opération par défaut de la requête. CHAMP D'APPLICATION
graphql.operation.selectionSet.name Chaîne Lecture seule Nom de l'ensemble de sélection par défaut de l'opération par défaut de la requête. CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX Entier Lecture seule Référence à l'ensemble de sélection au niveau de l'index spécifié dans la liste des ensembles de sélection. CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX.name Chaîne Lecture seule Nom de la sélection au niveau de l'index spécifié dans la liste des ensembles de sélection pour cette opération. CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX.[selectionSet] Type complexe LECTURE SEULE/LECTURE ÉCRITURE Un ou plusieurs objets d'ensemble de sélection supplémentaires.

Les ensembles de sélection sont accessibles de manière récursive. Par exemple, après selectionSet.index, vous pouvez utiliser une autre propriété selectionSet.index plutôt qu'une propriété name. Et ainsi de suite jusqu'à atteindre la valeur <MaxCount> définie dans la règle GraphQL.

CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX.directive Type complexe Référence à la directive par défaut dans l'ensemble de sélection spécifié. CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX.directive.count Type complexe CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX.directive.INDEX Entier Lecture seule Référence à la directive au niveau de l'index spécifié. CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX.directive.INDEX.argument.INDEX Entier Lecture seule Référence à l'argument au niveau de l'index spécifié. CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX.directive.INDEX.argument.INDEX.name Chaîne Nom de l'argument au niveau de l'index spécifié. CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX.directive.INDEX.argument.INDEX.value Chaîne Valeur de l'argument au niveau de l'index spécifié. CHAMP D'APPLICATION
graphql.operation.selectionSet.INDEX.directive.name Chaîne CHAMP D'APPLICATION
graphql.operation.variableDefinitions Type complexe Référence à une liste de définitions de variables pour l'opération par défaut de la requête. CHAMP D'APPLICATION
graphql.operation.variableDefinitions.count Entier Nombre de définitions de variables pour l'opération par défaut de la requête. CHAMP D'APPLICATION
graphql.operation.variableDefinitions.INDEX Entier Une référence à la définition de la variable au nivea de l'index spécifié. CHAMP D'APPLICATION
graphql.operation.variableDefinitions.INDEX.name Chaîne Nom de la définition de la variable au niveau de l'index spécifié. CHAMP D'APPLICATION
graphql.operation.variableDefinitions.INDEX.type Type de la valeur de la définition de variable au niveau de l'index spécifié. CHAMP D'APPLICATION

is

Conteneur pour la propriété is.error.

Le tableau suivant décrit les propriétés de la variable is :

Propriété Type Lecture/Écriture Description Début du champ d'application
is.error Booléen Lecture seule

Indicateur d'erreur.

Requête de proxy

loadbalancing

Fournit des informations sur l'état de l'équilibrage de charge de TargetEndpoint.

Le tableau suivant décrit les propriétés de la variable loadbalancing :

Propriété Type Lecture/Écriture Description Début du champ d'application
loadbalancing.failedservers Tableau de chaînes Lecture seule

Liste des TargetServers défaillants lors de l'équilibrage de charge sur TargetEndpoint.

Réponse cible
loadbalancing.isfallback Booléen Lecture seule

true si le remplacement est activé pour le TargetServer appelé lors de l'équilibrage de charge sur TargetEndpoint.

Réponse cible
loadbalancing.targetserver Chaîne Lecture seule

TargetServer appelé lors de l'équilibrage de charge sur TargetEndpoint. Défini uniquement si l'élément <Path> est défini au moment de définir l'élément de l'équilibreur de charge.

Réponse cible

message

Objet contextuel, avec la même valeur que request dans le flux de requête, ou response dans le flux de réponse, ou error dans le flux d'erreurs.

Le tableau suivant décrit les propriétés de la variable message :

Propriété Type Lecture/Écriture Description Début du champ d'application
message message Lecture/Écriture

Objet contextuel, avec la même valeur que request dans le flux de requête, ou response dans le flux de réponse, ou error dans le flux d'erreur.

Requête de proxy
message.content Chaîne Lecture/Écriture

Contenu de la requête, de la réponse ou du message d'erreur.

Requête de proxy
message.formparam.param_name Chaîne Lecture/Écriture

Valeur du paramètre de formulaire spécifié.

Requête de proxy
message.formparam.param_name.
 values
Collection Lecture seule

Toutes les valeurs du paramètre de formulaire spécifié dans le message.

Requête de proxy
message.formparam.param_name.
 values.count
Entier Lecture seule

Décompte des valeurs des paramètres de formulaire spécifiés dans le message.

Requête de proxy
message.formparams.count Entier Lecture seule

Décompte de tous les paramètres de formulaire dans le message.

Requête de proxy
message.formparams.names Collection Lecture seule

Valeur de tous les paramètres de formulaire dans le message.

Requête de proxy
message.formparams.names.string Chaîne Lecture seule

Liste de noms séparés par une virgule de tous les paramètres de formulaire dans le message.

Requête de proxy
message.formstring Chaîne Lecture seule

Valeur de chaîne de formulaire dans le message.

Requête de proxy
message.header.header_name Chaîne Lecture/Écriture

Récupère ou définit la valeur d'un en-tête particulier trouvé dans la requête. Si l'en-tête contient une virgule, à la lecture, vous ne recevrez que le segment du texte jusqu'à la première virgule.

Par exemple, si l'en-tête Cache-control est public, maxage=16544, la valeur de retour de message.header.cache-control est public.

Si vous souhaitez que l'en-tête complet soit une chaîne, utilisez une variable telle que message.header.header_name.values.string.

Requête de proxy
message.header.header_name.N Chaîne Lecture/Écriture

La valeur de la Nième valeur d'en-tête particulière dans le message, à savoir une requête ou une réponse, selon l'état du flux. Apigee divise les valeurs de texte d'en-tête par des virgules. L'index commence à 1 pour la valeur la plus à gauche.

Par exemple, si l'en-tête Cache-control est public,maxage=16544, la valeur de retour de message.header.cache-control.2 est maxage=16544.

Requête de proxy
message.header.header_name.
 values
Collection Lecture seule

Toutes les valeurs du nom d'en-tête HTTP spécifié dans le message.

Requête de proxy
message.header.header_name.
 values.count
Entier Lecture seule

Décompte des valeurs du nom d'en-tête HTTP spécifié dans le message.

Requête de proxy
message.header.header_name.
 values.string
Chaîne Lecture seule

Toutes les valeurs d'un en-tête particulier dans le message, sous la forme d'une seule chaîne.

Par exemple, si l'en-tête Cache-control est public,maxage=16544, alors la valeur de retour de message.header.cache-control.values.string est public,maxage=16544.

Requête de proxy
message.headers.count Entier Lecture seule

Décompte de tous les en-têtes HTTP dans le message.

Requête de proxy
message.headers.names Collection Lecture seule

Valeur de tous les en-têtes HTTP dans le message

Requête de proxy
message.headers.names.string Chaîne Lecture seule

Liste des noms de tous les en-têtes du message, séparés par une virgule.

Requête de proxy
message.path Chaîne Lecture/Écriture

Chemin d'accès complet au message de la requête dans l'URL, à l'exclusion des paramètres de requête.

Requête de proxy
message.queryparam.param_name Chaîne Lecture seule

Renvoie le paramètre de requête de message spécifié.

Requête de proxy
message.queryparam.param_name.N Chaîne Lecture/Écriture

Valeur du Nième paramètre de requête dans le message. Par exemple, si la request.querystring est a=hello&a=world, alors la valeur de retour de message.queryparam.a.1 est hello.

À titre d'exemple, pour écrire plusieurs valeurs pour un seul nom de paramètre de requête tel que type=siteid:1&type=language:us-en&type=currency:USD, définissez les éléments suivants :

  • De message.queryparam.type.1 à siteid:1
  • De message.queryparam.type.2 à language:en-us
  • De message.queryparam.type.3 à currency:USD
Requête de proxy
message.queryparam.param_name.
 values
Collection Lecture seule

Toutes les valeurs d'un paramètre de requête particulier dans le message, mises en forme en tant que liste d'éléments séparés par une virgule.

Par exemple, si la chaîne de requête est a=hello&a=world, alors la valeur de message.queryparam.a.values est ['hello', 'world']code>.

Requête de proxy
message.queryparam.param_name.
 values.count
Entier Lecture seule

Nombre total d'un paramètre de requête spécifié associé à la requête envoyée au ProxyEndpoint depuis l'application cliente.

Requête de proxy
message.queryparams.count Entier Lecture seule

Nombre total de tous les paramètres de requête associés à la requête envoyée au ProxyEndpoint depuis l'application cliente.

Requête de proxy
message.queryparams.names Collection Lecture seule

Liste de tous les noms de paramètre de requête associés à la requête envoyée au ProxyEndpoint depuis l'application cliente.

Requête de proxy
message.queryparams.names.string Chaîne Lecture seule

Liste des noms de tous les paramètres de requête dans le message, séparés par une virgule.

Requête de proxy
message.querystring Chaîne Lecture seule

Chaîne contenant l'ensemble des noms et valeurs des paramètres de requête associés à la requête envoyée au ProxyEndpoint depuis l'application cliente.

Par exemple, pour la requête http://api.apifactory.com/inventors?name=nick&surname=danger, la valeur de message.querystring est name=nick&surname=danger.

Requête de proxy
message.status.code Entier Lecture seule

Code d'état HTTP du message de réponse de la cible.

Réponse cible
message.transport.message TransportMessage Lecture seule

Message de type TransportMessage qui est un objet contextuel.

Requête de proxy
message.uri Chaîne Lecture seule

Chemin d'URI complet (après l'URL du domaine), y compris les paramètres de requête.

Par exemple, pour la requête http://api.apifactory.com/inventors?name=nikola&surname=tesla, cette variable renvoie inventors?name=nikola&surname=tesla.

Requête de proxy
message.verb Chaîne Lecture seule

Verbe HTTP (GET, PUT, POST, DELETE, etc.) associé à la requête.

Requête de proxy
message.version Chaîne Lecture/Écriture

Version HTTP associée à la requête envoyée au ProxyEndpoint depuis l'application cliente.

Requête de proxy

Pour en savoir plus sur les messages, consultez la Documentation de référence sur la fonction de modèle de message.

messageid

Conteneur pour l'ID unique de la requête.

Le tableau suivant décrit les propriétés de la variable messageid :

Propriété Type Lecture/Écriture Description Début du champ d'application
messageid Chaîne Lecture seule

Contient l'ID unique de la requête, qui inclut le nom d'hôte de l'équilibreur de charge. Cet ID permet de suivre les requêtes reçues au niveau de l'équilibreur de charge après leur envoi au processeur de messages.

Cet ID est consigné dans les journaux d'erreur Apigee pour mettre en corrélation le messageid avec les erreurs.

Requête de proxy

mint

Variable d'aide qui fournit des informations sur la monétisation.

Le tableau suivant décrit les propriétés de la variable mint :

Propriété Type Lecture/Écriture Description Début du champ d'application
mint.limitscheck.is_request_blocked Booléen Lecture seule

Option indiquant si la requête API est bloquée. Définie sur true, si is_subscription_found est false.

Cette variable de flux est disponible si la règle MonetizationLimitsCheck est associée au proxy d'API. Voir Appliquer des limites de monétisation dans les proxys d'API.

Requête de proxy
mint.limitscheck.is_subscription_found Booléen Lecture seule

Option indiquant si le développeur possède un abonnement actif au produit d'API. Définie sur true si un développeur possède un abonnement.

Cette variable de flux est disponible si la règle MonetizationLimitsCheck est associée au proxy d'API. Voir Appliquer des limites de monétisation dans les proxys d'API.

Requête de proxy
mint.limitscheck.prepaid_developer_balance Numérique Lecture seule

Solde actuel du portefeuille de compte prépayé du développeur associé à la devise du plan tarifaire.

Requête de proxy
mint.limitscheck.prepaid_developer_currency Chaîne Lecture seule

Devise du solde disponible dans la variable mint.limitscheck.prepaid_developer_balance.

Requête de proxy
mint.limitscheck.purchased_product_name Chaîne Lecture seule

Nom du produit d'API associé.

Cette variable de flux est disponible si la règle MonetizationLimitsCheck est associée au proxy d'API. Voir Appliquer des limites de monétisation dans les proxys d'API.

Requête de proxy
mint.limitscheck.status_message Chaîne Lecture seule

Informations supplémentaires sur l'exécution de la règle MonetizationLimitsCheck à des fins de débogage.

Cette variable de flux est disponible si la règle MonetizationLimitsCheck est associée au proxy d'API. Voir Appliquer des limites de monétisation dans les proxys d'API.

Requête de proxy
mint.mintng_consumption_pricing_rates Chaîne Lecture seule

Frais basés sur la consommation.

Définissez les frais au moment de créer un plan tarifaire.

PostClientFlow
mint.mintng_consumption_pricing_type Chaîne Lecture seule

Type de tarification basée sur la consommation. Par exemple : FIXED_PER_UNIT

Définissez les frais basés sur la consommation au moment de créer un plan tarifaire.

PostClientFlow
mint.mintng_currency Chaîne Lecture seule

Devise utilisée pour calculer les revenus.

Cette variable de flux a la valeur de la variable de monétisation currency.

Stratégie DataCapture
mint.mintng_dev_share Numérique Lecture seule

Revenus à partager avec le développeur.

Définissez les revenus à partager avec le développeur lorsque vous créez un plan tarifaire.

PostClientFlow
mint.mintng_is_apiproduct_monetized Booléen Lecture seule

Option indiquant si le produit d'API est actuellement monétisé (c'est-à-dire si un plan tarifaire actif est en vigueur).

Cette variable de flux est ajoutée par la règle VerifyAPIKey ou VerifyAccessToken associée au proxy d'API. Consultez la section Ajouter une règle d'authentification.

Requête de proxy
mint.mintng_price Numérique Lecture seule

Revenus servant à calculer la part du développeur.

La variable de flux a la valeur de la variable de monétisation revShareGrossPrice.

Règle DataCapture et PostClientFlow
mint.mintng_price_multiplier Numérique Lecture seule

Facteur (multiplicateur) par lequel le coût par transaction est multiplié.

La variable de flux a la valeur de la variable de monétisation perUnitPriceMultiplier.

Règle DataCapture et PostClientFlow
mint.mintng_rate Numérique Lecture seule

Taux facturés pour l'appel d'API.

Cette variable de flux indique les frais basés sur la consommation par appel d'API. Définissez les frais basés sur la consommation lorsque vous créez un plan tarifaire. Si vous avez configuré la variable de monétisation perUnitPriceMultiplier dans votre règle DataCapture, Apigee calcule le coût de la transaction après avoir pris en compte la valeur de la variable perUnitPriceMultiplier. Pour plus d'informations, consultez la section Api price multiplier sur la page Métriques.

PostClientFlow
mint.mintng_rate_before_multipliers Numérique Lecture seule

Tarif facturé pour l'appel d'API sans le calcul de perUnitPriceMultiplier.

Si la règle DataCapture capture la variable de monétisation perUnitPriceMultiplier, cette variable de flux indique le coût de la transaction avant la multiplication du coût par perUnitPriceMultiplier.

PostClientFlow
mint.mintng_rate_plan_id Chaîne Lecture seule

Identifiant du plan tarifaire.

Cette variable de flux est ajoutée par la règle VerifyAPIKey ou VerifyAccessToken associée au proxy d'API. Consultez la section Ajouter une règle d'authentification.

Requête de proxy
mint.mintng_revenue_share_rates Chaîne Lecture seule

Taux de partage des revenus.

Définissez le taux de partage des revenus lorsque vous créez un plan tarifaire.

PostClientFlow
mint.mintng_revenue_share_type Chaîne Lecture seule

Type de partage des revenus. Par exemple : FIXED

Définissez le type de partage des revenus lorsque vous créez un plan tarifaire.

PostClientFlow
mint.mintng_tx_success Booléen Lecture seule

Indique si la transaction est monétisée.

Cette variable de flux a la valeur de la variable de monétisation transactionSuccess.

Stratégie DataCapture
mint.prepaid_updated_developer_usage Numérique Lecture seule

Utilisation actuelle du développeur disposant d'une réserve prépayée.

Cette utilisation est calculée en fonction de la configuration de votre plan tarifaire et de la valeur de la variable de monétisation perUnitPriceMultiplier.

PostClientFlow
mint.rateplan_end_time_ms Numérique Lecture seule

Délai d'expiration du plan tarifaire en millisecondes depuis l'epoch.

Cette variable de flux est ajoutée par la règle VerifyAPIKey ou VerifyAccessToken associée au proxy d'API. Consultez la section Ajouter une règle d'authentification.

Requête de proxy
mint.rateplan_start_time_ms Numérique Lecture seule

Délai d'activation du plan tarifaire en millisecondes depuis l'epoch.

Cette variable de flux est ajoutée par la règle VerifyAPIKey ou VerifyAccessToken associée au proxy d'API. Consultez la section Ajouter une règle d'authentification.

Requête de proxy
mint.status Chaîne Lecture seule

État de l'appel monétisé. Renseigné seulement en cas d'erreur.

PostClientFlow
mint.status_code Numérique Lecture seule

Code d'état HTTP de l'appel monétisé. Renseigné seulement en cas d'erreur.

PostClientFlow
mint.subscription_end_time_ms Numérique Lecture seule

Délai d'expiration de l'abonnement au produit d'API en millisecondes depuis l'epoch.

Cette variable de flux est disponible si la règle MonetizationLimitsCheck est associée au proxy d'API. Voir Appliquer des limites de monétisation dans les proxys d'API.

Requête de proxy
mint.subscription_start_time_ms Numérique Lecture seule

Délai d'activation de l'abonnement au produit d'API en millisecondes depuis l'epoch.

Cette variable de flux est disponible si la règle MonetizationLimitsCheck est associée au proxy d'API. Voir Appliquer des limites de monétisation dans les proxys d'API.

Requête de proxy
mint.tx_success_result Booléen Lecture seule

Indique si la monétisation est réussie pour la transaction.

La variable mint.tx_success_result peut prendre les valeurs suivantes :

  • tx_success défini sur "true" : la valeur de la variable transactionSuccess est true et la transaction est monétisée. Comme la transaction est monétisée, les valeurs des variables mint.mintng_rate et mint.mintng_dev_share sont calculées.
  • tx_success défini sur "false" : la valeur de la variable transactionSuccess est false et la transaction n'est pas monétisée. Comme la transaction n'est pas monétisée, les valeurs des variables mint.mintng_rate et mint.mintng_dev_share ne sont pas calculées.
  • tx_success introuvable. Le code d'état du message n'était pas 2xx : la variable transactionSuccess n'est pas capturée et le code d'état HTTP (message.status.code) de la transaction n'est pas 2xx. La transaction n'est pas monétisée.
  • tx_success introuvable. Le code d'état du message était 2xx : la variable transactionSuccess n'est pas capturée et le code d'état HTTP (message.status.code) de la transaction est 2xx. La transaction est monétisée.
PostClientFlow

Pour en savoir plus, consultez les ressources suivantes :

organization

Conteneur pour la propriété organization.name.

Le tableau suivant décrit les propriétés de la variable organization :

Propriété Type Lecture/Écriture Description Début du champ d'application
organization.name Chaîne Lecture seule

Nom de l'organisation.

Requête de proxy

Pour en savoir plus sur les organisations, consultez la section Comprendre les organisations.

proxy

Configuration du proxy d'API.

Le tableau suivant décrit les propriétés de la variable proxy :

Propriété Type Lecture/Écriture Description Début du champ d'application
proxy.basepath Chaîne Lecture seule

Valeur du chemin de base dans la configuration du point de terminaison de votre proxy d'API. Le chemin de base est le fragment d'URI le plus à gauche qui suit l'hôte dans l'URL. Les URI des flux conditionnels suivent le chemin de base.

Supposons que vous ayez un point de terminaison de proxy d'API configuré avec un chemin de base de /v2/weatherapi. (Pour en savoir plus, consultez la section Configuration du point de terminaison du proxy.) Dans ce cas, si la requête entrante utilise l'URL https://myhost.example.net/v2/weatherapi/forecastrss?w=12797282, alors :

  • Le nom d'hôte est myhost.example.net. Vous pouvez le récupérer en lisant la variable request.header.host.
  • Le chemin de base est /v2/weatherapi. Récupérez-le en lisant la variable proxy.basepath.
  • Le suffixe du chemin est /forecastrss. Récupérez-le en lisant la variable proxy.pathsuffix.

Si vous définissez un chemin de base dynamique dans la configuration de votre proxy d'API, tel que /v2/*/weatherapicode>, la variable proxy.basepath est définie sur le chemin dynamique. Pour récupérer l'URL réelle de la requête, lisez et analysez la variable proxy.url.

Requête de proxy
proxy.client.ip Chaîne Lecture seule

Adresse X-Forwarded-For de l'appel entrant, qui correspond à l'adresse IP reçue par Apigee lors du dernier handshake TCP externe. Il peut s'agir du client à l'origine de l'appel ou d'un équilibreur de charge.

Requête de proxy
proxy.name Chaîne Lecture seule

Attribut de nom configuré pour le ProxyEndpoint.

Requête de proxy
proxy.pathsuffix Chaîne Lecture seule

Valeur du suffixe de chemin dans l'URL envoyée par le client et reçue au niveau du ProxyEndpoint.

Le chemin de base est le composant de chemin le plus à gauche qui identifie de manière unique un proxy d'API au sein d'un groupe d'environnements. Supposons que vous ayez un point de terminaison de proxy d'API configuré avec un chemin de base de /v2/weatherapi. Dans ce cas, une requête envoyée à https://myhost.example.net/v2/weatherapi/forecastrss?w=12797282, la variable proxy.pathsuffix contiendra la chaîne /forecastrss.

Requête de proxy
proxy.url Chaîne Lecture seule

Récupère l'URL complète associée à la requête de proxy reçue par le ProxyEndpoint, y compris les paramètres de requête présents.

Requête de proxy

Pour en savoir plus sur l'utilisation des proxys d'API, consultez la section Comprendre les API et les proxys d'API.

publishmessage

Renseignée lors de l'exécution de la règle PublishMessage.

Propriété Type Lecture/Écriture Description Début du champ d'application
publishmessage.message.id Chaîne En lecture seule Renvoie l'ID du message publié messageId du serveur Pub/Sub.

Apigee ne définit cette variable de flux que si la requête de publication aboutit.

Requête de proxy

ratelimit

Renseigné lors de l'exécution d'une règle de quota ou SpikeArrest.

Le tableau suivant décrit les propriétés de la variable ratelimit :

Propriété Type Lecture/Écriture Description Début du champ d'application
ratelimit.policy_name.allowed.count Long En lecture seule Renvoie le décompte de quota autorisé. PostClientFlow
ratelimit.policy_name.used.count Long En lecture seule Renvoie le quota actuel utilisé dans un intervalle de quota. PostClientFlow
ratelimit.policy_name.available.count Long En lecture seule Renvoie le décompte de quota disponible dans l'intervalle de quota. PostClientFlow
ratelimit.policy_name.exceed.count Long En lecture seule Renvoie 1 une fois le quota dépassé PostClientFlow
ratelimit.policy_name.total.exceed.count Long En lecture seule Renvoie 1 une fois le quota dépassé PostClientFlow
ratelimit.policy_name.expiry.time Long En lecture seule

Renvoie le temps UTC (en millisecondes) qui détermine la date d'expiration du quota et le début d'un nouvel intervalle.

Lorsque le type de règle de quotas est rollingwindow, cette valeur n'est pas valide, car l'intervalle de quota n'expire jamais.

PostClientFlow
ratelimit.policy_name.identifier Chaîne En lecture seule Renvoie la référence de l'identifiant (client) associée à la règle. PostClientFlow
ratelimit.policy_name.class Chaîne En lecture seule Renvoie la classe associée à l'identifiant client PostClientFlow
ratelimit.policy_name.class.allowed.count Long En lecture seule Renvoie le nombre de quotas autorisés défini dans la classe PostClientFlow
ratelimit.policy_name.class.used.count Long En lecture seule Renvoie le quota utilisé dans une classe PostClientFlow
ratelimit.policy_name.class.available.count Long En lecture seule Renvoie le nombre de quotas disponibles dans la classe PostClientFlow
ratelimit.policy_name.class.exceed.count Long En lecture seule Renvoie le nombre de requêtes qui dépassent la limite définie dans la classe dans l'intervalle de quota actuel PostClientFlow
ratelimit.policy_name.class.total.exceed.count Long En lecture seule Renvoie le nombre total de requêtes qui dépassent la limite définie pour la classe parmi tous les intervalles de quotas. Il correspond donc à la somme de class.exceed.count pour tous les intervalles de quota PostClientFlow
ratelimit.policy_name.failed Booléen En lecture seule

Indique si la règle a échoué (vrai ou faux)

PostClientFlow

Pour en savoir plus, consultez les ressources suivantes :

request

Requête complète, y compris les charges utiles présentes.

Pour en savoir plus sur les données de requête, consultez la section Comment les données de requête sont-elles transmises au serveur backend ?

Le tableau suivant décrit les propriétés de la variable request :

Propriété Type Lecture/Écriture Description Début du champ d'application
request message Lecture seule

Requête complète, y compris les charges utiles présentes.

Requête de proxy
request.content Chaîne Lecture/Écriture

Récupère ou définit la charge utile du message de requête.

Requête de proxy
request.formparam.param_name Chaîne Lecture/Écriture

Récupère ou définit la valeur du paramètre de formulaire spécifié dans la requête envoyée depuis l'application cliente.

Requête de proxy
request.formparam.param_name.
 values
Collection Lecture seule

Toutes les valeurs d'un paramètre de formulaire particulier dans la requête, mises en forme en tant que liste d'éléments séparés par une virgule.

Par exemple, si la charge utile est a=hello&x=greeting&a=world, la valeur de request.formparam.a.values est ['hello', 'world'].

Requête de proxy
request.formparam.param_name.
 values.count
Entier Lecture seule

Décompte de toutes les valeurs pour le paramètre de formulaire spécifié associé à la requête.

Requête de proxy
request.formparam.param_name.N Chaîne Lecture/Écriture

Valeur du Nième paramètre de formulaire particulier dans le message. Par exemple, si la chaîne de formulaire est a=hello&a=world, alors la valeur de renvoi de request.formparam.a.1 est hello.

Requête de proxy
request.formparams.count Entier Lecture seule

Décompte de tous les paramètres associés à la requête envoyée depuis l'application cliente.

Requête de proxy
request.formparams.names Collection Lecture seule

Liste de tous les noms de paramètres associés à la requête.

Requête de proxy
request.formparams.names.string Chaîne Lecture seule

Liste de tous les noms de paramètres de formulaire associés à la requête, séparés par une virgule.

Requête de proxy
request.formstring Chaîne Lecture seule

formparam complet dans la requête envoyée depuis l'application cliente.

Par exemple, name=test&type=first&group=A.

Requête de proxy
request.grpc.rpc.name Chaîne Lecture seule

Applicable uniquement lorsque vous utilisez un serveur cible gRPC. Nom RPC. Pour en savoir plus sur les proxys gRPC, consultez Créer des proxys d'API gRPC.

Requête de proxy
request.grpc.service.name Chaîne Lecture seule

Applicable uniquement lors de l'utilisation d'un serveur cible gRPC. Nom du service d'état gRPC. Pour en savoir plus sur les proxys gRPC, consultez Créer des proxys d'API gRPC.

Requête de proxy
request.header.header_name Chaîne Lecture/Écriture

Récupère ou définit la valeur d'un en-tête particulier trouvé dans la requête. Si l'en-tête contient une virgule, à la lecture, vous ne recevrez que le segment du texte jusqu'à la première virgule.

Par exemple, si l'en-tête Cache-control est public, maxage=16544, la valeur de retour de request.header.cache-control est public.

Si vous souhaitez que l'en-tête complet soit une chaîne, utilisez une variable telle que request.header.header_name.values.string.

Requête de proxy
request.header.header_name.N Chaîne Lecture/Écriture

Valeur de la Nième valeur d'en-tête particulière dans la requête. Apigee divise les valeurs de texte d'en-tête par des virgules. L'index commence à 1 pour la valeur la plus à gauche.

Par exemple, si l'en-tête Cache-control est public, maxage=16544, la valeur de retour de request.header.cache-control.2 est maxage=16544.

Requête de proxy
request.header.header_name.
 values
Collection Lecture seule

Toutes les valeurs d'un en-tête particulier dans la requête.

Requête de proxy
request.header.header_name.
 values.count
Entier Lecture seule

Décompte de toutes les valeurs d'un en-tête particulier dans la requête.

Requête de proxy
request.header.header_name.
 values.string
Chaîne Lecture seule

Toutes les valeurs d'un en-tête particulier dans la requête, sous la forme d'une seule chaîne.

Par exemple, si l'en-tête Cache-control est public, maxage=16544, alors la valeur de retour de request.header.cache-control.values.string est public, maxage=16544.

Requête de proxy
request.headers.count Entier Lecture seule

Décompte de tous les en-têtes dans la requête.

Requête de proxy
request.headers.names Collection Lecture seule

Noms de tous les en-têtes dans la requête.

Requête de proxy
request.headers.names.string Chaîne Lecture seule

Liste des noms de tous les en-têtes de la requête, séparés par une virgule.

Requête de proxy
request.path Chaîne Lecture seule

Chemin de ressource dépourvu de proxy (n'incluant pas l'hôte) vers le service de backend, excluant les paramètres de requête.

Par exemple, si l'URI du service de backend est https://example.com/rest/api/latest, alors la valeur de request.path est /rest/api/latest.

Requête de proxy
request.queryparam.param_name Chaîne Lecture/Écriture

Valeur d'un paramètre de requête particulier trouvé dans la requête.

Requête de proxy
request.queryparam.param_name.N Chaîne Lecture/Écriture

Valeur du Nième paramètre de requête dans la requête.

Par exemple, si le request.querystring est défini sur a=hello&a=world, la valeur de retour de request.queryparam.a.1 est hello.

À titre d'exemple, pour écrire plusieurs valeurs pour un seul nom de paramètre de requête tel que type=siteid:1&type=language:us-en&type=currency:USD, définissez les éléments suivants :

  • De request.queryparam.type.1 à siteid:1
  • De request.queryparam.type.2 à language:en-us
  • De request.queryparam.type.3 à currency:USD
Requête de proxy
request.queryparam.param_name.
 values
Collection Lecture seule

Toutes les valeurs d'un paramètre de requête particulier dans la requête, mises en forme en tant que liste d'éléments séparés par une virgule.

Par exemple, si request.querystring est a=hello&b=lovely&a=world, alors la valeur de request.queryparam.a.values est ['hello', 'world'].

Requête de proxy
request.queryparam.param_name.
 values.count
Entier Lecture seule

Décompte de toutes les valeurs d'un paramètre de requête particulier dans la requête.

Requête de proxy
request.queryparams.count Entier Lecture seule

Décompte de tous les paramètres de requête dans la requête.

Requête de proxy
request.queryparams.names Collection Lecture seule

Noms de tous les paramètres de requête dans la requête.

Requête de proxy
request.queryparams.names.string Chaîne Lecture seule

Liste des noms de tous les paramètres de requête dans la requête, séparés par une virgule.

Requête de proxy
request.querystring Chaîne Lecture seule

Liste complète des paramètres de requête dans la requête envoyée depuis l'application cliente.

Par exemple, si la requête est http://host.com/123?name=first&surname=second&place=address, alors cette variable renvoie name=first&surname=second&place=address.

Requête de proxy
request.transportid Chaîne Lecture seule

ID de la requête de type TransportMessage qui est contextuel.

Requête de proxy
request.transport.message Transport-Message Lecture seule

Requête de type TransportMessage qui est contextuel.

Requête de proxy
request.uri Chaîne Lecture seule

Dans un proxy d'API, le <BasePath> du proxy dans le ProxyEndpoint (en plus de l'URL de base du proxy) mappe sur l'URL du service cible dans le TargetEndpoint. Exemple :

<ProxyEndpoint>
...
  <BasePath>/my-mock-proxy</BasePath>

Pointe vers

<TargetEndpoint>
...
  <HTTPTargetConnection>
    http://mocktarget.apigee.net
  </HTTPTargetConnection>

Dans la requête, request.uri est le chemin de base du proxy + le reste de l'adresse, y compris les paramètres de requête.

Dans la réponse, request.uri est le reste de l'adresse, y compris les paramètres de requête, après HTTPTargetConnection.

La différence est due au fait que la demande d'origine est parvenue au proxy, mais le proxy adresse ensuite une autre requête au service cible.

Supposons que l'appel suivant est effectué dans notre exemple de proxy, dont le chemin de base est /my-mock-proxy :

http://my_org-test.apigee.net/my-mock-proxy/user?user=Dude

Et le proxy appelle :

http://mocktarget.apigee.net

Ce qui ajoute /user?user=Dude à cette URL.

  • Requête : request.uri = /my-mock-proxy/user?user=Dude
  • Réponse : request.uri = /user?user=Dude
Requête de proxy (diffère dans la réponse)
request.url Chaîne Lecture seule

URL complète de la requête adressée au point de terminaison cible, y compris les paramètres de chaîne de requête, mais pas le numéro de port (si spécifié).

Par exemple, si vous appelez un exemple de proxy http://my_org-test.apigee.net/my-mock-proxy/user?user=Dude et que le point de terminaison cible est http://example.com:8080, la valeur est la suivante :

  • Requête : N/A
  • Réponse : http://example.com/user?user=Dude
Réponse cible
request.verb Chaîne Lecture seule

Verbe HTTP utilisé pour la requête. Par exemple, GET, PUT et DELETE.

Requête de proxy
request.version Chaîne Lecture seule

Version HTTP de la requête. Par exemple, 1.1.

Requête de proxy

response

Réponse complète, y compris toute charge utile présente.

Le tableau suivant décrit les propriétés de la variable response :

Propriété Type Lecture/Écriture Description Début du champ d'application
response message Lecture/Écriture

Message de réponse complet renvoyé par la cible.

Réponse cible
response.content Chaîne Lecture/Écriture

Contenu de la charge utile du message de réponse renvoyé par la cible.

Réponse cible
response.header.header_name Chaîne Lecture/Écriture

Récupère ou définit la valeur d'un en-tête HTTP spécifié dans la réponse.

Si le texte d'en-tête inclut une virgule, Apigee déduit plusieurs valeurs. Dans ce cas, response.header.header_name ne renvoie que la première valeur.

Par exemple, si l'en-tête Cache-control est public,maxage=16544, la valeur de retour de response.header.cache-control est public.

Si vous souhaitez que l'en-tête complet soit une chaîne, utilisez une variable telle que response.header.header_name.values.string.

Réponse cible
response.header.header_name.
 values
Collection Lecture seule

Toutes les valeurs d'un en-tête HTTP spécifié dans la réponse.

Réponse cible
response.header.header_name.
 values.count
Entier Lecture seule

Décompte de toutes les valeurs de l'en-tête HTTP spécifié dans la réponse.

Réponse cible
response.header.header_name.
 values.string
Chaîne Lecture seule

Toutes les valeurs d'un en-tête particulier dans la réponse, sous la forme d'une seule chaîne.

Par exemple, si l'en-tête Cache-control est public,maxage=16544, alors la valeur de retour de response.header.cache-control.values.string est public,maxage=16544.

Réponse cible
response.header.header_name.N Chaîne Lecture/Écriture

Valeur de la Nième valeur d'en-tête particulière dans la réponse. Apigee divise les valeurs de texte d'en-tête par des virgules. L'index commence à 1 pour la valeur la plus à gauche.

Par exemple, si l'en-tête Cache-control est public,maxage=16544, alors response.header.cache-control.2 renvoie maxage=16544.

Réponse cible
response.headers.count Entier Lecture seule

Décompte de tous les en-têtes dans la réponse.

Réponse cible
response.headers.names Collection Lecture seule

Noms de tous les en-têtes dans la réponse.

Réponse cible
response.headers.names.string Chaîne Lecture seule

Liste des noms de tous les en-têtes dans la réponse, séparés par une virgule.

Réponse cible
response.reason.phrase Chaîne Lecture/Écriture

Expression de motif de la réponse pour une requête particulière.

Réponse cible
response.status.code Entier Lecture/Écriture

Code de réponse renvoyé pour une requête. Vous pouvez utiliser cette variable pour remplacer le code d'état de la réponse, stocké dans message.status.code. Pour en savoir plus, consultez la section message.

Réponse cible
response.transport.message Chaîne Lecture seule

Réponse de type TransportMessage, qui est un objet contextuel.

Réponse cible

route

Spécifie les noms de la règle <RouteRule> et du TargetEndpoint.

Le tableau suivant décrit les propriétés de la variable route :

Propriété Type Lecture/Écriture Description Début du champ d'application
route.name Chaîne Lecture seule

Nom de la règle <RouteRule> qui a été exécutée dans le ProxyEndpoint. Exemple : default. Une règle RouteRule référence un proxy TargetEndpoint à exécuter.

Requête cible
route.target Chaîne Lecture seule

Nom du TargetEndpoint qui a été exécuté. Par exemple, default.

Requête cible

servicecallout

Décrit le TargetEndpoint pour une règle ServiceCall.

Le tableau suivant décrit les propriétés de la variable servicecallout :

Propriété Type Lecture/Écriture Description Début du champ d'application
servicecallout.policy_name.expectedcn Chaîne Lecture/Écriture

Nom commun attendu du TargetEndpoint, tel qu'il est mentionné dans une règle ServiceCallout. Cela n'a de sens que lorsque le TargetEndpoint fait référence à un point de terminaison TLS/SSL.

Requête de proxy
servicecallout.policy_name.target.url Chaîne Lecture/Écriture

URL du TargetEndpoint pour une règle ServiceCallout particulière.

Requête de proxy
servicecallout.requesturi Chaîne Lecture/Écriture

URI TargetEndpoint d'une règle ServiceCallout. L'URI est l'URL du TargetEndpoint sans le protocole ni la spécification de domaine.

Requête de proxy

system

Spécifie l'adresse IP du système, ainsi que des détails sur le proxy.

Le tableau suivant décrit les propriétés de la variable system :

Propriété Type Lecture/Écriture Description Début du champ d'application
system.interface.interface_name Chaîne Lecture seule

Adresse IP du système.

Requête de proxy
system.pod.name Chaîne Lecture seule

Nom du pod dans lequel le proxy est exécuté.

Requête de proxy
system.region.name Chaîne Lecture seule

Nom de la région du centre de données dans laquelle le proxy est exécuté.

Requête de proxy
system.time Chaîne Lecture seule

Heure à laquelle cette variable a été lue. Par exemple : mer, 21 août 2013 19:16:47 GMT.

Cette valeur est la représentation sous forme de chaîne de la valeur correspondante de system.timestamp. Par exemple, "mer, 21 août 2013 19:16:47 GMT" correspond à la valeur d'horodatage 1377112607413.

Requête de proxy
system.time.year Entier Lecture seule

Partie "année" de system.time.

Requête de proxy
system.time.month Entier Lecture seule

Partie "mois" de system.time.

Requête de proxy
system.time.day Entier Lecture seule

Partie "jour du mois" de system.time.

Requête de proxy
system.time.dayofweek Entier Lecture seule

Partie "jour de la semaine" de system.time.

Requête de proxy
system.time.hour Entier Lecture seule

Partie "heure" de system.time.

Requête de proxy
system.time.minute Entier Lecture seule

Partie "minute" de system.time.

Requête de proxy
system.time.second Entier Lecture seule

Deuxième partie de system.time.

Requête de proxy
system.time.millisecond Entier Lecture seule

Partie "milliseconde" de system.time.

Requête de proxy
system.time.zone Chaîne Lecture seule

Fuseau horaire du système.

Requête de proxy
system.timestamp Long Lecture seule

Entier (long) de 64 bits représentant l'heure à laquelle cette variable a été lue. La valeur est le nombre de millisecondes écoulées depuis minuit, le 1er janvier 1970 UTC. Par exemple, 1534783015000.

Requête de proxy
system.uuid Chaîne Lecture seule

UUID du processeur de messages gérant le proxy.

Requête de proxy

target

Décrit la cible de la requête.

Le tableau suivant décrit les propriétés de la variable target :

Propriété Type Lecture/Écriture Description Début du champ d'application
target.basepath Chaîne Lecture seule

Chemin d'accès à la ressource (hors domaine) du service cible, à l'exclusion des paramètres de requête, défini dans le TargetEndpoint du proxy.

Par exemple, supposons qu'un proxy d'API appelle la cible suivante :

<TargetEndpoint name="default">
...
  <HTTPTargetConnection>
    <URL>http://mocktarget.apigee.net/user?user=Dude</URL>
  </HTTPTargetConnection>

Dans cet exemple, le target.basepath est /user.

Si la cible était la suivante :

<TargetEndpoint name="default">
...
  <HTTPTargetConnection>
    <URL>http://mocktarget.apigee.net</URL>
  </HTTPTargetConnection>

Le target.basepath serait nul.

Requête cible
target.copy.pathsuffix Booléen Lecture/Écriture

Lorsque la valeur est true, la requête transmise du ProxyEndpoint au TargetEndpoint conserve le suffixe de chemin (le fragment de chemin d'URI après l'URI défini dans le chemin de base du ProxyEndpoint).

Requête cible
target.copy.queryparams Booléen Lecture/Écriture

Lorsque la valeur est true, la requête transmise du ProxyEndpoint au TargetEndpoint conserve les paramètres de requête.

Requête cible
target.country Chaîne Lecture seule

Pays du certificat TLS/SSL présenté par le serveur cible

Réponse cible
target.cn Chaîne Lecture seule

Nom commun du TargetEndpoint. Cela n'a de sens que lorsque le TargetEndpoint fait référence à un point de terminaison TLS/SSL.

Requête cible
target.email.address Chaîne Lecture seule

Adresse e-mail du certificat TLS/SSL présenté par le serveur cible

Réponse cible
target.expectedcn Chaîne Lecture/Écriture

Nom commun attendu du TargetEndpoint. Cela n'a de sens que lorsque le TargetEndpoint fait référence à un point de terminaison TLS/SSL.

Requête de proxy
target.host Chaîne Lecture seule

Nom de domaine du service cible renvoyant la réponse au proxy d'API.

Réponse cible
target.ip Chaîne Lecture seule

Adresse IP du service cible renvoyant la réponse au proxy d'API.

Réponse cible
target.locality Chaîne Lecture seule

Localité (ville) du certificat TLS/SSL présenté par le serveur cible

Réponse cible
target.name Chaîne Lecture seule

Cible à laquelle le message parvient depuis le TargetEndpoint.

Requête cible
target.organization Chaîne Lecture seule

Organisation du certificat TLS/SSL présenté par le serveur cible.

Réponse cible
target.organization.unit Chaîne Lecture seule

Unité organisationnelle du certificat TLS/SSL présenté par le serveur cible.

Réponse cible
target.port Entier Lecture seule

Numéro de port du service cible renvoyant la réponse au proxy d'API.

Réponse cible
target.received.end.time Chaîne Lecture seule

Heure, exprimée sous forme de chaîne, à laquelle le TargetEndpoint a terminé de recevoir la réponse de la cible. Par exemple : mer, 21 août 2013 19:16:47 UTC.

Cette valeur temporelle est la représentation sous forme de chaîne de la quantité d'horodatage 32 bits correspondante. Par exemple, "mer, 21 août 2013 19:16:47 UTC" correspond à la valeur d'horodatage 1377112607413.

Réponse cible
target.received.end.
  timestamp
Long Lecture seule

Valeur d'horodatage spécifiant le moment où le TargetEndpoint a terminé de recevoir la réponse de la cible. Par exemple, 1534783015000. Cette valeur est un entier (long) de 64 bits spécifiant le nombre de millisecondes écoulées depuis minuit, le 1er janvier 1970 UTC.

Réponse cible
target.received.start.time Chaîne Lecture seule

Heure, exprimée sous forme de chaîne, à laquelle le TargetEndpoint a commencé à recevoir la réponse de la cible. Par exemple : mer, 21 août 2013 19:16:47 UTC.

Cette valeur temporelle est la représentation sous forme de chaîne de la quantité d'horodatage 32 bits correspondante. Par exemple, "mer 21 août 2013 19:16:47 UTC" correspond à la valeur d'horodatage 1377112607413.

Réponse cible
target.received.start.
  timestamp
Long Lecture seule

Valeur d'horodatage spécifiant le moment où le TargetEndpoint a commencé à recevoir la réponse de la cible. Par exemple, 1534783015000. Cette valeur est un entier (long) de 64 bits spécifiant le nombre de millisecondes écoulées depuis minuit, le 1er janvier 1970 UTC.

Réponse cible
target.scheme Chaîne Lecture seule

Début du champ d'application : Réponse cible
Type : Chaîne
Autorisation : Lecture/Écriture

Renvoie HTTP ou HTTPS en fonction du message de la requête.

Requête cible
target.sent.end.time Chaîne Lecture seule

Heure, exprimée sous forme de chaîne, à laquelle le proxy a cessé d'envoyer la requête à l'URL spécifiée dans le TargetEndpoint. Par exemple : mer, 21 août 2013 19:16:47 UTC.

Cette valeur temporelle est la représentation sous forme de chaîne de la quantité d'horodatage 32 bits correspondante. Par exemple, "mer 21 août 2013 19:16:47 UTC" correspond à la valeur d'horodatage 1377112607413.

Requête cible
target.sent.end.timestamp Long Lecture seule

Valeur d'horodatage spécifiant le moment où le proxy a terminé d'envoyer la requête à l'URL spécifiée dans le TargetEndpoint. Par exemple : 1377112607413 Cette valeur est un entier (long) de 64 bits contenant le nombre de millisecondes écoulées depuis minuit, le 1er janvier 1970 UTC.

Requête cible
target.sent.start.time Chaîne Lecture seule

Heure, exprimée sous forme de chaîne, à laquelle le proxy a commencé à envoyer la requête à l'URL spécifiée dans le TargetEndpoint. Par exemple : mer, 21 août 2013 19:16:47 UTC.

Cette valeur temporelle est la représentation sous forme de chaîne de la quantité d'horodatage 32 bits correspondante. Par exemple, "mer 21 août 2013 19:16:47 UTC" correspond à la valeur d'horodatage 1377112607413.

Requête cible
target.sent.start.timestamp Long Lecture seule

Valeur d'horodatage spécifiant le moment où le proxy a commencé à envoyer la requête à l'URL spécifiée dans le TargetEndpoint. Par exemple, 1534783015000. Cette valeur est un entier (long) de 64 bits spécifiant le nombre de millisecondes écoulées depuis minuit, le 1er janvier 1970 UTC.

Requête cible
target.ssl.enabled Booléen Lecture seule

Indique si le TargetEndpoint s'exécute sur TLS/SSL.

Requête de proxy
target.state Chaîne Lecture seule

État du certificat TLS/SSL présenté par le serveur cible.

Réponse cible
target.url Chaîne Lecture/Écriture

URL configurée dans le fichier XML du TargetEndpoint ou dans l'URL de la cible dynamique (si target.url est défini lors du flux de messages). La variable n'inclut aucun élément de chemin ou paramètre de requête supplémentaire. Renvoie la valeur "null" si elle est appelée hors du champ d'application ou non définie.

Requête cible

variable

Conteneur pour la propriété variable.expectedcn.

Le tableau suivant décrit les propriétés de la variable variable :

Propriété Type Lecture/Écriture Description Début du champ d'application
variable.expectedcn Chaîne Lecture/Écriture

Variable exposée pour le nom commun si elle s'exécute sur TLS/SSL.

Requête de proxy

Pour en savoir plus sur l'utilisation de TLS, consultez la section Options de configuration de TLS.