Tous les produits
Search
Centre de documentation

:GetTemplateEstimateCost

Dernière mise à jour :Aug 10, 2026

Interroge les prix estimés des ressources définies dans un modèle.

Description

  • Pour plus d'informations sur les ressources compatibles avec l'estimation des coûts dans les modèles Resource Orchestration Service (ROS), consultez la section « Resource types that support price inquiry » de la rubrique Estimate resource prices.

  • Pour plus d'informations sur les ressources compatibles avec l'estimation des coûts dans les modèles Terraform, consultez la section « ROS resources supported by Terraform » de la rubrique ROS features and resources supported by Terraform.

Cette rubrique présente un exemple d'interrogation du prix estimé d'une adresse IP élastique (EIP) à créer via un modèle. Dans cet exemple, le corps du modèle est le suivant : {"ROSTemplateFormatVersion": "2015-09-01", "Parameters": {"Isp": {"Type": "String"}, "Name": {"Type": "String"},"Netmode": {"Type": "String"}, "Bandwidth": {"Type": "Number", "Default": 5}}, "Resources": {"NewEip": {"Type": "ALIYUN::VPC::EIP","Properties": {"InstanceChargeType": "Prepaid", "PricingCycle": "Month", "Isp": {"Ref": "Isp"}, "Period": 1, "DeletionProtection": false, "AutoPay": false, "Name": {"Ref": "Name"}, "InternetChargeType": "PayByTraffic", "Netmode": { "Ref": "Netmode"},"Bandwidth": 5}}}}.

Débogage

OpenAPI Explorer calcule automatiquement la valeur de signature. Nous vous recommandons d'appeler cette opération via OpenAPI Explorer, qui génère dynamiquement des exemples de code pour différents SDK.

Paramètres de requête

ParamètreTypeObligatoireExempleDescription
ActionStringOuiGetTemplateEstimateCost

Opération à effectuer. Définissez la valeur sur GetTemplateEstimateCost.

TemplateURLStringNonoss://ros-template/demo

URL du fichier contenant le corps du modèle. L'URL doit pointer vers un modèle hébergé sur un serveur web HTTP ou HTTPS, ou dans un compartiment Alibaba Cloud Object Storage Service (OSS), par exemple oss://ros/stack-policy/demo ou oss://ros/stack-policy/demo?RegionId=cn-hangzhou. La taille du corps du modèle ne doit pas dépasser 524 288 octets. Si vous n'indiquez pas l'ID de région du compartiment OSS, la valeur du paramètre RegionId est utilisée.

Remarque Spécifiez un seul des paramètres suivants : TemplateBody, TemplateURL, TemplateId ou TemplateScratchId.
RegionIdStringOuicn-hangzhou

ID de région de la pile. Appelez l'opération DescribeRegions pour obtenir la liste des régions la plus récente.

TemplateBodyStringNon{"ROSTemplateFormatVersion": "2015-09-01", "Parameters": {"Isp": {"Type": "String"}, "Name": {"Type": "String"},"Netmode": {"Type": "String"}, "Bandwidth": {"Type": "Number", "Default": 5}}, "Resources": {"NewEip": {"Type": "ALIYUN::VPC::EIP","Properties": {"InstanceChargeType": "Prepaid", "PricingCycle": "Month", "Isp": {"Ref": "Isp"}, "Period": 1, "DeletionProtection": false, "AutoPay": false, "Name": {"Ref": "Name"}, "InternetChargeType": "PayByTraffic", "Netmode": { "Ref": "Netmode"},"Bandwidth": 5}}}}

Structure contenant le corps du modèle. La taille du corps du modèle doit être comprise entre 1 et 524 288 octets. Si cette limite est dépassée, nous vous recommandons d'ajouter les paramètres au corps de la requête HTTP POST pour éviter les échecs liés à une URL trop longue.

Remarque Spécifiez un seul des paramètres suivants : TemplateBody, TemplateURL, TemplateId ou TemplateScratchId.
ClientTokenStringNon123e4567-e89b-12d3-a456-42665544****

Jeton client garantissant l'idempotence de la requête. Générez la valeur via le client, en veillant à son unicité pour chaque requête.

Le jeton peut contenir jusqu'à 64 caractères : lettres, chiffres, traits d'union (-) et traits de soulignement (_).

Pour plus d'informations, consultez Ensure idempotence.

TemplateIdStringNon5ecd1e10-b0e9-4389-a565-e4c15efc****

ID du modèle. Ce paramètre s'applique aux modèles partagés et privés.

Remarque Spécifiez un seul des paramètres suivants : TemplateBody, TemplateURL, TemplateId ou TemplateScratchId.
TemplateVersionStringNonv1

Version du modèle. Ce paramètre n'est pris en compte que si TemplateId est spécifié.

Parameters.N.ParameterKeyStringOuiName

Nom du paramètre N. Si le nom et la valeur d'un paramètre ne sont pas spécifiés, ROS utilise les valeurs par défaut définies dans le modèle.

Valeur maximale de N : 200.

Exemples :

  • Parameters.1.ParameterKey : Name
  • Parameters.2.ParameterKey : Netmode
Remarque Le paramètre Parameters est facultatif. Si vous le spécifiez, vous devez indiquer à la fois Parameters.N.ParameterKey et Parameters.N.ParameterValue.
Parameters.N.ParameterValueStringOuiDemoEip

Valeur du paramètre N.

Valeur maximale de N : 200.

Exemples :

  • Parameters.1.ParameterValue : DemoEip
  • Parameters.2.ParameterValue : public
Remarque Le paramètre Parameters est facultatif. Si vous le spécifiez, vous devez indiquer à la fois Parameters.N.ParameterKey et Parameters.N.ParameterValue.
TemplateScratchIdStringNonts-aa9c62feab844a6b****

ID du scénario.

Pour savoir comment interroger les ID des scénarios, consultez ListTemplateScratches.

Remarque Spécifiez un seul des paramètres suivants : TemplateBody, TemplateURL, TemplateId ou TemplateScratchId.
TemplateScratchRegionIdStringNoncn-hangzhou

ID de région du scénario. La valeur par défaut correspond à celle du paramètre RegionId.

Appelez l'opération DescribeRegions pour obtenir la liste des régions la plus récente.

Pour plus d'informations sur les paramètres de requête communs, consultez Common parameters.

Paramètres de réponse

Paramètre Type Exemple Description

| RequestId | String | 6DEA36EF-C97D-5658-A4AC-4F5DB08D1A89 |


ID de la requête.

|

| Resources | Map | |


Détails de la ressource.

|

Le tableau suivant décrit les paramètres contenus dans le paramètre Resources.

Paramètre

Type

Exemple

Description

Order

Informations relatives à la commande.

TaxAmount

Long

0

Montant de la taxe.

OptionalPromotions

Array

[]

Promotions disponibles.

Currency

String

CNY

Unité de devise. Valeurs possibles :

CNY : disponible uniquement sur le site Chine (aliyun.com).

USD : disponible uniquement sur le site International (alibabacloud.com).

RuleIds

Array

[102204102264****]

ID des règles de promotion.

TradeAmount

Long

109.37

Prix de transaction de la commande, égal au prix initial moins la remise.

OptionalMixPromotions

Array

[]

Promotions mixtes disponibles.

OriginalAmount

Long

125

Prix initial.

DiscountAmount

Long

15.63

Montant de la remise.

Rules

Détails des règles de promotion.

Name

String

Contract discount_order discount_8.750 discount

Nom de la règle de promotion.

RuleDescId

Long

102204102264****

ID de la règle de promotion.

OrderSupplement

Informations complémentaires relatives à la commande.

ChargeType

String

PrePaid

Méthode de facturation.

Period

Long

1

Durée de l'abonnement.

Quantity

Long

1

Quantité.

PriceType

String

Total

Type de prix.

PeriodUnit

String

Month

Unité de durée de l'abonnement.

OrderDetails

Détails de la commande.

ModuleCode

String

bandwidth

Code du module.

ModuleName

String

Bandwidth

Nom du module.

Currency

String

CNY

Type de devise.

TradeAmount

Long

109.37

Prix de transaction de la commande.

OriginalAmount

Long

125

Prix initial de la commande.

DiscountAmount

Long

15.63

Montant de la remise de la commande.

Exemples

Exemples de requêtes

http(s)://ros.aliyuncs.com/?Action=GetTemplateEstimateCost
&RegionId=cn-hangzhou
&TemplateBody={"ROSTemplateFormatVersion": "2015-09-01", "Parameters": {"Isp": {"Type": "String"}, "Name": {"Type": "String"},"Netmode": {"Type": "String"}, "Bandwidth": {"Type": "Number", "Default": 5}}, "Resources": {"NewEip": {"Type": "ALIYUN::VPC::EIP","Properties": {"InstanceChargeType": "Prepaid", "PricingCycle": "Month",   "Isp": {"Ref": "Isp"}, "Period": 1, "DeletionProtection": false, "AutoPay": false, "Name": {"Ref": "Name"}, "InternetChargeType": "PayByTraffic", "Netmode": {   "Ref": "Netmode"},"Bandwidth": 5}}}}
&Parameters=[{"ParameterKey":"Name","ParameterValue":"DemoEip"}]
&<Common request parameters>

Exemples de réponses réussies

Format XML

HTTP/1.1 200 OK
Content-Type:application/xml

<GetTemplateEstimateCostResponse>
    <RequestId>6DEA36EF-C97D-5658-A4AC-4F5DB08D1A89</RequestId>
    <Resources>
        <NewEip>
            <Type>ALIYUN::VPC::EIP</Type>
            <Success>true</Success>
            <Result>
                <Order>
                    <TaxAmount>0</TaxAmount>
                    <TradeCycleAmount>0</TradeCycleAmount>
                    <RiCycleAmount>0</RiCycleAmount>
                    <Currency>CNY</Currency>
                    <TotalCostAmount>109.37</TotalCostAmount>
                    <RuleIds>102204102264****</RuleIds>
                    <TradeAmount>109.37</TradeAmount>
                    <DiscountCycleAmount>0</DiscountCycleAmount>
                    <OriginalAmount>125</OriginalAmount>
                    <DiscountAmount>15.63</DiscountAmount>
                </Order>
                <OrderSupplement>
                    <ChargeType>PrePaid</ChargeType>
                    <Period>1</Period>
                    <Quantity>1</Quantity>
                    <PriceType>Total</PriceType>
                    <PeriodUnit>Month</PeriodUnit>
                </OrderSupplement>
                <OrderDetails>
                    <ModuleCode>bandwidth</ModuleCode>
                    <ModuleName>Bandwidth</ModuleName>
                    <Currency>CNY</Currency>
                    <TradeAmount>109.37</TradeAmount>
                    <OriginalAmount>125</OriginalAmount>
                    <DiscountAmount>15.63</DiscountAmount>
                </OrderDetails>
                <Rules>
                    <Rule>
                        <RuleDescId>102204102264****</RuleDescId>
                        <Name>Contract discount_order discount_8.750 discount</Name>
                    </Rule>
                </Rules>
            </Result>
        </NewEip>
    </Resources>
</GetTemplateEstimateCostResponse>

Format JSON

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "6DEA36EF-C97D-5658-A4AC-4F5DB08D1A89",
  "Resources" : {
    "NewEip" : {
      "Type" : "ALIYUN::VPC::EIP",
      "Success" : true,
      "Result" : {
        "Order" : {
          "TaxAmount" : 0,
          "OptionalPromotions" : [ ],
          "TradeCycleAmount" : 0,
          "RiCycleAmount" : 0,
          "Currency" : "CNY",
          "TotalCostAmount" : 109.37,
          "RuleIds" : [ "102204102264****" ],
          "TradeAmount" : 109.37,
          "DiscountCycleAmount" : 0,
          "OriginalAmount" : 125,
          "OptionalMixPromotions" : [ ],
          "DiscountAmount" : 15.63
        },
        "OrderSupplement" : {
          "ChargeType" : "PrePaid",
          "Period" : 1,
          "Quantity" : 1,
          "PriceType" : "Total",
          "PeriodUnit" : "Month"
        },
        "OrderDetails" : [ {
          "ModuleCode" : "bandwidth",
          "ModuleName" : "Bandwidth",
          "Currency" : "CNY",
          "TradeAmount" : 109.37,
          "OriginalAmount" : 125,
          "DiscountAmount" : 15.63
        } ],
        "Rules" : {
          "Rule" : [ {
            "RuleDescId" : "102204102264****",
            "Name" : "Contract discount_order discount_8.750 discount"
          } ]
        }
      }
    }
  }
}

Codes d'erreur

Pour obtenir la liste des codes d'erreur, consultez Service error codes.

Code d'état HTTP Code d'erreur Message d'erreur Description

|


400

|


CircularDependency

|


Circular Dependency Found: {reason}.

|


Le modèle contient une dépendance circulaire. reason indique la cause de l'erreur.

|

|


400

|


InvalidSchema

|


{reason}.

|


Le format du modèle n'est pas valide. reason indique la cause de l'erreur.

|

|


400

|


InvalidTemplateAttribute

|


The Referenced Attribute ({resource} {name}) is incorrect.

|


Le modèle contient une référence non valide à la propriété de ressource dans la section Outputs. resource indique le nom de la ressource. name indique le nom de la propriété.

|

|


400

|


InvalidTemplatePropertyType

|


The specified value type of ({resource} {section}) is incorrect.

|


Le type de la propriété de ressource définie dans une section du modèle n'est pas valide. resource indique le nom de la ressource. section indique le nom de la section.

|

|


400

|


InvalidTemplateReference

|


The specified reference "{name}" (in {referencer}) is incorrect.

|


Le modèle contient une référence non valide. name indique le nom de la référence. referencer indique le nom du référent.

|

|


400

|


InvalidTemplateSection

|


The template section is invalid: {section}.

|


Le modèle contient une section non valide. section indique le nom de la section.

|

|


400

|


InvalidTemplateVersion

|


The template version is invalid: {reason}.

|


La version du modèle n'est pas valide. reason indique la cause de l'erreur.

|

|


400

|


StackValidationFailed

|


{reason}.

|


La validation de la pile a échoué. reason indique la cause de l'erreur.

|

|


400

|


UnknownUserParameter

|


The Parameter ({name}) was not defined in template.

|


Le paramètre spécifié n'est pas défini dans le modèle. name indique le nom du paramètre.

|

|


400

|


UserParameterMissing

|


The Parameter {name} was not provided.

|


Aucune valeur n'est spécifiée pour le paramètre défini dans le modèle. name indique le nom du paramètre.

|

|


404

|


TemplateNotFound

|


The Template ({ ID }) could not be found.

|


Le modèle n'existe pas. ID indique l'ID du modèle.

|

|


404

|


TemplateNotFound

|


The Template { ID } with version { version } could not be found.

|


Le modèle ou la version du modèle spécifié n'existe pas. ID indique l'ID du modèle. version indique la version du modèle.

|