List Membership Levels

GET /v2/b2b/membership/levels

Input

  • isPublished:  Required. boolean. When set to true, returns a list of published membership levels. All clients other than Acme B2B should set this to true.
  • salesChannels: Required. Possible values are online, pointOfSale, insideSalesIndividual, customerRep. To get memberships levels for multiple sales channels, add the values comma separated
  • page: Optional. The page that you want returned, default is 1.
  • pageSize: Optional. The number of items you want returned in a  page.  Default is 100. Setting this to -1 will return everything.
  • sortField: Optional. The filed that you want to sort by 
  • sortDirection : optional. can be asc or desc based on the required direction of sorting. 
  • summarize : optional. boolean. When set to true, it filters out all the meta data / configuration information tied to the membership level
  • membershipLevelGroup: Optional. String. individualAndFamily or organization.
  • action: Optional. The lifecycle actions filter. Possible values are NEW_MEMBERSHIPS, CANCELLATION, UPGRADE, DOWNGRADE, RENEW, AFTER_TERM_RENEW, REJOIN
  • auxiliary. Optional. Boolean. When set to true, returns all membership levels that are of type auxiliary. Otherwise, returns non auxiliary membership levels. (2017Q3.1 release)
  • excludeLevelsWithACollection. Boolean. when set to true, returns membership levels that is not mapped to a collection.
  • collectionId. String. The membership level collection ID

    throws COMBINATION_NOT_SUPPORTED exception when both collection ID and excludeLevelsWithACollection are passed.


returns:

A list of Membership levels Objects

Sample Request with multiple sale channels:

https://sand6-api.acmeticketing.com/v2/b2b/membership/levels?salesChannels=online,pointOfSale&isPublished=true&summarize=true


Get Membership level

GET /v2/b2b/membership/levels/{id}

inputs:

id:  The id of the membership level you want to get.

returns:

The Membership levels Object with the specified id.


Create a Membership level

POST /v2/b2b/membership/levels

body:

The Membership levels Object you want added.

returns:

The newly created Membership levels Object.


Update a Membership level

PUT /v2/b2b/membership/levels

body:

The updated Membership level Object, must contain the id of the object being updated.

returns:

The updated Membership level Object.


Delete a Membership level

DELETE /v2/b2b/membership/levels/{id}

inputs:

id:  The id of the membership levels you want to delete.

returns:

The Membership levels Object of the deleted entry.


List Membership Offerings of a Membership level

GET /v2/b2b/membership/levels/{levelId}/membershipofferings

inputs:

levelId:  The id of the membership levels you want to get the list of Membership Offerings for.

returns:

A list of Membership Membership Offering objects


Get a Membership Offering for a Membership level

GET /v2/b2b/membership/levels/{levelId}/membershipofferings/{membershipOfferingId}

inputs:

levelId:  The id of the membership levels you want to get the Membership Offerings for.

membershipOfferingId: The id of the Membership Offering you want returned.

returns:

The corresponding Membership levels Object.


Add a Membership Offering to a Membership level

POST /v2/b2b/membership/levels/{levelId}/membershipofferings/

inputs:

levels:  The id of the membership levels you want to add the Membership Offering to.

body:

The Membership Offering Object you want added.

returns:

The newly created Membership Offering Object with the id filled in.


Update a Membership Offering on a Membership level

PUT /v2/b2b/membership/levels/{levelId}/membershipofferings

inputs:

levels:  The id of the membership level you want to update the Membership Offering on.

body:

The updated Membership Offering Object, must contain the id of the object being updated.

returns:

The updated Membership level Object.


Remove a Membership Offering from a Membership level

DELETE /v2/b2b/membership/levels/{levelId}/membershipofferings/{membershipOfferingId}

inputs:

levels:  The id of the membership level you want to remove the Membership Offering from.

membershipOfferingId: The id of the membershipOffering you want to remove.

returns:

The Membership Offering that was removed.


Objects

Membership level Object

Field
Description
Notes

id

A unique ID for this membership level.

Read Only

name

The name of the level


description

The description of the level.


defaultType

The default membership type for this level.


defaultType.id

ID of the default membership type for this level.


defaultType.program


Read Only

defaultType.category


Read Only

defaultType.subcategory


Read Only

defaultType.level


Read Only

types

A list of types that belong to this level.


types[x].id



types[x].program


Read Only

types[x].category


Read Only

types[x].subcategory


Read Only

types[x].level


Read Only

saleChannelA list of channels through which the membership can be sold.
rulesRules for this membership level

rules.numberOfCardHolders

Number of allowed card holders for this membership level.


rules.canGift

Setting this flag to true allows the membership level to be gifted.


rules.isStartDateBegOfMonth

flag to set the membership start date to the beginning of the month.


rules.isExpiryDateEndOfMonth

flag to set the membership expiry date to the end of the month.


benefitsAn array of benefits available to all this membership level and all Membership Offerings.New
benefits[x].idThe unique id of the benefit. New
benefits[x].descriptionThe description of the benefit.New
images
A list of images tied to this level
termsAndConditionsThe terms and conditions associated with this membership level.
membershipOfferingsOptional: Array of available Membership Offerings as MembershipPriceGroup objects.New
membershipLevelGroupMembershipLevelGroupEnum. Can take individualAndFamily ,organization.
auxiliaryFlag indicating that the membership level is an auxiliary level.
membershipLevelCollectionList<MembershipLevelCollection> collection
Membership level collections


MembershipOffering Object

Field
Description
idThe id of this membership offering.
nameThe name of the membership offering.
subtitleA short description of the membership offering.
descriptionA detailed description of the membership offering.
priceListsThe prices of the membership offering. Price Lists
priceLists[x].idthe pricelist id
priceLists[x].namethe pricelist name
priceLists[x].descriptionthe pricelist description
priceLists[x].startTimethe start time of the pricelist.
priceLists[x].endTimethe end time of the priceList.
priceLists[x].pricesthe various prices associated with the pricelist.
prices[x].personTypethe price point tied to a particular type in a pricelist.
prices[x].pricePointsame as personType. Used as this is a broader term. Currently serves the same purpose of personType and they will always be the same.
prices[x].priceThe retail price
prices[x].discountedPriceThe discounted price.
durationThe duration of the membership offering.
benefitsAn array of benefits available for this Membership Offering. If there is a corresponding id in the membership level, then this will override the value in the membership level otherwise it will add this benefit to the list in membership level.
benefits[x].idThe unique id of this benefit.
benefits[x].descriptionThe description of the benefit.
saleChannelA list of channels through which the membership offering can be sold.
rulesRules for this membership offering.

rules.numberOfCardHolders

Number of allowed card holders for this membership level.

rules.canGift

Setting this flag to true allows the membership offering to be gifted.

rules.isStartDateBegOfMonth

flag to set the membership start date to the beginning of the month.

rules.isExpiryDateEndOfMonth

flag to set the membership expiry date to the end of the month.

actionsA list of actions that can be performed on this offering
actions[x].actionCan be new, renew, upgrade, downGrade, cancel
actions[x].ruleIdsA list of rule ids. These are references to the rules that will be used by the rules engine to compute the price, expiration dates etc.
actions[x].salesChannelsA list of sale Channels. Contains information about which sale channel this action is enabled/disabled.
actions[x].confirmationEmailRestrictionsA list of confirmationEmailRestrictions objects. Will contain the saleChannel (saleChannel enum) and a flag that indicates whether
actions[x].printMembershipCardsboolean flag.
actions[x].includeDigitalMemberCardsInConfirmationEmail
boolean flag.
actions[x].confirmationMessage
String. Email confirmation message.
types
RE List<MembershipType>
defaultType

RE MembershipType


Sample Membership Level object

Sample Response
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
{
  "id""5785823d0da1688f48ce681f",
  "name""Gautham Family",
  "description""Free unlimited admission to special exhibitions and permanent collections at the de Young and the Legion of Honor, invitations to members-only events and viewing hours, priority ticketing, museum store discounts, and so much more.",
  "shortDescription""Free unlimited admission to special exhibitions and permanent collections at the de Young and the Legion of Honor, invitations to members-only events and viewing hours, priority ticketing, museum store discounts, and so much more.",
  "emailConfirmationMessage""yo",
  "membershipLevelGroup":"organization",
  "rules": {
    "numberOfCardHolders": 2,
    "canGift"true,
    "startBeginningOfMonth"true,
    "expireEndOfMonth"false
  },
  "offerings": [
    {
      "id""c831571c7e844b8092639c3583d9af16",
      "name""1 year Individual",
      "subtitle""Our most basic offering",
      "description""Get the benefits of the Individual Level for one year",
      "duration": 12,
      "benefits": [
        {
          "description""Unlimited free admission for one member and a guest to the permanent collections and most special exhibitions at the de Young and the Legion of Honor"
        },
        {
          "description""Invitations to special members-only events and viewing hours"
        },
        {
          "description""Priority ticketing for special exhibitions"
        },
        {
          "description""Discounts at the de Young and Legion of Honor Museum Stores"
        }
      ],
      "rules": {
        "numberOfCardHolders": 4,
        "canGift"true,
        "startBeginningOfMonth"true,
        "expireEndOfMonth"true
      },
      "salesChannels": [
        {
          "name""Online",
          "channel""online",
          "enabled"true
        },
        {
          "name""Point of Sale",
          "channel""pointOfSale",
          "enabled"true
        },
        {
          "name""Reseller",
          "channel""reseller",
          "enabled"true
        }
      ],
      "priceLists": [
        {
          "id""55f32553e4b00cc91c4d0595",
          "name""The List",
          "description""Testing",
          "prices": [
            {
              "personType": {
                "id""55132b54e4b071f707714061",
                "name""Adult",
                "description""13+ years",
                "active"true,
                "type""Individual",
                "displayOrder": 1
              },
              "price""10.00",
              "primePrice""0.00",
              "salesChannels": [
                {
                  "name""Web",
                  "channel""online",
                  "enabled"true
                },
                {
                  "name""Customer Rep",
                  "channel""customerRep",
                  "enabled"true
                },
                {
                  "name""Point of Sale",
                  "channel""pointOfSale",
                  "enabled"true
                },
                {
                  "name""Manual Entry",
                  "channel""manualEntry",
                  "enabled"true
                },
                {
                  "name""Reseller",
                  "channel""reseller",
                  "enabled"true
                }
              ],
              "displayOrder": 1,
              "discountedPrice""10.00"
            }
          ],
          "startTime""2015-08-03T15:48:48-04:00"
        }
      ],
      "actions": [
        {
          "action""New",
          "ruleIds": [
            "577324c40da16815d3a6d6ba"
          ],
          "salesChannels": [
            {
              "name""Web",
              "channel""online",
              "enabled"true
            },
            {
              "name""Customer Rep",
              "channel""customerRep",
              "enabled"true
            },
            {
              "name""Point of Sale",
              "channel""pointOfSale",
              "enabled"true
            },
            {
              "name""Manual Entry",
              "channel""manualEntry",
              "enabled"true
            },
            {
              "name""Reseller",
              "channel""reseller",
              "enabled"true
            }
          ],
          "printMembershipCards"false,
          "includeDigitalMemberCardsInConfirmationEmail"false
        },
        {
          "action""Down grade",
          "ruleIds": [
            "578c84160da168d5f509cd16"
          ],
          "salesChannels": [
            {
              "name""Web",
              "channel""online",
              "enabled"true
            },
            {
              "name""Customer Rep",
              "channel""customerRep",
              "enabled"true
            },
            {
              "name""Point of Sale",
              "channel""pointOfSale",
              "enabled"true
            },
            {
              "name""Manual Entry",
              "channel""manualEntry",
              "enabled"true
            },
            {
              "name""Reseller",
              "channel""reseller",
              "enabled"true
            }
          ],
          "printMembershipCards"false,
          "includeDigitalMemberCardsInConfirmationEmail"false
        }
      ]
    },
    {
      "id""c831571c7e844b80926cancelOffering",
      "name""1 year Individual cancel",
      "subtitle""Our most basic offering cancel",
      "description""Cancel the benefits of the Individual Level for one year",
      "duration": 12,
      "benefits": [
        {
          "description""Unlimited free admission for one member and a guest to the permanent collections and most special exhibitions at the de Young and the Legion of Honor"
        },
        {
          "description""Invitations to special members-only events and viewing hours"
        },
        {
          "description""Priority ticketing for special exhibitions"
        },
        {
          "description""Discounts at the de Young and Legion of Honor Museum Stores"
        }
      ],
      "rules": {
        "numberOfCardHolders": 4,
        "canGift"true,
        "startBeginningOfMonth"true,
        "expireEndOfMonth"true
      },
      "salesChannels": [
        {
          "name""Online",
          "channel""online",
          "enabled"true
        },
        {
          "name""Point of Sale",
          "channel""pointOfSale",
          "enabled"true
        },
        {
          "name""Reseller",
          "channel""reseller",
          "enabled"true
        }
      ],
      "priceLists": [
        {
          "id""577330802095d87d690c39b3",
          "name""1 year Family Price List",
          "description""Individual/Family",
          "prices": [],
          "startTime""2015-08-03T15:48:48-04:00"
        }
      ],
      "actions": [
        {
          "action""Cancel",
          "ruleIds": [
            "57882be50da168a76ac344f7"
          ],
          "salesChannels": [
            {
              "name""Web",
              "channel""online",
              "enabled"true
            },
            {
              "name""Customer Rep",
              "channel""customerRep",
              "enabled"true
            },
            {
              "name""Point of Sale",
              "channel""pointOfSale",
              "enabled"true
            },
            {
              "name""Manual Entry",
              "channel""manualEntry",
              "enabled"true
            },
            {
              "name""Reseller",
              "channel""reseller",
              "enabled"true
            }
          ],
          "printMembershipCards"true,
          "includeDigitalMemberCardsInConfirmationEmail"true,
          "confirmationMessage":"haha",
          "confirmationEmailRestrictions":[{
              "saleChannel":"Online",
              "canSendConfirmationEmail":true
          }]
        }
      ]
    }
  ],
  "images": [],
  "salesChannels": [
    {
      "name""Web",
      "channel""online",
      "enabled"true
    },
    {
      "name""Point of Sale",
      "channel""pointOfSale",
      "enabled"true
    },
    {
      "name""Reseller",
      "channel""reseller",
      "enabled"true
    },
    {
      "name""Customer Rep",
      "channel""customerRep",
      "enabled"true
    },
    {
      "name""Manual Entry",
      "channel""manualEntry",
      "enabled"true
    }
  ],
  "termsAndConditions""",
  "state""draft"
}

A membership Level created with bare minimum data (level name, offering name, pricepoints / personTypes)

Membership Level with bare minimum data