vivenu purchaseintents API
The purchaseintents API from vivenu — 16 operation(s) for purchaseintents.
The purchaseintents API from vivenu — 16 operation(s) for purchaseintents.
openapi: 3.0.3
info:
title: vivenu access-lists purchaseintents API
description: vivenu API Documentation
version: 1.0.0
contact:
name: vivenu GmbH
url: https://vivenu.com
servers:
- url: https://vivenu.com
description: Production API
- url: https://vivenu.dev
description: Staging API
tags:
- name: purchaseintents
paths:
/api/purchaseintents:
get:
security:
- jwt: []
- apikey: []
parameters:
- name: customerId
required: false
schema:
type: string
description: The customer id to filter for
metas: {}
in: query
style: form
explode: true
- name: status
required: false
schema:
type: string
description: The status to filter for
metas: {}
in: query
style: form
explode: true
- name: approvalStatus
required: false
schema:
type: string
description: The approval status to filter for
metas: {}
in: query
style: form
explode: true
- name: name
required: false
schema:
type: string
description: The name to filter for
metas: {}
in: query
style: form
explode: true
- name: eventId
required: false
schema:
type: string
description: The event id to filter for
metas: {}
in: query
style: form
explode: true
- name: shopId
required: false
schema:
type: string
description: The secret shop id to filter for
metas: {}
in: query
style: form
explode: true
- name: createdAtStart
required: false
schema:
type: string
description: An ISO timestamp from which to filter for
metas: {}
in: query
style: form
explode: true
- name: createdAtEnd
required: false
schema:
type: string
description: An ISO timestamp until which to filter for
metas: {}
in: query
style: form
explode: true
- name: outcomeCheckoutId
required: false
schema:
type: string
description: The resulting checkout id.
metas: {}
in: query
style: form
explode: true
- name: top
required: false
schema:
type: integer
maximum: 1000
description: A limit on the number of objects to be returned. Can range between 1 and 1000.
default: 25
metas: {}
in: query
style: form
explode: true
- name: skip
required: false
schema:
type: integer
description: The number of objects to skip for the requested result
metas: {}
in: query
style: form
explode: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GET_Purchaseintents_GetAllPurchaseIntents_200_response'
'400':
description: Bad Request
'401':
description: Unauthorized
tags:
- purchaseintents
description: Get all PurchaseIntents
operationId: purchaseintents/list
post:
security:
- jwt: []
- apikey: []
parameters: []
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentResource'
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Purchaseintents_CreateAPurchaseIntent'
tags:
- purchaseintents
description: Create a PurchaseIntent
operationId: purchaseintents/create
/api/purchaseintents/strategies:
get:
security:
- jwt: []
- apikey: []
parameters: []
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GET_Purchaseintents_GetAllPurchaseIntentStrategies_200_response'
'401':
description: Unauthorized
tags:
- purchaseintents
description: Get all PurchaseIntent Strategies
operationId: get_all_purchase_intent_strategies
post:
security:
- jwt: []
- apikey: []
parameters: []
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentStrategyResource'
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Purchaseintents_CreatePurchaseIntentStrategies'
tags:
- purchaseintents
description: Create PurchaseIntent Strategies
operationId: create_purchase_intent_strategies
/api/purchaseintents/{id}:
get:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentResource'
'400':
description: Bad Request
'401':
description: Unauthorized
tags:
- purchaseintents
description: Get a PurchaseIntent
operationId: purchaseintents/get
patch:
security:
- jwt: []
- apikey: []
parameters:
- name: id
schema:
type: string
required: true
in: path
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PATCH_Purchaseintents_UpdateAPurchaseIntent'
tags:
- purchaseintents
description: Update a PurchaseIntent
operationId: purchaseintents/update
/api/public/purchaseintents/{id}:
get:
parameters:
- name: secret
required: true
schema:
type: string
metas: {}
in: query
style: form
explode: true
- name: id
required: true
schema:
type: string
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PublicPurchaseIntentResource'
'400':
description: Bad Request
tags:
- purchaseintents
description: Get public PurchaseIntent
operationId: get_public_purchase_intent
/api/purchaseintents/strategies/{id}:
get:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
description: The id of the purchase intent strategy
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentStrategyResource'
'400':
description: Bad Request
'401':
description: Unauthorized
tags:
- purchaseintents
description: Get a PurchaseIntent Strategy
operationId: get_a_purchase_intent_strategy
put:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
description: The id of the purchase intent strategy
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentStrategyResource'
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PUT_Purchaseintents_UpdateAPurchaseIntentStrategy'
tags:
- purchaseintents
description: Update a PurchaseIntent Strategy
operationId: update_a_purchase_intent_strategy
/api/public/purchaseintents/{id}/tickets:
get:
parameters:
- name: secret
required: true
schema:
type: string
metas: {}
in: query
style: form
explode: true
- name: id
required: true
schema:
type: string
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GET_Purchaseintents_GetPublicPurchaseIntentTickets_200_response'
'400':
description: Bad Request
tags:
- purchaseintents
description: Get public PurchaseIntent tickets
operationId: get_public_purchase_intent_tickets
/api/public/purchaseintents/checkout:
post:
parameters: []
responses:
'200':
description: OK
'400':
description: Bad Request
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Purchaseintents_CreateACheckoutForMultiplePurchaseIntents'
tags:
- purchaseintents
description: Create a checkout for multiple PurchaseIntents
operationId: create_a_checkout_for_multiple_purchase_intents
/api/purchaseintents/{id}/history:
post:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
description: The ID of the purchase intent
metas: {}
in: path
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentResource'
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Purchaseintents_AddHistoryEntry'
tags:
- purchaseintents
description: Add history entry
operationId: purchaseintents/addHistoryComment
/api/purchaseintents/{id}/reservation-mail:
post:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
description: The ID of the purchase intent
metas: {}
in: path
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentResource'
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Purchaseintents_SendAReservationMail'
tags:
- purchaseintents
description: Send a reservation mail
operationId: send_a_reservation_mail
/api/purchaseintents/{id}/cancel:
post:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
description: The ID of the purchase intent
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentResource'
'400':
description: Bad Request
'401':
description: Unauthorized
tags:
- purchaseintents
description: Cancel a purchase intent
operationId: cancel_a_purchase_intent
/api/purchaseintents/{id}/split:
post:
security:
- jwt: []
- apikey: []
parameters:
- name: id
schema:
type: string
required: true
in: path
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Purchaseintents_SplitAPurchaseIntent'
tags:
- purchaseintents
description: Split a PurchaseIntent
operationId: purchaseintents/split
/api/purchaseintents/{id}/approval:
post:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentResource'
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Purchaseintents_SetApprovalStatus'
tags:
- purchaseintents
description: Set approval status
operationId: set_approval_status
/api/purchaseintents/{id}/create-tickets:
post:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
description: The ID of the purchase intent
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseIntentResource'
'400':
description: Bad Request
'401':
description: Unauthorized
'404':
description: Not Found
tags:
- purchaseintents
description: Create purchase intent tickets
operationId: create_purchase_intent_tickets
/api/public/purchaseintents/{id}/checkout:
post:
parameters:
- name: id
required: true
schema:
type: string
metas: {}
in: path
responses:
'200':
description: OK
'400':
description: Bad Request
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Purchaseintents_CreatePurchaseIntentsCheckout'
tags:
- purchaseintents
description: Create PurchaseIntent's checkout
operationId: create_purchase_intents_checkout
/api/public/purchaseintents/{id}/cancel:
post:
parameters:
- name: id
required: true
schema:
type: string
description: The ID of the purchase intent
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PublicPurchaseIntentResource'
'400':
description: Bad Request
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Purchaseintents_PublicCancelAPurchaseIntent'
tags:
- purchaseintents
description: Public Cancel a Purchase Intent
operationId: purchaseintents/publicCancel
/api/purchaseintents/{id}/items:
patch:
security:
- jwt: []
- apikey: []
parameters:
- name: id
schema:
type: string
required: true
in: path
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PATCH_Purchaseintents_AmendAPurchaseIntentsItems'
tags:
- purchaseintents
description: Amend a PurchaseIntent's Items
operationId: purchaseintents/amendItems
put:
security:
- jwt: []
- apikey: []
parameters:
- name: id
schema:
type: string
required: true
in: path
responses:
'200':
description: OK
'400':
description: Bad Request
'401':
description: Unauthorized
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PUT_Purchaseintents_UpdateAPurchaseIntentsItems'
tags:
- purchaseintents
description: Update a PurchaseIntent's Items
operationId: purchaseintents/updateItems
components:
schemas:
POST_Purchaseintents_SetApprovalStatus:
type: object
properties:
approvalStatus:
type: string
enum:
- awaiting
- approved
- rejected
rejectionReason:
type: string
POST_Purchaseintents_CreatePurchaseIntentStrategies:
type: object
properties:
name:
type: string
description: Name of the strategy
availabilityStrategy:
oneOf:
- type: object
properties:
createTickets:
type: boolean
enum:
- true
checkAvailability:
type: boolean
description: Whether the availability of the requested tickets should be checked when creating a purchase intent
withoutSeats:
type: boolean
enum:
- false
createValidTickets:
type: boolean
required:
- createTickets
- checkAvailability
- withoutSeats
- createValidTickets
- type: object
properties:
checkAvailability:
type: boolean
description: Whether the availability of the requested tickets should be checked when creating a purchase intent
withoutSeats:
type: boolean
createValidTickets:
type: boolean
enum:
- false
createTickets:
type: boolean
description: Whether tickets should be created when creating a purchase intent
required:
- createTickets
- checkAvailability
- withoutSeats
- createValidTickets
expirationStrategy:
type: object
properties:
hoursBeforeEvent:
type: number
format: float
nullable: true
description: Purchase intents are only valid outside of the defined period before the event
hoursAfterCreation:
type: number
format: float
nullable: true
description: Purchase intents are only valid in the defined period after creation
expiresAt:
type: string
format: date-time
nullable: true
description: Purchase intents are only valid until the defined date
needsApproval:
type: boolean
description: Purchase intent needs approval of the seller before considered valid
deposit:
type: object
properties:
method:
type: string
value:
type: number
format: float
required:
- method
restrictedCompletion:
type: array
items:
type: string
enum:
- POS
- Online
minItems: 1
nullable: true
description: Specifies how the customer can complete their purchase intent
cancellationStrategy:
type: string
enum:
- notAllowed
- cancellationAllowed
default: cancellationAllowed
required:
- name
- availabilityStrategy
- expirationStrategy
- needsApproval
PublicPurchaseIntentResource:
type: object
properties:
_id:
type: string
status:
type: string
enum:
- new
- complete
- canceled
approvalStatus:
type: string
enum:
- awaiting
- approved
- rejected
rejectionReason:
type: string
company:
type: string
firstname:
type: string
lastname:
type: string
name:
type: string
email:
type: string
format: email
customerId:
type: string
address:
type: object
properties:
fullAddress:
type: string
nullable: true
description: Optional full address
street:
type: string
nullable: true
description: The street of the address. Street name including number.
line2:
type: string
nullable: true
description: The additional field of the address.
postal:
type: string
nullable: true
description: The postal code of the address.
city:
type: string
nullable: true
description: The city of the address.
country:
type: string
nullable: true
description: The country of the address. An ISO 3166 country code.
state:
type: string
nullable: true
description: The state of the address. If applicable
deliveryAddress:
type: object
properties:
fullAddress:
type: string
nullable: true
description: Optional full address
street:
type: string
nullable: true
description: The street of the address. Street name including number.
line2:
type: string
nullable: true
description: The additional field of the address.
postal:
type: string
nullable: true
description: The postal code of the address.
city:
type: string
nullable: true
description: The city of the address.
country:
type: string
nullable: true
description: The country of the address. An ISO 3166 country code.
state:
type: string
nullable: true
description: The state of the address. If applicable
name:
type: string
description: The name of the person receiving delivery.
identification:
type: array
items:
$ref: '#/components/schemas/LegalIdentificationDocumentResource'
description: An array of identification items
sellerId:
type: string
eventId:
type: string
shopId:
type: string
strategyId:
type: string
vouchers:
type: array
items:
type: string
appliedCoupons:
type: array
items:
oneOf:
- type: array
- type: boolean
- type: number
- type: object
- type: string
regularPrice:
type: number
format: float
realPrice:
type: number
format: float
currency:
type: string
enum:
- EUR
- USD
- GBP
- AUD
- CHF
- THB
- ILS
- COP
- MXN
- DKK
- NOK
- SEK
- QAR
- CAD
- ISK
- GTQ
- INR
- DOP
- SGD
- PLN
- SAR
- TTD
- ZAR
- KYD
- HKD
- CZK
- KRW
- JPY
- NZD
- AED
- MAD
- TWD
- BRL
- BWP
- NAD
- KES
- SCR
- TRY
- SZL
- LSL
- TZS
- UGX
- ZMW
- ZWG
- GHS
- NGN
- SLE
- LRD
- XOF
- XAF
- GEL
- IDR
- ARS
- CRC
- HUF
- EGP
- MYR
- VND
- PHP
innerFeeComponents:
oneOf:
- type: array
- type: boolean
- type: number
- type: object
- type: string
innerCharge:
type: number
format: float
outerFeeComponents:
oneOf:
- type: array
- type: boolean
- type: number
- type: object
- type: string
outerCharge:
type: number
format: float
tickets:
type: array
items:
type: object
properties:
type:
type: string
enum:
- ticket
description: The type of the cart item.
default: ticket
_id:
type: string
description: Unique identifier for the cart item. If omitted, the system will automatically generate one.
name:
type: string
nullable: true
description: The name of the cart item.
amount:
type: integer
minimum: 1
description: The amount of the cart item.
netPrice:
type: number
format: float
description: The single piece net price of the cart item.
price:
type: number
format: float
description: The single piece price of the cart item.
taxRate:
type: number
format: float
nullable: true
description: The tax rate to be applied to this cart item. If not present the tax rate of the transaction is taken.
triggeredBy:
oneOf:
- type: string
description: An ID of another cart item which triggered the buy action of the cart item.
- type: array
items:
type: string
description: An array of IDs of other cart items which triggered the buy action of the cart item.
nullable: true
description: An ID or an array of IDs of other cart items which triggered the buy action of the cart item.
bundleInfo:
type: object
properties:
bundleId:
type: string
componentId:
type: string
optionId:
type: string
nullable: true
ticketTypeId:
type: string
description: The ID of the ticket type of the cart item.
categoryRef:
type: string
description: The category reference of the ticket type.
seatingInfo:
type: object
properties:
_id:
type: string
description: The ID of the seating object.
_type:
type: number
format: float
enum:
- 6
- 7
description: Indicates the type of seating object. Seat = 6, General Admission = 7.
categoryId:
type: string
description: The ID of the category containing the seating object.
statusId:
type: string
description: The ID of a container holding information about the seating status of the seating object.
name:
type: string
nullable: true
description: If _type == 7. The name of the general admission.
seatType:
type: string
nullable: true
enum:
- handicapped
- limitedView
- foldable
description: If _type == 6. The type of the seat. null = normal.
sectionName:
type: string
nullable: true
description: If _type == 6. The name of the section where the seat is located.
groupName:
type: string
nullable: true
description: If _type == 6. The name of the row group where the seat is located.
rowName:
type: string
nullable: true
description: If _type == 6. The name of the row where the seat is located.
seatName:
type: string
nullable: true
description: If _type == 6. The seat name.
gate:
type: string
nullable: true
description: The entry gate associated with the seating object.
required:
- _type
- statusId
nullable: true
description: The associated seating object.
slotInfo:
type: object
properties:
slotId:
type: string
description: The ID of the time slot.
slotStartTime:
type: string
description: The start time of the time slot.
required:
- slotId
- slotStartTime
nullable: true
description: The associated time slot object.
asHardTicket:
type: boolean
nullable: true
description: Whether this ticket is a hard ticket.
listingId:
type: string
nullable: true
description: Listing in secondary market.
listingItemId:
type: string
nullable: true
description: The ID of the listing item in the secondary market.
triggeredAutomations:
type: boolean
nullable: true
description: Whether the cart item triggered automations.
meta:
type: object
nullable: true
description: Meta data which is propagated to the ticket.
add
# --- truncated at 32 KB (152 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vivenu/refs/heads/main/openapi/vivenu-purchaseintents-api-openapi.yml