TABLE OF CONTENTS


Summary

APIs to help you market your events. Like getting a calendar of days that the event is available and not sold out.


List Event Templates

GET /v1/b2c/event/templates

Parameters: 

  • startTime: (Optional) ISO8601 of start time for event templates to retrieve.
  • endTime: (Optional) ISO8601 of end time for events templates to retrieve.
  • x-b2c-tenant-id: (Required) (Header) tenant ID for the owner of the event templates you are looking for.

  • type (Optional) one of private, standard or all.  If left off or standard then will not return events that were made for private event templates.
  • membershipId: (Optional) The current user's membership id.  This allows for event templates that are only accessible to memberships to be returned, also allows for price list of the event to include membership discounts.
  • membershipCategoryId: (Optional) The current user's membership category.  This allows for event templates that are only accessible to memberships to be returned, also allows for price list of the event to include membership discounts.

Returns:

A list of event templates in the same format as B2C Event Templates

List Template Times

List the times for events of a specified event template

GET /v1/b2c/event/templates/{id}/times

Parameters:

  • id: (Required) the template id you want to list the times for.
  • startTime: (Optional, defaults to now) ISO8601, the time you want the events to be after.
  • endTime: (Optional, defaults to 2 days) ISO8601, the time you want your events to be before.
  • x-b2c-tenant-id: (Required) (Header) tenant ID for the owner of the events you are looking for.

  • saleChannel: (Optional) the sale channel you are listing the times for.  Any one of (online, customerRep, pointOfSale and manualEntry)
  • type (Optional) one of private, standard or all.  If left off or standard then will not return events that were made for private event templates.
  • comboTemplateId (Optional) The combo template Id contains a list of templates.
  • membershipId: (Optional) The current user's membership id.  This allows for times for schedules that are only accessible to memberships to be returned.
  • membershipCategoryId: (Optional) The current user's membership category.  This allows for times for schedules that are only accessible to memberships to be returned.

Returns:

A list of event time objects.


List Template Times

List the times for events for all templates.

GET /v1/b2c/event/templates/times

Parameters:

  • startTime: (Optional, defaults to now) ISO8601, the time you want the events to be after.
  • endTime: (Optional, defaults to 2 days) ISO8601, the time you want your events to be before.
  • x-b2c-tenant-id: (Required) (Header) tenant ID for the owner of the events you are looking for.

  • saleChannel: (Optional) the sale channel you are listing the times for.  Any one of (online, customerRep, pointOfSale and manualEntry)
  • type (Optional) one of private, standard or all.  If left off or standard then will not return events that were made for private event templates.
  • membershipId: (Optional) The current user's membership id.  This allows for times for schedules that are only accessible to memberships to be returned. Not implemented yet, subject to change.
  • membershipCategoryId: (Optional) The current user's membership category.  This allows for times for schedules that are only accessible to memberships to be returned. Not implemented yet, subject to change.

Returns:

A list of event times bucketed by template in this format.

  • List of templates
    • templateId
      • times: list of events
        • id: the id of the event
        • date: string representation of the date.
        • time: string representation of the time
        • seatsAvailable: integer, the number of seats still available for this time.
        • startTime:  ISO8601 representation of the start time for this event
[
    {
        "templateId" "123",
        "times" [
            {
                "id" "789",
                "date" "Mon, Nov 17, 2018",
                "time" "9:30 AM EST",
                "seatsAvailable" : 100,
                "startTime" "2014-11-18T09:30:00-05:00"
            },
            ...
        ]
    },
    {
        "templateId" : ...
    }
]

Get Event Template

GET /v1/b2c/event/templates/{id}

Parameters:

  • id:  (Required) the id of the event you want.
  • x-b2c-tenant-id: (Required) (Header) tenant ID for the owner of the event you are looking for.

  • saleChannel: (Optional) the sale channel for the template.  Any one of (online, customerRep, pointOfSale and manualEntry)
  • membershipId: (Optional) The current user's membership id.  This allows for event templates that are only accessible to memberships to be returned, also allows for price list of the event to include membership discounts.
  • membershipCategoryId: (Optional) The current user's membership category.  This allows for event templates that are only accessible to memberships to be returned, also allows for price list of the event to include membership discounts.

Returns:

The requested event template in the same format as B2C Event Templates


Get Activity Calendar

GET /v1/b2c/event/templates/calendar

Parameters:

  • startTime: (Optional, defaults to now) ISO8601, the time you want the events to be after.  Current time if this isn't passed in.
  • endTime: (Optional, defaults to 2 days) ISO8601, the time you want your events to be before.  End of the month if this isn't passed in.
  • x-b2c-tenant-id: (Required) (Header) tenant ID for the owner of the event you are looking for.

  • saleChannel: (Optional) the sale channel you are listing the times for.  Any one of (online, customerRep, pointOfSale and manualEntry)

  • type (Optional) one of private, standard or all.  If left off or standard then will not return events that were made for private event templates.

  • membershipId: (Optional) The current user's membership id.  This allows for only showing days that a membership has events.  It's possible that there are events available only available to members on some days.
  • membershipCategoryId: (Optional) The current user's membership category.  This allows for only showing days that a membership has events.  It's possible that there are events available only available to members on some days.

Returns:

An Activity Calendar

  • Array of days. Each day in the array contains
    • date: ISO8601 representation of the date
    • name:  Future will be the name of the date if it's a holiday.
    • active:  Boolean, true if there are events on that day, otherwise false.

 

Get Activity Calendar for Template

GET /v1/b2c/event/templates/{id}/calendar

Parameters:

  • id: the id of the template.
  • startTime: (Optional, defaults to now) ISO8601, the time you want the events to be after.  Current time if this isn't passed in.
  • endTime: (Optional, defaults to 2 days) ISO8601, the time you want your events to be before.  End of the month if this isn't passed in.
  • saleChannel: (Optional) the sale channel you are listing the times for.  Any one of (online, customerRep, pointOfSale and manualEntry)
  • x-b2c-tenant-id: (Required) (Header) tenant ID for the owner of the event you are looking for.

  • type (Optional) one of private, standard or all.  If left off or standard then will not return events that were made for private event templates.

  • membershipId: (Optional) The current user's membership id.  This allows for only showing days that a membership has events.  It's possible that there are events available only available to members on some days.
  • membershipCategoryId: (Optional) The current user's membership category.  This allows for only showing days that a membership has events.  It's possible that there are events available only available to members on some days.

Returns:

An Activity Calendar

  • Array of days. Each day in the array contains
    • date: ISO8601 representation of the date
    • name:  Future will be the name of the date if it's a holiday.
    • active:  Boolean, true if there are events on that day, otherwise false.


Event Template Object


Field
Description
Notes
idUnique ID of this event template.Required for updates
typeType of event template, either Standard or Private, default is Standard.
admissionTypeEither generalAdmission or standard, default is standard.
nameThe name of this event template.Required
descriptionThe description of the event templateRequired
shortDescriptionA summary description of this template. Default is the first 300 characters of the description.
startTimeThe time that this event template starts.  
  • For instance if the museum is being loaned some Tang Dynasty Artwork from June 1, to November 30 and this event is a tour for the Tang Dynasty exhibition, startTime would be the day that the tours begin, June 1st and endTime would be when the tours end November 30.  
  • If no startTime is provided then we assume that the event starts now.
ISO-8601
endTimeThe end time for the event.  
  • See startTime for a description.  
  • If no endTime is provided then it is assumed that this is an ongoing event.  

duration

The length in time that each event will take.

Required

duration.hourThe number of hours that each event will take.
duration.minutesThe number of minutes that each event will take.
capacityThe maximum capacity that each event will support.Required.
emailConfirmationMessageA message to be added to the emails sent to customers when they purchase events of this template.
resourcesA list of resource specifications for this event.  For instance if the event requires a tour guide that speaks French you would specify Tour Guide as the resource type and Language : French as a field definition.  See Resource Management for more information.
resource[x].typeThe type of resource, like Tour Guide.
resource[x].resourceTemplateIdThe ID of the resource template.
resource[x].resourceIdThe id of the resource assigned to this event template.  Generally this will be null and assigned at the event instance level.
resource[x].quantityThe number of resources that will be required.
resource[x].fieldsName/Value pairs of requirements for resources assigned to Event Instances.  For instance { Language=French }.
resource[x].fields[y].nameThe name for the field, like Language.
resource[x].fields[y].valueThe value for the field, like French.
schedulesThe schedules for this event template. These schedules will be used to generate events of this template. See Scheduling JSON for examples.
priceListsThe list of price lists for this template.
imagesThe images used for this template.
images[x].idThe id of the image.
images[x].descriptionA description of the image
images[x].primaryBoolean value for whether this is the primary image, which is displayed when listing the event template. true if this is a primary image (the logo image), false otherwise. Default false.
prerequisitesThe list of events that need to be attended before this event can be attended. See Prerequisites JSON Object below.This object is deprecated
prerequisites.operation

Either allOf or anyOf.

  • allOf: All of the prerequisites must be met.
  • anyOf: Any one of the prerequisites must be met.
This object is deprecated
prerequisites.requiresA list of requirements.This object is deprecated
prerequisites.requires[x].eventTemplateIdTemplate id of the required template.This object is deprecated
prerequisites.requires[x].minBuffer time to allow between the end of the required template to the dependent template.  The amount of time it takes to get from the required event to the dependent template.This object is deprecated
prerequisites.requires[x].min.minutesThe number of minutes that you must have completed the prerequisite before you can buy tickets for this event.This object is deprecated
prerequisites.requires[x].min.hoursThe hours of minutes that you must have completed the prerequisite before you can buy tickets for this event.This object is deprecated
prerequisites.requires[x].min.daysThe days of minutes that you must have completed the prerequisite before you can buy tickets for this event.This object is deprecated
prerequisites.requires[x].min.endOfDayBoolean value if set to true then will go to the end of the day for the number of days. So if you must have performed this prerequisite any time yesterday you set the min time to be 1 days and endOfDay to true.This object is deprecated
prerequisites.requires[x].maxMaximum amount of time to allow.  You have to finish the required template less than this amount of time before you can take the dependent template.  For instance if the required event is a daily pass, the max time might be 1 days and endOfDay.This object is deprecated
prerequisites.requires[x].max.minutesThe maximum number of minutes that you have after taking this prerequisite before going to the next event.This object is deprecated
prerequisites.requires[x].max.hoursThe maximum number of hours that you have after taking this prerequisite before going to the next event.This object is deprecated
prerequisites.requires[x].max.daysThe maximum number of days that you have after taking this prerequisite before going to the next event.This object is deprecated
prerequisites.requires[x].max.endOfDayBoolean value for whether the the time period is extended to the end of the day. If it's a three day pass for instance you might set the days to 3 and endOfDay to true so that you go the entire way through the third day.This object is deprecated
prerequisites.requires[x].nameThe name of the prerequisite template.This object is deprecated Read Only
recommendationsThe list of events that are recommended after buying this event. See Recommendations JSON Object below.
recommendations.recommendationsThe list of recommendations.
recommendations.recommendations[x].eventTemplateIdTemplate ID to recommend after this one has been added to the shopping cart.
recommendations.recommendations[x].minAmount of time it takes to get from this event to the recommended event. We won't recommend events that happen too early and make it difficult to get from the current event to the recommended event.
recommendations.recommendations[x].min.minutesMinimum number of minutes to allow between this event and the recommended event.
recommendations.recommendations[x].min.hoursMinimum number of hours to allow between this event and the recommended event.
recommendations.recommendations[x].min.daysMinimum number of days to allow between this event and the recommended event.
recommendations.recommendations[x].min.endOfDayBoolean value for whether the the time period is extended to the end of the day. If the two events were both physically stressful and you wouldn't recommend doing them both on the same day then you might set the number of days to 1 and this value to true to recommend that they come back tomorrow for the recommended event.
recommendations.recommendations[x].maxMaximum amount of time to recommend the new event.
recommendations.recommendations[x].max.minutesMaximum number of minutes to recommend the second event.
recommendations.recommendations[x].max.hoursMaximum hours of minutes to recommend the second event.
recommendations.recommendations[x].max.daysMaximum days of minutes to recommend the second event.
recommendations.recommendations[x].max.endOfDayBoolean value for whether the the time period is extended to the end of the day.
reviewStateEither Draft or Published, default is Draft.  Keep your event template in Draft mode until you are ready to start selling events of this template. Once you put in Published mode the events will be generated and available on ACME's consumer website. You can not go back to Draft mode after you've Published.
GLCodeGeneral ledger value.
addOnsAdd on inventory items available for events of this template.
addOns.inventoryIdsA list of the inventory ids that are available as add-ons for this event template.
addOns.inventoryAddOnsA descriptive list of the add-ons for this event template. Read Only, for display purposes only.Read Only
ticketDetailsDetails used when generating tickets for events of this template.
ticketDetails.ticketDurationDaysThe number of days that tickets generated for events of this template will be valid.
ticketDetails.checkInWindowDetails about when visitors can check in with tickets for events of this template.
ticketDetails.checkInWindow.minutesBeforeThe number of minutes before the event start time that the ticket can be scanned.
ticketDetails.checkInWindow.minutesAfterThe number of minutes after the event start time that the ticket can be scanned.
ticketDetails.checkInWindow.blockScanBoolean value, set to true if you don't want scanning of tickets created by this event template at the Venue. The tickets will not contain a barcode.
ticketDetails.checkInWindow.autoRebookTickets of this template can be automatically rebooked upon scanning at Access Control. New event must have enough capacity and be of the same event template. Default - false.
ticketDetails.purchaseAvailabilityWhen is the event available for sale
ticketDetails.purchaseAvailability.timeFrameValid values are 'when', 'before' and 'after'
ticketDetails.purchaseAvailability.minutesWhen timeFrame of 'before' or 'after' are used, specify how many minutes. If timeFrame is 'when', minutes is implied to be 0.
ticketDetails.ticketPrintLinesA set of lines that you want printed on the bottom of tickets generated for this event template.
ticketDetails.hideEventDateSet to true if you don't want the date and time of the event to appear on the tickets. This is useful when the tickets are valid for multiple days.
emailNotifyA list of people to notify when a purchase happens on an event generated by this template. This is particularly good when you are selling tickets to a third party event.
emailNotify[x].nameName of the person being notified.
emailNotify[x].emailEmail address of the person being notified.
membershipThe membership elements of the event template. What memberships are required, what discounts different memberships are eligible for.
membership.restrictionsA list of membership categories that are eligible for this event template. Gives the ability to create events that require specific levels of membership before you can attend.
membership.restrictions[x].idThe ID of the membership category that you are allowing access to this event template
membership.restrictions[x].nameThe name of the membership category.Read Only
membership.restrictions[x].descriptionThe description of the membership category.Read Only
membership.restrictions[x].defaultTypeThe defaultType of the membership category.Read Only
membership.restrictions[x].defaultType.idThe id of the defaultType of the membership category.Read Only
membership.restrictions[x].defaultType.programThe program of the defaultType of the membership category.Read Only
membership.restrictions[x].defaultType.categoryThe category of the defaultType of the membership category.Read Only
membership.restrictions[x].defaultType.subcategoryThe subcategory of the defaultType of the membership category.Read Only
membership.restrictions[x].defaultType.levelThe level of the defaultType of the membership category.Read Only
membership.restrictions[x].typesA list of membership types that are part of the membership category.Read Only
membership.restrictions[x].types[y].idThe id of the membership type which is part of the membership category.Read Only
membership.restrictions[x].types[y].programThe program of the membership type which is part of the membership category.Read Only
membership.restrictions[x].types[y].categoryThe category of the membership type which is part of the membership category.Read Only
membership.restrictions[x].types[y].subcategoryThe subcategory of the membership type which is part of the membership category.Read Only
membership.restrictions[x].types[y].levelThe level of the membership type which is part of the membership category.Read Only
membership.discountsA list of discounts associated with each membership.
membership.discounts[x].categoryThe membership category associated with this discount.
membership.discounts[x].category.idThe id of the membership category you are giving a discount.
membership.discounts[x].category.name
Read Only
membership.discounts[x].category.description
Read Only
membership.discounts[x].category.defaultType
Read Only
membership.discounts[x].category.defaultType.id
Read Only
membership.discounts[x].category.defaultType.program
Read Only
membership.discounts[x].category.defaultType.category
Read Only
membership.discounts[x].category.defaultType.subcategory
Read Only
membership.discounts[x].category.defaultType.level
Read Only
membership.discounts[x].category.types
Read Only
membership.discounts[x].category.types[y].id
Read Only
membership.discounts[x].category.types[y].program
Read Only
membership.discounts[x].category.types[y].category
Read Only
membership.discounts[x].category.types[y].subcategory
Read Only
membership.discounts[x].category.types[y].level
Read Only
membership.discounts[x].discountThe id of the membership type which is part of the membership category.Read Only
membership.discounts[x].discount.idThe id of the discount you are giving this membership category..
membership.discounts[x].discount.code
Read Only
membership.discounts[x].discount.name
Read Only
membership.discounts[x].discount.description
Read Only
membership.discounts[x].discount.values
Read Only
membership.discounts[x].discount.values[y].personTypeId
Read Only
membership.discounts[x].discount.values[y].personType
Read Only
membership.discounts[x].discount.values[y]discountType
Read Only
membership.discounts[x].discount.values[y].value
Read Only
membership.discounts[x].discount.values[y].tag
Read Only
membership.discounts[x].maxTicketsThe maximum number of tickets this member can purchase at this discounted value.Read Only
soldQuantityThe total number of tickets sold for events of this template.Read Only
starsthe total number of stars that the event has received in ratings by customers. To get the average number of stars, divide this number by the number of ratings below.Read Only
ratingsthe total number of ratings that the event has received by customers. To get the average number of stars, divide the number of stars by this number.Read Only
availableTrue if the event template is available based on the membership provided. If false the visitor doesn't meet the required membership level.Read Only

customFields

List of custom fields available for the template and values set for each custom field.
Note: the list of custom fields for templates can be obtained by the following api: 
v2/tenant/settings/custom/fields?pageSize=-1&page=1&sortField=name&sortDirection=asc (GET)

customField.namename of custom field (corresponds to the "label" property of custom fields obtained from the v2/tenant/settings/custom/fields API)
customField.valuevalue of custom field


Prerequisite JSON Object (DEPRECATED)

Field
Description
Notes
operation

Either allOf or anyOf.

  • allOf: All of the prerequisites must be met.
  • anyOf: Any one of the prerequisites must be met.

requiresA list of requirements.
requires[x].eventTemplateIdTemplate id of the required template.
requires[x].minBuffer time to allow between the end of the required template to the dependent template.  The amount of time it takes to get from the required event to the dependent template.
requires[x].min.minutesThe number of minutes that you must have completed the prerequisite before you can buy tickets for this event.
requires[x].min.hoursThe hours of minutes that you must have completed the prerequisite before you can buy tickets for this event.
requires[x].min.daysThe days of minutes that you must have completed the prerequisite before you can buy tickets for this event.
requires[x].min.endOfDayBoolean value if set to true then will go to the end of the day for the number of days. So if you must have performed this prerequisite any time yesterday you set the min time to be 1 days and endOfDay to true.
requires[x].maxMaximum amount of time to allow.  You have to finish the required template less than this amount of time before you can take the dependent template.  For instance if the required event is a daily pass, the max time might be 1 days and endOfDay.
requires[x].max.minutesThe maximum number of minutes that you have after taking this prerequisite before going to the next event.
requires[x].max.hoursThe maximum number of hours that you have after taking this prerequisite before going to the next event.
requires[x].max.daysThe maximum number of days that you have after taking this prerequisite before going to the next event.
requires[x].max.endOfDayBoolean value for whether the the time period is extended to the end of the day. If it's a three day pass for instance you might set the days to 3 and endOfDay to true so that you go the entire way through the third day.
requires[x].nameThe name of the prerequisite template.Read Only


Recommendations JSON Object

Field
Description
Notes
eventTemplateIdTemplate ID to recommend after this one has been added to the shopping cart.
minAmount of time it takes to get from this event to the recommended event. We won't recommend events that happen too early and make it difficult to get from the current event to the recommended event.
min.minutesMinimum number of minutes to allow between this event and the recommended event.
min.hoursMinimum number of hours to allow between this event and the recommended event.
min.daysMinimum number of days to allow between this event and the recommended event.
min.endOfDayBoolean value for whether the the time period is extended to the end of the day. If the two events were both physically stressful and you wouldn't recommend doing them both on the same day then you might set the number of days to 1 and this value to true to recommend that they come back tomorrow for the recommended event.
maxMaximum amount of time to recommend the new event.
max.minutesMaximum number of minutes to recommend the second event.
max.hoursMaximum hours of minutes to recommend the second event.
max.daysMaximum days of minutes to recommend the second event.
max.endOfDayBoolean value for whether the the time period is extended to the end of the day.


AddOn List JSON Object

Field
Description
Notes
inventoryIdsList of inventory ids
inventoryAddOnsList of filled in inventory objectsRead Only
inventoryAddOns[x].idid of the inventory item.Read Only
inventoryAddOns[x].nameThe name of the inventory Item.Read Only
inventoryAddOns[x].descriptionThe description of the inventory Item.Read Only
inventoryAddOns[x].skuThe SKU (Stock Keeping Unit) for the inventory item.Read Only
inventoryAddOns[x].priceThe price of the inventory item.Read Only
inventoryAddOns[x].quantityThe number of inventory items available.Read Only
inventoryAddOns[x].typeThe type of inventory item one of (doNotTrack, consumable or resource).Read Only
inventoryAddOns[x].displayOrderThe order you want this item displayed in when you list the add ons.Read Only
inventoryAddOns[x].createdOnThe date that this item was created.Read Only
inventoryAddOns[x].updatedOnThe time that this item was created.Read Only
inventoryAddOns[x].salesChannelsA list of sales channels specifying which sales channels are enabled for this add on.Read Only
inventoryAddOns[x].salesChannels[y].nameName of the channel.Read Only
inventoryAddOns[x].salesChannels[y].channelLabel of the channel.Read Only
inventoryAddOns[x].salesChannels[y].enabledBoolean value, true if enabled otherwise false.Read Only

Event Time Object

Field
Description
Notes
idthe id of the event 
datestring representation of the date. 
timestring representation of the time 
availableSeats integer, the number of seats still available for this time. 
startTimeSO8601 representation of the start time for this event 
addOns
  
addOns.inventoryIdsA list of inventory Ids. 
addOns.inventoryAddOnsA list of AddOn items. The Addon Object can be found here 


Example Event Template JSON

Event Template JSON
{
  "type" "standard",
  "admissionType" "generalAdmission",
  "name" "New Program Name",
  "description""New Program Description",
  "shortDescription""A short description of the template",
  "startTime" "2014-01-01T00:00:00-00:00",
  "endTime" "2015-01-01T00:00:00-00:00",
  "duration" : {
    "hour" : 1,
    "minutes" : 30
  },
  "priceLists" : [
    {
      "id" "1232-09809",
      "name" "Price List Name",
      "description" "Price List Description",
      "effectiveStartTime" "2014-01-01T00:00:00-00:00",
      "effectiveEndTime" ""2014-04-01T00:00:00-00:00",
      "prices" : [
        {
          "personType" : {
            "id" : "897-12356",
            "name" : "Adult",
            "description" : "18 and older",
            "active" : true,
            "type" : "Individual",
            "defaultPrice" : 0.5,
            "displayOrder" : 1
          },
          "price" : 1.02,
         "primePrice" : 1.03
        }
      ]
    },
 ...
     
  ],
  "resources" : [
    {
      "type" : "Docent",
      "resourceTemplateId" : "1234",
      "quantity" : 2,
      "fields" : [
        {
          "name" : "Lanugage",
          "value" : "English"
        }
      ]
    }
  ],
  "schedule" : [
    {
      "id": "123",
      "name" : "MWF schedule",
      "description" : "Schedule for Monday, Wednesday and Friday",
      "effectiveStartTime" : "2014-01-01T00:00:00-00:00",
      "effectiveEndTime" : "2014-12-31T23:59:59-00:00",
      "weekdays" : [
        "M",
        "W",
        "F"
      ],
      "hours" : [
        {
          "hour" : 10,
          "minutes" : 0,
          "quantity" : 1
        },
        {
          "hour" : 12,
          "minutes" : 0,
          "quantity" : 1
        },
        {
          "hour" : 14,
          "minutes" : 0,
          "quantity" : 1
        }
      ]
    },
    {
      "id": "125",
      "name" : "TuTh schedule",
      "description" : "Schedule for Tuesday and Thursday",
      "effectiveStartTime" : "2014-01-01T00:00:00-00:00",
      "effectiveEndTime" : "2014-12-31T23:59:59-00:00",
      "weekdays" : [
        "Tu",
        "Th"
      ],
      "hours" : [
        {
          "hour" : 11,
          "minutes" : 0,
          "quantity" : 1
        },
        {
          "hour" : 13,
          "minutes" : 0,
          "quantity" : 1
        },
        {
          "hour" : 15,
          "minutes" : 0,
          "quantity" : 1
        }
      ]
    },
    {
      "id": "127",
      "name" : "SaSu schedule",
      "description" : "Schedule for Saturday and Sunday",
      "effectiveStartTime" : "2014-01-01T00:00:00-00:00",
      "effectiveEndTime" : "2014-12-31T23:59:59-00:00",
      "weekdays" : [
        "Sa",
        "Su"
      ],
      "hours" : [
        {
          "hour" : 10,
          "minutes" : 0,
          "quantity" : 1
        },
        {
          "hour" : 11,
          "minutes" : 0,
          "quantity" : 1
        },
        {
          "hour" : 12,
          "minutes" : 0,
          "quantity" : 1
        },
        {
          "hour" : 13,
          "minutes" : 0,
          "quantity" : 1
        },
        {
          "hour" : 14,
          "minutes" : 0,
          "quantity" : 1
        },
        {
          "hour" : 15,
          "minutes" : 0,
          "quantity" : 1
        }
      ]
    }
  ], 
  "images" : [
     {
       "id" : "abjs-fdas-2324",
       "description" : "this is a picture of my mom",
       "primary" : false
     }
  ],
  "prerequisites" : {
     "operation" : "allOf",
     "requires" : [
       {
         "eventTemplateId" : "123-456-789",
         "min" : {
            "minutes" : 1
         },
         "max" : {
            "minutes" : 2
         }
       }
     ]
  },
  "ticketDetails" : {
    "checkInWindow" : {
       "minutesBefore" : 15,
       "minutesAfter" : 5
    },
    "ticketDurationDays" : 365
  },
  "emailNotify" : [
    {
        "name" : "Michael Belleville",
        "email" : "michael@acmeticketing.com"
    },
    {
       "name" : "Albert Einstein",
       "email" : "al@universe.com"
    }
  ],
  "ticketFooter" : [
     "Please board at Gate 28",
     "Don't forget to check out the engine room."
  ],
  "recommendations" : {
    "recommendations" : [
      {
        "eventTemplateId" : "123-456-789",
        "min" : {
           "minutes" : 1
        },
        "max" : {
           "minutes" : 2
        }
      }
    ],
    "tags" : [
      "child friendly",
      "Egyptian"
    ]
  
  }
 }