ProductSpecifications-productSpecificationId-offerings-offeringId:GET
From Hostway API Documentation
(Difference between revisions)
Mike.robski (Talk | contribs) |
Corinne.chui (Talk | contribs) m (1 revision) |
||
| (5 intermediate revisions by 3 users not shown) | |||
| Line 4: | Line 4: | ||
== Request == | == Request == | ||
| − | <code>GET /productSpecifications/''{productSpecificationId}''/offerings/''{offeringId}''</code> | + | <code>GET /productSpecifications/''{productSpecificationId}''/offerings/''{offeringId}'' </code> |
| + | |||
| + | ==== Request Parameters ==== | ||
| + | ; productSpecificationId - ''string'' | ||
| + | : Product specification Id for a particular product specification | ||
| + | ; offeringId - ''string'' | ||
| + | : Offering Id of the specific offering for a particular product specification | ||
| + | |||
| + | === URI Parameters === | ||
| + | ;details - integer | ||
| + | : If set to 1, response will include list of pricing information. This is a short way to get both the offering details and [[ProductSpecifications-productSpecificationId-offerings-offeringId-prices:GET|offering prices]] | ||
| + | |||
| + | '''The following parameters are optional and work in combination with details=1.''' They are used for the pricing list '''filtering''', '''sorting''' and '''pagination'''. | ||
| + | ;filterType | ||
| + | : Indicates that the result should be filtered by price type. | ||
| + | : The legal values for this parameter are 'fee', 'discount' and 'usage_fee' | ||
| + | : '''''fee''''' - all product specification and its service specifications prices (e.g. setup fee, recurring fee, etc.) | ||
| + | : '''''discount''''' - all product specification and its service specifications discounts | ||
| + | : '''''usage_fee''''' - all product specification and its service specifications usage prices | ||
| + | : This parameter CANNOT be used with values containing any wildcards (*) | ||
| + | |||
| + | ;filterRecurrences | ||
| + | : Indicates that the result should be filtered by the number of recurrences | ||
| + | : This parameter is optional. | ||
| + | : The values for this parameter can be specified using a wildcard(*). | ||
| + | |||
| + | ;filterRelatedServiceSpecification | ||
| + | : Indicates that the result should be filtered by linked service specification URI. | ||
| + | : A value of '' indicates that only results with relatedServiceSpecification='' should be returned. | ||
| + | : This parameter is optional | ||
| + | : This parameter CANNOT be used with values containing any wildcards (*) | ||
| + | |||
| + | ;filterName | ||
| + | : Indicates that the result should be filtered by name | ||
| + | : This parameter is optional | ||
| + | : This parameter CANNOT be used with values containing any wildcards (*) | ||
| + | |||
| + | ;sortField | ||
| + | : Indicates which field should be used for sorting. | ||
| + | : Legal values are 'name', 'type', 'recurrences' and 'relatedServiceSpecification'. | ||
| + | : This parameter is optional | ||
| + | |||
| + | ;sortOrder | ||
| + | : Indicates the order in which the result should be sorted. | ||
| + | : Legal values are 'asc' and 'desc' | ||
| + | : This parameter is optional. If 'sortField' was specified and 'sortOrder' was omitted, then the result will be sorted in ascending order. | ||
| + | |||
| + | ;pageSize | ||
| + | : Indicates the number of prices to be included on each page of the result (if pagination is desired) | ||
| + | : This parameter is optional. If 'page' is specified, 'pageSize' is required. | ||
| + | |||
| + | ;page | ||
| + | : Indicates the 1-based index of the page to view. | ||
| + | : The value must be an integer between 1 and the maximum number of pages (returned in the 'last' element of the 'links' attribute of the result) | ||
| + | : This parameter is optional, but if 'pageSize' was specified, then 'page' is also required. | ||
== Response == | == Response == | ||
| Line 12: | Line 66: | ||
;200 OK | ;200 OK | ||
: Success | : Success | ||
| + | |||
| + | ; 401 Unauthorized | ||
| + | : The supplied credentials are invalid or do not provide permissions for this operation. | ||
;404 Not Found | ;404 Not Found | ||
: Returned if the product specification Id or the offering Id could not be found. | : Returned if the product specification Id or the offering Id could not be found. | ||
| − | + | ||
=== Response Body === | === Response Body === | ||
<nowiki> | <nowiki> | ||
| Line 26: | Line 83: | ||
{"href": "</nowiki>{{APIBaseURL}}<nowiki>/productspecifications/{productSpecificationId}/offerings/{offeringId}/", "rel": "self"} | {"href": "</nowiki>{{APIBaseURL}}<nowiki>/productspecifications/{productSpecificationId}/offerings/{offeringId}/", "rel": "self"} | ||
] | ] | ||
| − | } | + | } </nowiki> |
| − | + | ||
==== Parameters ==== | ==== Parameters ==== | ||
| Line 41: | Line 97: | ||
; prices - ''link'' | ; prices - ''link'' | ||
: Hyperlink to the product's offerings prices | : Hyperlink to the product's offerings prices | ||
| − | + | : If request contains '''details''' parameter - response will return [[ProductSpecifications-productSpecificationId-offerings-offeringId-prices:GET#Parameters|prices parameters]] instead of hyperlink | |
; links - ''list'' | ; links - ''list'' | ||
: [[Hypermedia]] for this resource. | : [[Hypermedia]] for this resource. | ||
| + | |||
| + | == Examples == | ||
| + | |||
| + | === Success scenario === | ||
| + | '''Request''' | ||
| + | <nowiki>GET /productSpecifications/{productSpecificationId}/offerings/{offeringId} </nowiki> | ||
| + | |||
| + | '''Response''' | ||
| + | <nowiki> | ||
| + | { | ||
| + | "billingPeriod": 3, | ||
| + | "currency": "USD", | ||
| + | "default": 1, | ||
| + | "prices": "</nowiki>{{APIBaseURL}}<nowiki>/productspecifications/{productSpecificationId}/offerings/{offeringId}/prices", | ||
| + | "links": [ | ||
| + | {"href": "</nowiki>{{APIBaseURL}}<nowiki>/productspecifications/{productSpecificationId}/offerings/{offeringId}/", "rel": "self"} | ||
| + | ] | ||
| + | } </nowiki> | ||
| + | |||
| + | === Request with details === | ||
| + | '''Request''' | ||
| + | <nowiki> | ||
| + | GET /productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=2&pageSize=10 </nowiki> | ||
| + | |||
| + | '''Response''' | ||
| + | <nowiki> | ||
| + | { | ||
| + | "billingPeriod": 3, | ||
| + | "currency": "USD", | ||
| + | "default": 1, | ||
| + | "prices": [ | ||
| + | { | ||
| + | "type": "fee" | ||
| + | "name": "recurring", | ||
| + | "deferred": 1, | ||
| + | "amount": 1125.0, | ||
| + | "billingPeriod": 3, | ||
| + | "recurrences": -1, | ||
| + | "relatedServiceSpecification": "</nowiki>{{APIBaseURL}}<nowiki>/serviceSpecifications/{serviceSpecificationId}", | ||
| + | }, | ||
| + | { | ||
| + | "type" : "usage_fee", | ||
| + | "name" : "mfg_mailbox_standard", | ||
| + | "billingPeriod" : 1, | ||
| + | "relatedServiceSpecification" : "</nowiki>{{APIBaseURL}}<nowiki>/serviceSpecifications/{serviceSpecificationId}", | ||
| + | "unit" : "mfg_mailbox_standard", | ||
| + | "rates" : [ | ||
| + | { | ||
| + | "start" : 1.0, | ||
| + | "end" : 3.0, | ||
| + | "pricePerIncrement" : 0.0, | ||
| + | "includedPrice": 0.0, | ||
| + | "increment": 1.0 | ||
| + | }, | ||
| + | { | ||
| + | "start" : 3.0, | ||
| + | "end" : -1.0, | ||
| + | "pricePerIncrement" : 1.0, | ||
| + | "includedPrice": 3.0, | ||
| + | "increment": 1.0 | ||
| + | } | ||
| + | ] | ||
| + | } | ||
| + | ], | ||
| + | "links": [ | ||
| + | { | ||
| + | "rel": "self", | ||
| + | "href": "</nowiki>{{APIBaseURL}}<nowiki>/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=2" | ||
| + | }, | ||
| + | { | ||
| + | "rel": "first", | ||
| + | "href": "</nowiki>{{APIBaseURL}}<nowiki>/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=1" | ||
| + | }, | ||
| + | { | ||
| + | "rel": "previous", | ||
| + | "href": "</nowiki>{{APIBaseURL}}<nowiki>/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=1" | ||
| + | }, | ||
| + | { | ||
| + | "rel": "next", | ||
| + | "href": "</nowiki>{{APIBaseURL}}<nowiki>/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=3" | ||
| + | }, | ||
| + | { | ||
| + | "rel": "last", | ||
| + | "href": "</nowiki>{{APIBaseURL}}<nowiki>/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=3" | ||
| + | }, | ||
| + | ] | ||
| + | } </nowiki> | ||
== See also == | == See also == | ||
Latest revision as of 14:36, 30 May 2016
[edit] GET /productSpecifications/{productSpecificationId}/offerings/{offeringId}
Retrieves product specification offering details.
Contents |
[edit] Request
GET /productSpecifications/{productSpecificationId}/offerings/{offeringId}
[edit] Request Parameters
- productSpecificationId - string
- Product specification Id for a particular product specification
- offeringId - string
- Offering Id of the specific offering for a particular product specification
[edit] URI Parameters
- details - integer
- If set to 1, response will include list of pricing information. This is a short way to get both the offering details and offering prices
The following parameters are optional and work in combination with details=1. They are used for the pricing list filtering, sorting and pagination.
- filterType
- Indicates that the result should be filtered by price type.
- The legal values for this parameter are 'fee', 'discount' and 'usage_fee'
- fee - all product specification and its service specifications prices (e.g. setup fee, recurring fee, etc.)
- discount - all product specification and its service specifications discounts
- usage_fee - all product specification and its service specifications usage prices
- This parameter CANNOT be used with values containing any wildcards (*)
- filterRecurrences
- Indicates that the result should be filtered by the number of recurrences
- This parameter is optional.
- The values for this parameter can be specified using a wildcard(*).
- filterRelatedServiceSpecification
- Indicates that the result should be filtered by linked service specification URI.
- A value of indicates that only results with relatedServiceSpecification= should be returned.
- This parameter is optional
- This parameter CANNOT be used with values containing any wildcards (*)
- filterName
- Indicates that the result should be filtered by name
- This parameter is optional
- This parameter CANNOT be used with values containing any wildcards (*)
- sortField
- Indicates which field should be used for sorting.
- Legal values are 'name', 'type', 'recurrences' and 'relatedServiceSpecification'.
- This parameter is optional
- sortOrder
- Indicates the order in which the result should be sorted.
- Legal values are 'asc' and 'desc'
- This parameter is optional. If 'sortField' was specified and 'sortOrder' was omitted, then the result will be sorted in ascending order.
- pageSize
- Indicates the number of prices to be included on each page of the result (if pagination is desired)
- This parameter is optional. If 'page' is specified, 'pageSize' is required.
- page
- Indicates the 1-based index of the page to view.
- The value must be an integer between 1 and the maximum number of pages (returned in the 'last' element of the 'links' attribute of the result)
- This parameter is optional, but if 'pageSize' was specified, then 'page' is also required.
[edit] Response
Returns a dictionary of product specification offering details
[edit] Status Code
- 200 OK
- Success
- 401 Unauthorized
- The supplied credentials are invalid or do not provide permissions for this operation.
- 404 Not Found
- Returned if the product specification Id or the offering Id could not be found.
[edit] Response Body
{
"billingPeriod": 3,
"currency": "USD",
"default": 1,
"prices": "https://api.hostway.com/productspecifications/{productSpecificationId}/offerings/{offeringId}/prices",
"links": [
{"href": "https://api.hostway.com/productspecifications/{productSpecificationId}/offerings/{offeringId}/", "rel": "self"}
]
}
[edit] Parameters
- billingPeriod - integer
- Price's billing period in months
- currency - string
- Price's currency
- default - integer
- Specifies whether the offering uses the default billing cycle. Allowed values are 0 and 1
- prices - link
- Hyperlink to the product's offerings prices
- If request contains details parameter - response will return prices parameters instead of hyperlink
- links - list
- Hypermedia for this resource.
[edit] Examples
[edit] Success scenario
Request
GET /productSpecifications/{productSpecificationId}/offerings/{offeringId}
Response
{
"billingPeriod": 3,
"currency": "USD",
"default": 1,
"prices": "https://api.hostway.com/productspecifications/{productSpecificationId}/offerings/{offeringId}/prices",
"links": [
{"href": "https://api.hostway.com/productspecifications/{productSpecificationId}/offerings/{offeringId}/", "rel": "self"}
]
}
[edit] Request with details
Request
GET /productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=2&pageSize=10
Response
{
"billingPeriod": 3,
"currency": "USD",
"default": 1,
"prices": [
{
"type": "fee"
"name": "recurring",
"deferred": 1,
"amount": 1125.0,
"billingPeriod": 3,
"recurrences": -1,
"relatedServiceSpecification": "https://api.hostway.com/serviceSpecifications/{serviceSpecificationId}",
},
{
"type" : "usage_fee",
"name" : "mfg_mailbox_standard",
"billingPeriod" : 1,
"relatedServiceSpecification" : "https://api.hostway.com/serviceSpecifications/{serviceSpecificationId}",
"unit" : "mfg_mailbox_standard",
"rates" : [
{
"start" : 1.0,
"end" : 3.0,
"pricePerIncrement" : 0.0,
"includedPrice": 0.0,
"increment": 1.0
},
{
"start" : 3.0,
"end" : -1.0,
"pricePerIncrement" : 1.0,
"includedPrice": 3.0,
"increment": 1.0
}
]
}
],
"links": [
{
"rel": "self",
"href": "https://api.hostway.com/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=2"
},
{
"rel": "first",
"href": "https://api.hostway.com/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=1"
},
{
"rel": "previous",
"href": "https://api.hostway.com/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=1"
},
{
"rel": "next",
"href": "https://api.hostway.com/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=3"
},
{
"rel": "last",
"href": "https://api.hostway.com/productSpecifications/{productSpecificationId}/offerings/{offeringId}?details=1&page=3"
},
]
}
[edit] See also