Session

The resources and methods under /Web (/Cart, /Session) facilitate customer facing applications and websites for login administration and cart management. Resources here are also used by Tessitura applications such as TRBO (Tessitura Roving Box Office).

Http Verb Operation
Get Web/Session/{sessionKey} Returns details summarizing a web session's state. Includes counts of cart products, the login status, MOS and Source
GET Method: Get, URL: Web/Session/{sessionKey} Test

Returns details summarizing a web session's state.

GetDefault Web/Session/{sessionKey}/Default/{fieldName} Returns summary information for the specified default, including value
GET Method: GetDefault, URL: Web/Session/{sessionKey}/Default/{fieldName} Test

Returns summary information for the specified default, including value

GetDeliveryMethods Web/Session/{sessionKey}/DeliveryMethods Returns the available delivery methods for the session Delivery method availability is based on the mode of sale. NOTE: The Hold at Box Office delivery method(ID -1) is always returned. Web code must be used to filter out this delivery method as needed.
GET Method: GetDeliveryMethods, URL: Web/Session/{sessionKey}/DeliveryMethods Test

Returns the available delivery methods for the session

GetExpiration Web/Session/{sessionKey}/Expiration Returns the deadline after which a session's reserved seats will be released When called on a session without an established Seat Server session, one will be created for it. Once the session is created, the deadline will apply regardless of whether or not any tickets have been added to the cart.
GET Method: GetExpiration, URL: Web/Session/{sessionKey}/Expiration Test

Returns the deadline after which a session's reserved seats will be released

GetOnAccountBalances Web/Session/{sessionKey}/Constituent/OnAccount?paymentMethodIds={paymentMethodIds} Returns the balance of on account money held by the constituent associated to the provided session key. Results can be filtered by specific on-account payment methods. The Amount used in current session is also indicated.
GET Method: GetOnAccountBalances, URL: Web/Session/{sessionKey}/Constituent/OnAccount?paymentMethodIds={paymentMethodIds} Test

Returns the balance of on account money held by the constituent associated to the provided session key.

GetVariable Web/Session/{sessionKey}/Variables/{variableName} Returns the value of the specified session variable.
GET Method: GetVariable, URL: Web/Session/{sessionKey}/Variables/{variableName} Test

Returns the value of the specified session variable.

GetVariables Web/Session/{sessionKey}/Variables Returns a list of all name/value pair variables for the specified session.
GET Method: GetVariables, URL: Web/Session/{sessionKey}/Variables Test

Returns a list of all name/value pair variables for the specified session.

OrderSearch Web/Session/{sessionKey}/Orders/Search?seasonId={seasonId}&renewalsOnly={renewalsOnly}&modeOfSaleId={modeOfSaleId}&perfStartDate={perfStartDate}&perfEndDate={perfEndDate}&deliveryMethodId={deliveryMethodId}&unprintedOnly={unprintedOnly}&includeAffiliations={includeAffiliations}&includeUnfulfilledRollovers={includeUnfulfilledRollovers} Returns summary details for all orders belonging to the session's authenticated constituent. Returned orders can be filtered by print status, performance date, season, mode of sale, delivery method, and whether or not an order was created by a rollover.
GET Method: OrderSearch, URL: Web/Session/{sessionKey}/Orders/Search?seasonId={seasonId}&renewalsOnly={renewalsOnly}&modeOfSaleId={modeOfSaleId}&perfStartDate={perfStartDate}&perfEndDate={perfEndDate}&deliveryMethodId={deliveryMethodId}&unprintedOnly={unprintedOnly}&includeAffiliations={includeAffiliations}&includeUnfulfilledRollovers={includeUnfulfilledRollovers} Test

Returns summary details for all orders belonging to the session's authenticated constituent.

AddVariable Web/Session/{sessionKey}/Variables Add a new session variable to specified session.
POST Method: AddVariable, URL: Web/Session/{sessionKey}/Variables Test

Add a new session variable to specified session.

CreateBusinessFacingSession Web/Session/BusinessFacing Creates a new business-facing session and returns a unique session key. A source number and mode of sale must be supplied. An optional valid batch id may be included.
POST Method: CreateBusinessFacingSession, URL: Web/Session/BusinessFacing Test

Creates a new business-facing session and returns a unique session key.

CreateSession Web/Session Creates a new session and returns a unique session key.
POST Method: CreateSession, URL: Web/Session Test

Creates a new session and returns a unique session key.

CreateWebLogin Web/Session/{sessionKey}/WebLogins Creates a webLogin for a user and logs back into the session using new credentials.
POST Method: CreateWebLogin, URL: Web/Session/{sessionKey}/WebLogins Test

Creates a webLogin for a user and logs back into the session using new credentials.

GetPromoCode Web/Session/{sessionKey}/PromoCode Returns promotion information for a session by number or description A primary use of this method is to translate promo codes (text) into source codes (integers). This method also returns the 6 fields of text that can be recorded for each web source, which can be used to display specific messaging when a promo code is entered by a constituent.
POST Method: GetPromoCode, URL: Web/Session/{sessionKey}/PromoCode Test

Returns promotion information for a session by number or description

LoadOrder Web/Session/{sessionKey}/LoadOrder/{orderId} Load an existing order into the cart and return the cart details Once an order is loaded, changes can be made to the order. When loaded, the session mode of sale changes to the mode of sale of the loaded order. The method raises an exception if called with existing items in the cart. This method loads all products and payments. Generally, these reloaded products and payments cannot be manipulated by the API. New products and payments can be added, then saved with Checkout. Locked orders cannot be loaded by this method. If the method is called for a locked order, a determination of whether or not the order is locked by an abandoned web session will be made based on the last access time of the session and the Order Lock Timeout value specified in T_DEFAULTS. (Order Lock Timeout is the number of minutes after which to consider an idle session abandoned.) If the session is determined to be abandoned, the order will be unlocked and loaded. NOTE: All orders loaded by this procedure get a mir_lock value of -1.
POST Method: LoadOrder, URL: Web/Session/{sessionKey}/LoadOrder/{orderId} Test

Load an existing order into the cart and return the cart details

Login Web/Session/{sessionKey}/Login Login a constituent using Username and Password. A constituent record must have an existing login in order for successful authentication. A login type parameter is used to determine which login is evaluated for authentication when a constituent record has more than one. This is generally used to differentiate each organization's logins in a consortium environment. This method sets four session variables: - UID -- The constituent ID for the session - LoginType -- The login type used for the session - UserName -- The username for the session - Status -- The status of the login (P = permanent, T = temporary) A constituent can be locked out of logging in after a certain number of failed log in attempts. The number of failed attempts before lockout and the length of lockout are set in the T_DEFAULTS table. Should a constituent exceed the allowed number of failed log in attempts, the method returns data on the number of failed login attempts per login along with a timestamp of the time at which the user was locked out of the login process.
POST Method: Login, URL: Web/Session/{sessionKey}/Login Test

Login a constituent using Username and Password.

LoginAsGuest Web/Session/{sessionKey}/LoginAsGuest Login for guest checkout. Allows anonymous checkout under constituent 0, attaching the supplied email address to the cart. The session will be marked as a guest login. If the email address exists attached to a login of the specified login type, that login's constituent ID will be used on the cart.
POST Method: LoginAsGuest, URL: Web/Session/{sessionKey}/LoginAsGuest Test

Login for guest checkout.

LoginUsingConstituentInfo Web/Session/{sessionKey}/Login/ConstituentInfo Login a constituent using Constituent ID, Phone Number and Postal Code. Email can also be passed for additional validation but is optional. A constituent record must have an existing login in order for successful authentication. A login type parameter is used to determine which login is evaluated for authentication when a constituent record has more than one. This is generally used to differentiate each organization's logins in a consortium environment. This method sets four session variables: - UID -- The constituent ID for the session - LoginType -- The login type used for the session - UserName -- The username for the session - Status -- The status of the login (P = permanent, T = temporary) A constituent can be locked out of logging in after a certain number of failed log in attempts. The number of failed attempts before lockout and the length of lockout are set in the T_DEFAULTS table. Should a constituent exceed the allowed number of failed log in attempts, the method returns data on the number of failed login attempts per login along with a timestamp of the time at which the user was locked out of the login process.
POST Method: LoginUsingConstituentInfo, URL: Web/Session/{sessionKey}/Login/ConstituentInfo Test

Login a constituent using Constituent ID, Phone Number and Postal Code. Email can also be passed for additional validation but is optional.

LoginUsingEmail Web/Session/{sessionKey}/Login/Email Login a constituent using Email and Password A constituent record must have an existing login in order for successful authentication. A login type parameter is used to determine which login is evaluated for authentication when a constituent record has more than one. This is generally used to differentiate each organization's logins in a consortium environment. This method sets four session variables: - UID -- The constituent ID for the session - LoginType -- The login type used for the session - UserName -- The username for the session - Status -- The status of the login (P = permanent, T = temporary) A constituent can be locked out of logging in after a certain number of failed log in attempts. The number of failed attempts before lockout and the length of lockout are set in the T_DEFAULTS table. Should a constituent exceed the allowed number of failed log in attempts, the method returns data on the number of failed login attempts per login along with a timestamp of the time at which the user was locked out of the login process.
POST Method: LoginUsingEmail, URL: Web/Session/{sessionKey}/Login/Email Test

Login a constituent using Email and Password

LoginUsingExternal Web/Session/{sessionKey}/Login/External Login a constituent using External Authentication A constituent record must have an existing login in order for successful authentication. A login type parameter is used to determine which login is evaluated for authentication when a constituent record has more than one. This is generally used to differentiate each organization's logins in a consortium environment. This method sets four session variables: - UID -- The constituent ID for the session - LoginType -- The login type used for the session - UserName -- The username for the session - Status -- The status of the login (P = permanent, T = temporary) A constituent can be locked out of logging in after a certain number of failed log in attempts. The number of failed attempts before lockout and the length of lockout are set in the T_DEFAULTS table. Should a constituent exceed the allowed number of failed log in attempts, the method returns data on the number of failed login attempts per login along with a timestamp of the time at which the user was locked out of the login process.
POST Method: LoginUsingExternal, URL: Web/Session/{sessionKey}/Login/External Test

Login a constituent using External Authentication

LoginUsingToken Web/Session/{sessionKey}/Login/Token Login a constituent using Login Token and Email A constituent record must have an existing login in order for successful authentication. A login type parameter is used to determine which login is evaluated for authentication when a constituent record has more than one. This is generally used to differentiate each organization's logins in a consortium environment. This method sets four session variables: - UID -- The constituent ID for the session - LoginType -- The login type used for the session - UserName -- The username for the session - Status -- The status of the login (P = permanent, T = temporary) A constituent can be locked out of logging in after a certain number of failed log in attempts. The number of failed attempts before lockout and the length of lockout are set in the T_DEFAULTS table. Should a constituent exceed the allowed number of failed log in attempts, the method returns data on the number of failed login attempts per login along with a timestamp of the time at which the user was locked out of the login process.
POST Method: LoginUsingToken, URL: Web/Session/{sessionKey}/Login/Token Test

Login a constituent using Login Token and Email

Logout Web/Session/{sessionKey}/Logout Logout a constituent Seats locked by the session are automatically released during logout. This behavior can be disabled by setting the DISCONNECT_ON_LOGOUT entry in T_DEFAULTS or the web.config file to False.
POST Method: Logout, URL: Web/Session/{sessionKey}/Logout Test

Logout a constituent

Reprint Web/Session/{sessionKey}/Reprint This method causes a Print at Home reprint request to be written for the specified order. Note that the order will only be reprinted by the Tessitura Print at Home Ticketing service if the service is configured to recognize the delivery method used by the order. The mode of sale for the order must also be set in the TR_PAHT_CONFIGURATION table to allow TPAHT reprints. See the Tessitura Print at Home Ticketing Service document for more details.
POST Method: Reprint, URL: Web/Session/{sessionKey}/Reprint Test

This method causes a Print at Home reprint request to be written for the specified order.

SendLoginCredentials Web/Session/{sessionKey}/Login/SendCredentials Sends an email with a temporary login token to a specific email address and login type. The service searches for the email address in logins of the specified type. If it is found, a password token will be generated and the login credentials template that is configured in T_FORMAT_INFO will be sent.
POST Method: SendLoginCredentials, URL: Web/Session/{sessionKey}/Login/SendCredentials Test

Sends an email with a temporary login token to a specific email address and login type.

TransferSession Web/Session/{sessionKey}/Transfer Transfers the authentication for the specified session to another session. This method is typically called after completing checkout, so the constituent is automatically transferred to a new session. This avoids having to log in again. NOTE: The new session must be generated using the /Web/Session (POST) method. You can choose to have the web API automatically disconnect the constituent's session from the Seat Server once transfer session has completed by setting the configuration value of DISCONNECT_SEAT_SERVER_SESSION_WHEN_TRANSFERING_SESSION to True in the Web API config file.
POST Method: TransferSession, URL: Web/Session/{sessionKey}/Transfer Test

Transfers the authentication for the specified session to another session.

SetConstituent Web/Session/{sessionKey}/Constituents Sets the current constituent on the cart for a business facing session If the Constituent is a primary affiliate of a household, the method obeys the "TRANSACT_AS_HOUSEHOLD_ORDER" entry in T_DEFAULTS to determine if the household constituent should be set. If the default is set to "Prompt", both the household and individual are returned, to allow the user to be queried. To set the constituent to the users choice pass in the selected constituent id and set OverridePrompt to true.
PUT Method: SetConstituent, URL: Web/Session/{sessionKey}/Constituents Test

Sets the current constituent on the cart for a business facing session

SetExpiration Web/Session/{sessionKey}/Expiration Changes the deadline after which a session's reserved seats are released All times are relative to the machine on which the Tessitura Seat Server runs, including the time zone. The method either takes an absolute deadline time or an offset in seconds which is used to shorten or lengthen the time until expiration. The deadline is not the exact moment at which the seats are released, but rather when they are marked as expired. The Tessitura Seat Server will terminate the session when the next cleanup cycle is run (every 60 seconds or so). The method will return the new expiration date/time of the session. The expiration date/time takes precendence over the offset if both are provided in the request.
PUT Method: SetExpiration, URL: Web/Session/{sessionKey}/Expiration Test

Changes the deadline after which a session's reserved seats are released

UpdateVariable Web/Session/{sessionKey}/Variables Update the value of an existing session variable.
PUT Method: UpdateVariable, URL: Web/Session/{sessionKey}/Variables Test

Update the value of an existing session variable.

UpdateWebLogin Web/Session/{sessionKey}/WebLogins Updates the login information for a user and logs back into the session using new credentials. Current and new values must be submitted for login username, password, and email. To retain any of the current values pass the same value for both the current and the new parameter. After successfully updating the user account, the user is automatically logged in with the new login information. When updating a login where the password has been forgotten, submit the request with a null password.
PUT Method: UpdateWebLogin, URL: Web/Session/{sessionKey}/WebLogins Test

Updates the login information for a user and logs back into the session using new credentials.

DeleteVariable Web/Session/{sessionKey}/Variables/{variableName} Delete an existing session variable.
DELETE Method: DeleteVariable, URL: Web/Session/{sessionKey}/Variables/{variableName} Test

Delete an existing session variable.