Item variations
Resource description
Variations of items can be use for products (items) that are available in different sizes, colors or other variations of the same product. The variations resource contains the following public fields:
Field |
Type |
Description |
|---|---|---|
id |
integer |
Internal ID of the variation |
default_price |
money (string) |
The price set directly for this variation or |
price |
money (string) |
The price used for this variation. This is either the
same as |
original_price |
money (string) |
An original price, shown for comparison, not used
for price calculations (or |
active |
boolean |
If |
description |
multi-lingual string |
A public description of the variation. May contain
Markdown syntax or can be |
position |
integer |
An integer, used for sorting |
Endpoints
- GET /api/v1/organizers/(organizer)/events/(event)/items/(item)/variations/
Returns a list of all variations for a given item.
Example request:
GET /api/v1/organizers/bigevents/events/sampleconf/items/11/variations/ HTTP/1.1 Host: eventyay.com Accept: application/json, text/javascript
Example response:
HTTP/1.1 200 OK Vary: Accept Content-Type: application/json { "count": 2, "next": null, "previous": null, "results": [ { "id": 1, "value": { "en": "S" }, "active": true, "description": { "en": "Test2" }, "position": 0, "default_price": "223.00", "price": 223.0, "original_price": null, }, { "id": 3, "value": { "en": "L" }, "active": true, "description": {}, "position": 1, "default_price": null, "price": 15.0 } ] }
- Query Parameters:
page (integer) – The page number in case of a multi-page result set, default is 1
active (boolean) – If set to
trueorfalse, only items with this value for the fieldactivewill be returned.
- Parameters:
organizer – The
slugfield of the organizer to fetchevent – The
slugfield of the event to fetchitem – The
idfield of the item to fetch
- Status Codes:
200 OK – no error
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer/event/item does not exist or you have no permission to view this resource.
- GET /api/v1/organizers/(organizer)/events/(event)/items/(item)/variations/(id)/
Returns information on one variation, identified by its ID.
Example request:
GET /api/v1/organizers/bigevents/events/sampleconf/items/1/variations/1/ HTTP/1.1 Host: eventyay.com Accept: application/json, text/javascript
Example response:
HTTP/1.1 200 OK Vary: Accept Content-Type: application/json { "id": 3, "value": { "en": "Student" }, "default_price": "10.00", "price": "10.00", "original_price": null, "active": true, "description": null, "position": 0 }
- Parameters:
organizer – The
slugfield of the organizer to fetchevent – The
slugfield of the event to fetchitem – The
idfield of the item to fetchid – The
idfield of the variation to fetch
- Status Codes:
200 OK – no error
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer/event does not exist or you have no permission to view this resource.
- POST /api/v1/organizers/(organizer)/events/(event)/items/(item)/variations/
Creates a new variation
Example request:
POST /api/v1/organizers/bigevents/events/sampleconf/items/1/variations/ HTTP/1.1 Host: eventyay.com Accept: application/json, text/javascript Content-Type: application/json { "value": {"en": "Student"}, "default_price": "10.00", "active": true, "description": null, "position": 0 }
Example response:
HTTP/1.1 201 Created Vary: Accept Content-Type: application/json { "id": 1, "value": {"en": "Student"}, "default_price": "10.00", "price": "10.00", "original_price": null, "active": true, "description": null, "position": 0 }
- Parameters:
organizer – The
slugfield of the organizer of the event/item to create a variation forevent – The
slugfield of the event to create a variation foritem – The
idfield of the item to create a variation for
- Status Codes:
201 Created – no error
400 Bad Request – The variation could not be created due to invalid submitted data.
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer/event does not exist or you have no permission to create this resource.
- PATCH /api/v1/organizers/(organizer)/events/(event)/items/(item)/variations/(id)/
Update a variation. You can also use
PUTinstead ofPATCH. WithPUT, you have to provide all fields of the resource, other fields will be reset to default. WithPATCH, you only need to provide the fields that you want to change.You can change all fields of the resource except the
idand thepricefield.Example request:
PATCH /api/v1/organizers/bigevents/events/sampleconf/items/1/variations/1/ HTTP/1.1 Host: eventyay.com Accept: application/json, text/javascript Content-Type: application/json Content-Length: 94 { "active": false, "position": 1 }
Example response:
HTTP/1.1 200 OK Vary: Accept Content-Type: application/json { "id": 1, "value": {"en": "Student"}, "default_price": "10.00", "price": "10.00", "original_price": null, "active": false, "description": null, "position": 1 }
- Parameters:
organizer – The
slugfield of the organizer to modifyevent – The
slugfield of the event to modifyid – The
idfield of the item to modifyid – The
idfield of the variation to modify
- Status Codes:
200 OK – no error
400 Bad Request – The variation could not be modified due to invalid submitted data
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer/event does not exist or you have no permission to change this resource.
- DELETE /api/v1/organizers/(organizer)/events/(event)/items/(id)/variations/(id)/
Delete a variation.
Example request:
DELETE /api/v1/organizers/bigevents/events/sampleconf/items/1/variations/1/ HTTP/1.1 Host: eventyay.com Accept: application/json, text/javascript
Example response:
HTTP/1.1 204 No Content Vary: Accept
- Parameters:
organizer – The
slugfield of the organizer to modifyevent – The
slugfield of the event to modifyid – The
idfield of the item to modifyid – The
idfield of the variation to delete
- Status Codes:
204 No Content – no error
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer/event does not exist or you have no permission to delete this resource.