| Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
| POST | /voss/discountAgreements | Create discount agreement | Create discount agreement in VOSS System. |
|---|
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Name | body | string | Yes | Discount agreement name |
| ChargePlanDiscounts | body | List<CreateChargePlanDiscountRequestDto> | Yes | Discount agreement name |
| Description | body | string | Yes | |
| ValidFrom | body | DateTime | Yes | Discount agreement name |
| ValidTo | body | DateTime? | No | Discount agreement name |
| DiscountPeriod | body | CreateDiscountPeriodRequestDto | Yes | Discount agreement name |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ChargePlanId | form | Guid | No | |
| ProductGroupDiscounts | form | List<CreateProductGroupDiscountRequestDto> | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ProductGroupId | form | Guid | No | |
| ProductPricingDiscounts | form | List<ProductPricingDiscountRequestDto> | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DiscountType | form | DiscountTypeEnum | No | |
| ProductId | form | Guid | No | |
| UnitPriceDiscount | form | double | No | |
| TierPricingDiscounts | form | List<CreatePricingTierDiscountRequestDto> | Yes |
| FlatPrice | |
| Percentage |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DiscountType | form | DiscountTypeEnum | No | |
| Index | form | int | No | |
| UnitPriceDiscount | form | double | No | |
| FlatPriceDiscount | form | double | No |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| PeriodKind | form | PeriodKindEnum | No | |
| Length | form | DiscountAgreementTimeLengthRequestDto | Yes | |
| PeriodIterationCount | form | int? | No |
| FixedTime | |
| AlignedToBindingPeriod | |
| AlignedToSubscriptionBillingPeriod |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Unit | form | UnitEnum | No | |
| Value | form | int | No |
| Day | |
| Month | |
| Year |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DiscountAgreementStatus | form | DiscountAgreementStatusEnum | No | |
| ApplicationScope | form | ApplicationScopeEnum | No | |
| Id | form | Guid | No | |
| VersionId | form | Guid | No | |
| SourceVersionId | form | Guid? | No | |
| ExternalId | form | string | Yes | |
| Name | form | string | Yes | |
| Description | form | string | Yes | |
| ValidFrom | form | DateTime | No | |
| ValidTo | form | DateTime? | No | |
| DiscountPeriod | form | DiscountPeriodDto | Yes | |
| Package | form | DiscountPackageDto | Yes | |
| Customers | form | List<DiscountAgreementCustomerResultDto> | Yes | |
| CustomerGroups | form | List<DiscountAgreementCustomerGroupResultDto> | Yes | |
| ChargePlanDiscounts | form | List<ChargePlanDiscountResultDto> | Yes |
| Draft | |
| Staged | |
| Published | |
| Archived | |
| Discarded |
| Any | |
| SubscriptionCustomer | |
| NonSubscriptionCustomerInvoiceRecipient |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| PeriodKind | form | PeriodKindEnum | No | |
| Length | form | TimeLengthDto | Yes | |
| PeriodIterationCount | form | int? | No |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Unit | form | UnitEnum | No | |
| Value | form | int | No |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Id | form | Guid | No | |
| Name | form | string | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| CustomerId | form | Guid | No |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| IntervalStart | form | int | No | |
| IntervalEnd | form | int | No |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Id | form | Guid | No | |
| ChargePlanId | form | Guid | No | |
| ProductGroupDiscounts | form | List<ProductGroupDiscountResultDto> | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Id | form | Guid | No | |
| ProductGroupId | form | Guid | No | |
| ProductPricingDiscounts | form | List<ProductPricingDiscountResultDto> | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DiscountType | form | DiscountTypeEnum | No | |
| Id | form | Guid | No | |
| ProductId | form | Guid | No | |
| UnitPriceDiscount | form | double | No | |
| TierPricingDiscounts | form | List<PricingTierDiscountResultDto> | Yes |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DiscountType | form | DiscountTypeEnum | No | |
| Id | form | Guid | No | |
| Index | form | int | No | |
| UnitPriceDiscount | form | double | No | |
| FlatPriceDiscount | form | double | No |
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /voss/discountAgreements HTTP/1.1
Host: api.bookmore.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"Name":"String","ChargePlanDiscounts":[{}],"Description":"String","ValidTo":"0001-01-01T00:00:00"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"status":"Draft","applicationScope":"Any","sourceVersionId":"00000000-0000-0000-0000-000000000000","externalId":"String","name":"String","description":"String","validTo":"0001-01-01T00:00:00","customers":[{}],"customerGroups":[{}],"chargePlanDiscounts":[{}]}