Hi David, The new swagger json works for catelog type and so on. However I have issue for the subscription. Create Subscription https://www.zuora.com/developer/api-reference/#operation/POST_Subscription "chargeOverrides" : "chargeOverrides": [
{
"billCycleDay": "5",
"billCycleType": "SpecificDayofMonth",
"billingPeriodAlignment": "AlignToCharge",
"billingTiming": "IN_ARREARS",
"description": "This is rate plan charge description",
"number": "TestCharge",
"price": 12.01,
"productRatePlanChargeId": "ff8080811ca15d19011cddad8c953b53",
"triggerDate": "2015-09-01",
"triggerEvent": "USD"
}
] The 'chargeOverrides' json is not matching the generated type as follow. namespace IO.Swagger.Model
{
/// <summary>
/// Charge associated with a rate plan.
/// </summary>
[DataContract]
public class ChargeOverride
{
/// <summary>
/// Gets or Sets Billing
/// </summary>
[DataMember(Name = "billing", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "billing")]
public ChargeOverrideBilling Billing { get; set; }
/// <summary>
/// Charge number of the charge. For example, C-00000307. If you do not set this field, Zuora will generate the charge number.
/// </summary>
/// <value>Charge number of the charge. For example, C-00000307. If you do not set this field, Zuora will generate the charge number. </value>
[DataMember(Name = "chargeNumber", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "chargeNumber")]
public string ChargeNumber { get; set; }
/// <summary>
/// Gets or Sets CustomFields
/// </summary>
[DataMember(Name = "customFields", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "customFields")]
public RatePlanChargeObjectCustomFields CustomFields { get; set; }
/// <summary>
/// Description of the charge.
/// </summary>
/// <value>Description of the charge. </value>
[DataMember(Name = "description", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or Sets EndDate
/// </summary>
[DataMember(Name = "endDate", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "endDate")]
public EndConditions EndDate { get; set; }
/// <summary>
/// Gets or Sets Pricing
/// </summary>
[DataMember(Name = "pricing", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "pricing")]
public ChargeOverridePricing Pricing { get; set; }
/// <summary>
/// Internal identifier of the product rate plan charge that the charge is based on.
/// </summary>
/// <value>Internal identifier of the product rate plan charge that the charge is based on. </value>
[DataMember(Name = "productRatePlanChargeId", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "productRatePlanChargeId")]
public string ProductRatePlanChargeId { get; set; }
/// <summary>
/// Revenue Recognition Code
/// </summary>
/// <value>Revenue Recognition Code </value>
[DataMember(Name = "revRecCode", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "revRecCode")]
public string RevRecCode { get; set; }
/// <summary>
/// Specifies the revenue recognition trigger condition. * `Contract Effective Date` * `Service Activation Date` * `Customer Acceptance Date`
/// </summary>
/// <value>Specifies the revenue recognition trigger condition. * `Contract Effective Date` * `Service Activation Date` * `Customer Acceptance Date` </value>
[DataMember(Name = "revRecTriggerCondition", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "revRecTriggerCondition")]
public string RevRecTriggerCondition { get; set; }
/// <summary>
/// Specifies the revenue recognition rule. * `Recognize upon invoicing` * `Recognize daily over time`
/// </summary>
/// <value>Specifies the revenue recognition rule. * `Recognize upon invoicing` * `Recognize daily over time` </value>
[DataMember(Name = "revenueRecognitionRuleName", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "revenueRecognitionRuleName")]
public string RevenueRecognitionRuleName { get; set; }
/// <summary>
/// Gets or Sets StartDate
/// </summary>
[DataMember(Name = "startDate", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "startDate")]
public TriggerParams StartDate { get; set; }
/// <summary>
/// Unique identifier for the charge. This identifier enables you to refer to the charge before the charge has an internal identifier in Zuora. For instance, suppose that you want to use a single order to add a product to a subscription and later update the same product. When you add the product, you can set a unique identifier for the charge. Then when you update the product, you can use the same unique identifier to specify which charge to modify.
/// </summary>
/// <value>Unique identifier for the charge. This identifier enables you to refer to the charge before the charge has an internal identifier in Zuora. For instance, suppose that you want to use a single order to add a product to a subscription and later update the same product. When you add the product, you can set a unique identifier for the charge. Then when you update the product, you can use the same unique identifier to specify which charge to modify. </value>
[DataMember(Name = "uniqueToken", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "uniqueToken")]
public string UniqueToken { get; set; }
/// <summary>
/// Get the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
var sb = new StringBuilder();
sb.Append("class ChargeOverride {\n");
sb.Append(" Billing: ").Append(Billing).Append("\n");
sb.Append(" ChargeNumber: ").Append(ChargeNumber).Append("\n");
sb.Append(" CustomFields: ").Append(CustomFields).Append("\n");
sb.Append(" Description: ").Append(Description).Append("\n");
sb.Append(" EndDate: ").Append(EndDate).Append("\n");
sb.Append(" Pricing: ").Append(Pricing).Append("\n");
sb.Append(" ProductRatePlanChargeId: ").Append(ProductRatePlanChargeId).Append("\n");
sb.Append(" RevRecCode: ").Append(RevRecCode).Append("\n");
sb.Append(" RevRecTriggerCondition: ").Append(RevRecTriggerCondition).Append("\n");
sb.Append(" RevenueRecognitionRuleName: ").Append(RevenueRecognitionRuleName).Append("\n");
sb.Append(" StartDate: ").Append(StartDate).Append("\n");
sb.Append(" UniqueToken: ").Append(UniqueToken).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Get the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public string ToJson()
{
return JsonConvert.SerializeObject(this, Formatting.Indented);
}
}
} Can you please check if there are missing update for this swagger.json? Thanks.
... View more