Ticket Transfers
A Ticket Transfer represents the process of transferring a ticket from one individual (sender) to another (recipient). Recipients can either accept or reject a ticket transfer.
The Ticket Transfer object
The associated ticket transfer which has been expired
Required attributes
- Name
_id- Type
- string
- Description
The ID of the ticket transfer.
- Name
secret- Type
- string
- Description
The secret token of the ticket transfer.
- Name
ticketIds- Type
- array<string>
- Description
The ID of the tickets that ticket transfer belongs to.
- Name
eventId- Type
- string
- Description
The ID of the event the ticket transfer belongs to.
- Name
sellerId- Type
- string
- Description
The ID of the seller that ticket transfer belongs to.
- Name
status- Type
- enum(CREATED, REJECTED, TRANSFERRED, EXPIRED)
- Description
The status of the ticket ticket transfer.
- Name
origin- Type
- enum(customer, stubhub)
- Description
The origin of the ticket transfer.
- Name
createdAt- Type
- string
- Description
An ISO Timestamp indicating when the ticket transfer was created.
- Name
updatedAt- Type
- string
- Description
An ISO Timestamp indicating when the ticket transfer was updated.
Optional attributes
- Name
groupEventId- Type
- string
- Description
The ID of the group event the ticket transfer belongs to. Only filled in season card case.
- Name
recipient- Type
- object
- Description
Required nested attributes (1)
- Name
email- Type
- string
- Description
The email of the ticket transfer recipient.
Optional nested attributes (2)
- Name
phone- Type
- string
- Description
The phone number of the ticket transfer recipient.
- Name
customerId- Type
- string
- Description
The ID of the ticket transfer recipient.
- Name
sender- Type
- object
- Description
Optional nested attributes (4)
- Name
email- Type
- string
- Description
The email of the ticket transfer sender.
- Name
customerId- Type
- string
- Description
The ID of the ticket transfer sender.
- Name
firstname- Type
- string
- Description
The first name of the ticket transfer sender.
- Name
lastname- Type
- string
- Description
The last name ticket transfer sender.
- Name
outcome- Type
- object
- Description
The object representing result of the completed ticket transfer
Optional nested attributes (1)
- Name
tickets- Type
- array<object>
- Description
The array of objects having transfered and origin tickets.
Required nested attributes (2)
- Name
ticketId- Type
- string
- Description
The ID of the transfered ticket.
- Name
originTicketId- Type
- string
- Description
The ID of the origin ticket.
- Name
history- Type
- array<object>
- Description
An array of history entry items of the ticket transfer.
Required nested attributes (2)
- Name
_id- Type
- string
- Description
The ID of the ticket transfer history entry.
- Name
date- Type
- string
- Description
The date of the history entry.
Optional nested attributes (2)
- Name
userId- Type
- string
- Description
The ID of the user of the ticket transfer history entry.
- Name
type- Type
- enum(created, rejected, transferred, expired)
- Description
The type of the ticket transfer history entry.
- Name
expiresAt- Type
- string
- Description
An ISO Timestamp indicating when the ticket transfer will be expired.
Example
{
"_id": "507f191e810c19729de860ea",
"secret": "string",
"ticketIds": [
"string"
],
"eventId": "507f191e810c19729de860ea",
"sellerId": "507f191e810c19729de860ea",
"status": "CREATED",
"origin": "customer",
"createdAt": "2030-01-23T23:00:00.123Z",
"updatedAt": "2030-01-23T23:00:00.123Z",
"groupEventId": "507f191e810c19729de860ea",
"recipient": {
"email": "example@vivenu.com",
"phone": "string",
"customerId": "507f191e810c19729de860ea"
},
"sender": {},
"outcome": {
"tickets": [
{
"ticketId": "507f191e810c19729de860ea",
"originTicketId": "507f191e810c19729de860ea"
}
]
},
"history": [
{
"_id": "507f191e810c19729de860ea",
"date": "2030-01-23T23:00:00.123Z",
"userId": "507f191e810c19729de860ea",
"type": "created"
}
],
"expiresAt": "2030-01-23T23:00:00.123Z"
}Create Ticket Transfer
Create Ticket Transfer
Payload
Required attributes
- Name
tickets- Type
- array<object>
- Description
The array of tickets to be transferred
Required nested attributes (2)
- Name
id- Type
- string
- Description
The ID of the ticket.
- Name
secret- Type
- string
- Description
The secret of the ticket.
- Name
recipient- Type
- object
- Description
The ticket transfer recipient
Required nested attributes (1)
- Name
email- Type
- string
- Description
The email of the ticket transfer recipient.
Optional nested attributes (2)
- Name
customerId- Type
- string
- Description
The ID of the ticket transfer recipient.
- Name
phone- Type
- string
- Description
The phone number of the ticket transfer recipient.
Optional attributes
- Name
childEventId- Type
- string
- Description
The eventId of a single event the ticket should be transferred to. Only required for transferring group tickets.
- Name
requiresAcceptance- Type
- boolean
- Description
Whether to ask the customer for transfer acceptance.
Request
const response = await fetch('https://vivenu.com/api/ticket-transfers', {
method: 'POST',
headers: {
Authorization: 'Bearer {token}',
'Content-Type': 'application/json',
},
body: JSON.stringify( {
"tickets": [
{
"id": "507f191e810c19729de860ea",
"secret": "string"
}
],
"recipient": {
"email": "example@vivenu.com",
"customerId": "507f191e810c19729de860ea",
"phone": "string"
},
"childEventId": "507f191e810c19729de860ea",
"requiresAcceptance": true
}),
})
const data = await response.json()Response (200)
{
"_id": "507f191e810c19729de860ea",
"secret": "string",
"status": "CREATED",
"eventId": "507f191e810c19729de860ea",
"createdAt": "2030-01-23T23:00:00.123Z",
"sender": {},
"recipient": {
"email": "example@vivenu.com",
"phone": "string",
"customerId": "507f191e810c19729de860ea"
},
"outcome": {
"tickets": [
{
"ticketId": "507f191e810c19729de860ea",
"originTicketId": "507f191e810c19729de860ea"
}
]
},
"groupEventId": "507f191e810c19729de860ea",
"tickets": [
{
"id": "507f191e810c19729de860ea",
"ticketName": "string",
"secret": "string",
"seatingInfo": {
"_type": 6,
"statusId": "507f191e810c19729de860ea",
"_id": "507f191e810c19729de860ea",
"categoryId": "507f191e810c19729de860ea",
"name": "Example Name",
"seatType": "handicapped",
"sectionName": "string",
"groupName": "string",
"rowName": "string",
"seatName": "string",
"gate": "string"
},
"email": "example@vivenu.com",
"name": "Example Name",
"excludedEventIds": [
"string"
],
"createdAt": "2030-01-23T23:00:00.123Z"
}
]
}Accept Ticket Transfer
Accept Ticket Transfer
Payload
Required attributes
- Name
secret- Type
- string
- Description
The secret of the ticket transfer.
- Name
prename- Type
- string
- Description
The first name of the customer
- Name
lastname- Type
- string
- Description
The last name of the customer
Optional attributes
- Name
ticketIds- Type
- array<string>
- Description
The array of ticket IDs to be accepted. If not specified - all tickets will be accepted.
Request
const response = await fetch('https://vivenu.com/api/ticket-transfers/507f191e810c19729de860ea/accept', {
method: 'POST',
headers: {
Authorization: 'Bearer {token}',
'Content-Type': 'application/json',
},
body: JSON.stringify( {
"secret": "string",
"prename": "string",
"lastname": "string",
"ticketIds": [
"string"
]
}),
})
const data = await response.json()Response (200)
{
"_id": "507f191e810c19729de860ea",
"secret": "string",
"status": "CREATED",
"eventId": "507f191e810c19729de860ea",
"createdAt": "2030-01-23T23:00:00.123Z",
"sender": {},
"recipient": {
"email": "example@vivenu.com",
"phone": "string",
"customerId": "507f191e810c19729de860ea"
},
"outcome": {
"tickets": [
{
"ticketId": "507f191e810c19729de860ea",
"originTicketId": "507f191e810c19729de860ea"
}
]
},
"groupEventId": "507f191e810c19729de860ea",
"tickets": [
{
"id": "507f191e810c19729de860ea",
"ticketName": "string",
"secret": "string",
"seatingInfo": {
"_type": 6,
"statusId": "507f191e810c19729de860ea",
"_id": "507f191e810c19729de860ea",
"categoryId": "507f191e810c19729de860ea",
"name": "Example Name",
"seatType": "handicapped",
"sectionName": "string",
"groupName": "string",
"rowName": "string",
"seatName": "string",
"gate": "string"
},
"email": "example@vivenu.com",
"name": "Example Name",
"excludedEventIds": [
"string"
],
"createdAt": "2030-01-23T23:00:00.123Z"
}
]
}Reject Ticket Transfer
Reject Ticket Transfer
Payload
Required attributes
- Name
secret- Type
- string
- Description
The secret of the ticket transfer.
Request
const response = await fetch('https://vivenu.com/api/ticket-transfers/507f191e810c19729de860ea/reject', {
method: 'POST',
headers: {
Authorization: 'Bearer {token}',
'Content-Type': 'application/json',
},
body: JSON.stringify( {
"secret": "string"
}),
})
const data = await response.json()Response (200)
{
"_id": "507f191e810c19729de860ea",
"secret": "string",
"status": "CREATED",
"eventId": "507f191e810c19729de860ea",
"createdAt": "2030-01-23T23:00:00.123Z",
"sender": {},
"recipient": {
"email": "example@vivenu.com",
"phone": "string",
"customerId": "507f191e810c19729de860ea"
},
"outcome": {
"tickets": [
{
"ticketId": "507f191e810c19729de860ea",
"originTicketId": "507f191e810c19729de860ea"
}
]
},
"groupEventId": "507f191e810c19729de860ea",
"tickets": [
{
"id": "507f191e810c19729de860ea",
"ticketName": "string",
"secret": "string",
"seatingInfo": {
"_type": 6,
"statusId": "507f191e810c19729de860ea",
"_id": "507f191e810c19729de860ea",
"categoryId": "507f191e810c19729de860ea",
"name": "Example Name",
"seatType": "handicapped",
"sectionName": "string",
"groupName": "string",
"rowName": "string",
"seatName": "string",
"gate": "string"
},
"email": "example@vivenu.com",
"name": "Example Name",
"excludedEventIds": [
"string"
],
"createdAt": "2030-01-23T23:00:00.123Z"
}
]
}Get Public Ticket Transfer
Get Public Ticket Transfer
Request
const response = await fetch('https://vivenu.com/api/ticket-transfers/507f191e810c19729de860ea/secret', {
method: 'GET',
headers: {
Authorization: 'Bearer {token}',
},
})
const data = await response.json()Response (200)
{
"_id": "507f191e810c19729de860ea",
"secret": "string",
"status": "CREATED",
"eventId": "507f191e810c19729de860ea",
"createdAt": "2030-01-23T23:00:00.123Z",
"sender": {},
"recipient": {
"email": "example@vivenu.com",
"phone": "string",
"customerId": "507f191e810c19729de860ea"
},
"outcome": {
"tickets": [
{
"ticketId": "507f191e810c19729de860ea",
"originTicketId": "507f191e810c19729de860ea"
}
]
},
"groupEventId": "507f191e810c19729de860ea",
"tickets": [
{
"id": "507f191e810c19729de860ea",
"ticketName": "string",
"secret": "string",
"seatingInfo": {
"_type": 6,
"statusId": "507f191e810c19729de860ea",
"_id": "507f191e810c19729de860ea",
"categoryId": "507f191e810c19729de860ea",
"name": "Example Name",
"seatType": "handicapped",
"sectionName": "string",
"groupName": "string",
"rowName": "string",
"seatName": "string",
"gate": "string"
},
"email": "example@vivenu.com",
"name": "Example Name",
"excludedEventIds": [
"string"
],
"createdAt": "2030-01-23T23:00:00.123Z"
}
]
}Get a Ticket Transfer
Get a Ticket Transfer
Request
const response = await fetch('https://vivenu.com/api/ticket-transfers/507f191e810c19729de860ea', {
method: 'GET',
headers: {
Authorization: 'Bearer {token}',
},
})
const data = await response.json()Response (200)
{
"_id": "507f191e810c19729de860ea",
"secret": "string",
"ticketIds": [
"string"
],
"eventId": "507f191e810c19729de860ea",
"sellerId": "507f191e810c19729de860ea",
"status": "CREATED",
"origin": "customer",
"createdAt": "2030-01-23T23:00:00.123Z",
"updatedAt": "2030-01-23T23:00:00.123Z",
"groupEventId": "507f191e810c19729de860ea",
"recipient": {
"email": "example@vivenu.com",
"phone": "string",
"customerId": "507f191e810c19729de860ea"
},
"sender": {},
"outcome": {
"tickets": [
{
"ticketId": "507f191e810c19729de860ea",
"originTicketId": "507f191e810c19729de860ea"
}
]
},
"history": [
{
"_id": "507f191e810c19729de860ea",
"date": "2030-01-23T23:00:00.123Z",
"userId": "507f191e810c19729de860ea",
"type": "created"
}
],
"expiresAt": "2030-01-23T23:00:00.123Z"
}Get All Ticket Transfers
Get All Ticket Transfers
Query parameters
Optional query parameters
- Name
ticketIds- Type
- array<string>
- Description
- Name
status- Type
- array<enum(CREATED, REJECTED, TRANSFERRED, EXPIRED)>
- Description
- Name
sender- Type
- object
- Description
- Name
recipient- Type
- object
- Description
- Name
eventId- Type
- string
- Description
- Name
origin- Type
- array<enum(customer, stubhub)>
- Description
- Name
updatedAt- Type
- object
- Description
- Name
top- Type
- number
- Description
- Name
skip- Type
- number
- Description
Request
const response = await fetch('https://vivenu.com/api/ticket-transfers?ticketIds=value1%2Cvalue2&status=value1%2Cvalue2&sender=value&recipient=value&eventId=507f191e810c19729de860ea&origin=value1%2Cvalue2&updatedAt=2030-01-23T23%3A00%3A00.123Z&top=10.5&skip=10.5', {
method: 'GET',
headers: {
Authorization: 'Bearer {token}',
},
})
const data = await response.json()Response (200)
{
"docs": [],
"total": 1
}Get Public Ticket Transfers
Get Public Ticket Transfers
Query parameters
Optional query parameters
- Name
sellerId- Type
- string
- Description
- Name
tickets- Type
- array<object>
- Description
- Name
status- Type
- enum(CREATED, TRANSFERRED)
- Description
- Name
childEventId- Type
- string
- Description
- Name
origin- Type
- enum(customer, stubhub)
- Description
- Name
updatedAt- Type
- object
- Description
Request
const response = await fetch('https://vivenu.com/api/public/ticket-transfers?sellerId=507f191e810c19729de860ea&tickets=value1%2Cvalue2&status=CREATED&childEventId=507f191e810c19729de860ea&origin=customer&updatedAt=2030-01-23T23%3A00%3A00.123Z', {
method: 'GET',
headers: {
Authorization: 'Bearer {token}',
},
})
const data = await response.json()Response (200)
[]