Breezin Pass Management REST API documentation

Download OpenAPI specification:

Welcome to the Breezin Pass Management REST API documentation. Here you will find the available endpoint definitions for interacting with our system.

Bearer token used to authenticate API REST endpoints. Please provide this token in the HTTP Headers as a Bearer token with any request sent to Breezin Pass Management.

Example: Authorization: Bearer <YOUR_TOKEN_HERE>

beacons

CreateNewBeacon

This API can be used to register a new Beacon for an organisation in the Cloud DB.

Request Body schema: application/json
required

model.BeaconRequest

major
integer

Optional major indentifier of a BLE beacon.

messageText
required
string

MessageText is used to define the contents of the Apple Push Notification when a pass is in range of the BLE Beacon.

minor
integer

Optional minor indentifier of a BLE beacon.

proximityUUID
required
string

The unique identifier of a BLE beacon.

title
required
string

Name assigned to the BLE Beacon.

Responses

Request samples

Content type
application/json
{
  • "major": 10,
  • "messageText": "Some iBeacon messaging for pass notification",
  • "minor": 10,
  • "proximityUUID": "12341234-1234-1234-1234-123412341234",
  • "title": "Some Beacon Title"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

GetPaginatedBeacons

This API can be used to fetch paginated Beacons records from the Cloud DB.

Request Body schema: application/json
required

model.GetPaginatedBeaconRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request. EG 10

lastDocID
string

lastDocID is the unique ID related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

lastModifiedDate
string

lastModifiedDate is the timestamp related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "apple-beacon-5",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z"
}

Response samples

Content type
application/json
{
  • "beacons": [
    ],
  • "lastDocID": "apple-beacon-5",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z"
}

UpdateBeacon

This API can be used to update an existing Beacon record in the Cloud DB.

Request Body schema: application/json
required

model.BeaconRequest

major
integer

Optional major indentifier of a BLE beacon.

messageText
required
string

MessageText is used to define the contents of the Apple Push Notification when a pass is in range of the BLE Beacon.

minor
integer

Optional minor indentifier of a BLE beacon.

proximityUUID
required
string

The unique identifier of a BLE beacon.

title
required
string

Name assigned to the BLE Beacon.

Responses

Request samples

Content type
application/json
{
  • "major": 10,
  • "messageText": "Some iBeacon messaging for pass notification",
  • "minor": 10,
  • "proximityUUID": "12341234-1234-1234-1234-123412341234",
  • "title": "Some Beacon Title"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

VerifyBeaconsExists

This API will attempt to verify if a Beacon title is available for creating a new Beacon within the Cloud DB. Endpoint returns HTTP Status Code 200 (OK) when title is available for use.

Request Body schema: application/json
required

model.VerifyBeaconExistsRequest

title
required
string

The requested title for a new beacon record

Responses

Request samples

Content type
application/json
{
  • "title": "Some Beacon Title"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

billing

FetchPaginatedInvoices

This API can be used to Fetch Paginated Invoice records from the Cloud DB.

Request Body schema: application/json
required

model.GetPaginatedInvoiceRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request. EG 10

lastDocID
string

lastDocID is the unique ID related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

lastStartDate
string

lastStartDate is the timestamp related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "February 2024",
  • "lastStartDate": "2024-03-13T07:42:42.472468Z"
}

Response samples

Content type
application/json
{
  • "invoicesDocs": [
    ],
  • "lastDocID": "October 2023",
  • "lastStartDate": "2023-10-01T00:00:00Z"
}

distribution

DistributeIndividualPass

This API can be used to distribute an Individual pass .

Request Body schema: application/json
required

model.DistributionRequest

endTime
string

Optional expiry time of pass download link. Omit this value from request / set to null if pass download link should be available until pass has been installed to a device.

required
Array of objects (model.DistributionPassDetailsInput)

Array of distribution details for all passes to be distributed within the request.

startTime
string

Optional timestamp of when pass download link becomes valid. Omit this value from request / set to null if pass download link should be valid immediately.

title
required
string

Title of pass design.

Responses

Request samples

Content type
application/json
{
  • "endTime": "2024-05-13T07:42:42.472468Z",
  • "passDetails": [
    ],
  • "startTime": "2024-03-13T07:42:42.472468Z",
  • "title": "SomePassDesignName"
}

Response samples

Content type
application/json
{
  • "failureList": [
    ],
  • "successList": [
    ]
}

DistributePassBatch

This API can be used to Distribute Passes in Batch.

Request Body schema: application/json
required

model.DistributionRequest

endTime
string

Optional expiry time of pass download link. Omit this value from request / set to null if pass download link should be available until pass has been installed to a device.

required
Array of objects (model.DistributionPassDetailsInput)

Array of distribution details for all passes to be distributed within the request.

startTime
string

Optional timestamp of when pass download link becomes valid. Omit this value from request / set to null if pass download link should be valid immediately.

title
required
string

Title of pass design.

Responses

Request samples

Content type
application/json
{
  • "endTime": "2024-05-13T07:42:42.472468Z",
  • "passDetails": [
    ],
  • "startTime": "2024-03-13T07:42:42.472468Z",
  • "title": "SomePassDesignName"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

DistributePassesCSV

This API can be used to Distribute Passes from a CSV file.

Request Body schema: multipart/form-data
required
file
required
string <binary>

CSV file of Distribution details for upload. Please see Postman examples for how to set up this file upload.

endTime
string

Optional expiry time of pass download link. Omit this value from request / set to null if pass download link should be available until pass has been installed to a device.

startTime
string

Optional timestamp of when pass download link becomes valid. Omit this value from request / set to null if pass download link should be valid immediately.

title
required
string

Title of pass design to be used for pass distribution request.

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

GetPaginatedDistributionRequests

This API can be used to get paginated Distribution requests from the Cloud DB.

Request Body schema: application/json
required

model.GetPaginatedDistributionRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request. EG 10

lastCreated
string

lastCreated is the timestamp related to the final item of the previous pagination batch. Please provide this value as an empty timestamp for the first iteration. For following requests, use the value returned from the previous pagination request.

lastDocID
string

lastDocID is the unique ID related to the final item of the previous pagination batch. Please provide this value as an empty string for the first iteration. For following requests, use the value returned from the previous pagination request.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastCreated": "2024-03-13T07:42:42.472468Z",
  • "lastDocID": "r7yLEIjtWfRmqvlS8ggU"
}

Response samples

Content type
application/json
{
  • "distributionDocs": [],
  • "lastCreated": "2024-06-24T15:39:20.581734Z",
  • "lastDocID": "9ymPlleN95krlhSpF2zi"
}

invalidation

GetPaginatedInvalidationRequests

This API can be used to a list of Invalidation request records from DB based on the JWT data.

Request Body schema: application/json
required

model.GetPaginatedInvalidationRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request. EG 10

lastCreated
string

lastCreated is the timestamp related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

lastDocID
string

lastDocID is the unique ID related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastCreated": "2024-03-13T07:42:42.472468Z",
  • "lastDocID": "zgU52kkepocuCRyTXOK0"
}

Response samples

Content type
application/json
{}

InvalidateBatchPasses

This API can be used to Invalidation passes in batch.

Request Body schema: application/json
required

model.InvalidationRequest

expiryTime
string

Optional timestamp to set the ExpiryTime of when the user's pass should be invalidated. If this value is omitted from the request, then ExpiryTime will be set to current time. Please note that passes may take up to 24 hours to expire on the end-user's device. There is also a limit on how far in advance that an expiry date can be assigned to a pass, this will be limited to the next anniversary date of the pass (since creation) + 1 year.

serialNumbers
required
Array of strings

List of serial numbers for passes to be invalidated.

Responses

Request samples

Content type
application/json
{
  • "expiryTime": "2024-03-13T07:42:42.472468Z",
  • "serialNumbers": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string"
}

InvalidateIndividualPass

This API can be used to Invalidate individual pass.

Request Body schema: application/json
required

model.InvalidationRequest

expiryTime
string

Optional timestamp to set the ExpiryTime of when the user's pass should be invalidated. If this value is omitted from the request, then ExpiryTime will be set to current time. Please note that passes may take up to 24 hours to expire on the end-user's device. There is also a limit on how far in advance that an expiry date can be assigned to a pass, this will be limited to the next anniversary date of the pass (since creation) + 1 year.

serialNumbers
required
Array of strings

List of serial numbers for passes to be invalidated.

Responses

Request samples

Content type
application/json
{
  • "expiryTime": "2024-03-13T07:42:42.472468Z",
  • "serialNumbers": [
    ]
}

Response samples

Content type
application/json
{
  • "failureList": [
    ],
  • "successList": [
    ]
}

InvalidatePassesCSV

This API can be used to Invalidation passes from a file.

Request Body schema: multipart/form-data
required
file
required
string <binary>

CSV file of Invalidation details for upload. Please see Postman examples for how to set up this file upload.

expiryTime
string

Optional timestamp to set the ExpiryTime of when the user's pass should be invalidated. If this value is omitted from the request, then ExpiryTime will be set to current time. Please note that passes may take up to 24 hours to expire on the end-user's device. There is also a limit on how far in advance that an expiry date can be assigned to a pass, this will be limited to the next anniversary date of the pass (since creation) + 1 year.

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

location

CreateNewLocation

This API can be used to register a new Geolocation for an organisation.

Request Body schema: application/json
required

model.CreateUpdateLocationRequest

altitude
number

Optional Altitude value to allow multi-story facilities to define the height of the specific location offering (EG shopping mall).

latitude
required
number

The latitude co-ordinate of the Geolocation. Value should be specified in the range -90.0 through +90.0, both inclusive.

longitude
required
number

The longitude co-ordinate of the Geolocation. Value should be specified in the range -180.0 through +180.0, both inclusive.

messageText
required
string

MessageText for the Apple push notification a end-user receives when they enter the Geolocation.

title
required
string

Title defines the name of a location.

Responses

Request samples

Content type
application/json
{
  • "altitude": 10,
  • "latitude": 10,
  • "longitude": 10,
  • "messageText": "welcome",
  • "title": "location"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

GetPaginatedLocations

This API can be used to fetch a paginated list of Geolocations for an organisation.

Request Body schema: application/json
required

model.GetPaginatedLocationRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request. EG 10

lastDocID
string

lastDocID is the unique ID related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

lastModifiedDate
string

lastModifiedDate is the timestamp related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "TESTLOCATION",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z"
}

Response samples

Content type
application/json
{
  • "lastDocID": "TESTLOCATION",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z",
  • "locations": [
    ]
}

UpdateLocation

This API can be used to update an existing Geolocation for an organisation.

Request Body schema: application/json
required

model.CreateUpdateLocationRequest

altitude
number

Optional Altitude value to allow multi-story facilities to define the height of the specific location offering (EG shopping mall).

latitude
required
number

The latitude co-ordinate of the Geolocation. Value should be specified in the range -90.0 through +90.0, both inclusive.

longitude
required
number

The longitude co-ordinate of the Geolocation. Value should be specified in the range -180.0 through +180.0, both inclusive.

messageText
required
string

MessageText for the Apple push notification a end-user receives when they enter the Geolocation.

title
required
string

Title defines the name of a location.

Responses

Request samples

Content type
application/json
{
  • "altitude": 10,
  • "latitude": 10,
  • "longitude": 10,
  • "messageText": "welcome",
  • "title": "location"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

VerifyLocationExists

This API will attempt to verify if a provided Title is available for creating a new Geolocation within the Cloud DB. Endpoint returns HTTP Status Code 200 (OK) when title is available for use.

Request Body schema: application/json
required

model.VerifyLocationExistsRequest

title
required
string

The requested title for a new Location record

Responses

Request samples

Content type
application/json
{
  • "title": "location"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

organisation

UploadOrgPurchaseOrderNumber

This API can be used to upload a Purchase Order Number for including within an Organisation's Invoices.

Request Body schema: application/json
required

model.UploadOrgPurchaseOrderNumberRequest

purchaseOrderNumber
required
string

The PO Number to be applied to an Organisation's account. Please note that this Purchase Order Number will appear within subsequent Invoices generated within the system.

Responses

Request samples

Content type
application/json
{
  • "purchaseOrderNumber": "9949549"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

passDelivery

CreateNewPassDeliveryTemplate

This API can be used to create a new Pass Delivery Template in the Cloud DB for an Organisation.

Request Body schema: application/json
required

model.PassDeliveryTemplateRequest

body
required
string

Body value for populating in Pass Delivery message at distribution time. Please note that this string can be separated into numerous lines using the HTML line break characters, EG <br/><br/>.

footer
required
string

Footer value for populating in Pass Delivery message at distribution time. Please note that this string can be separated into numerous lines using the HTML line break characters, EG <br/><br/>.

imageURL
required
string

Public URL pointing to image to be used when sending Pass Delivery message at distribution time.

preheader
string

Preheader value for populating in Pass Delivery message at distribution time.

subject
required
string

Subject value for populating in Pass Delivery message at distribution time.

title
required
string

Title for the Pass Delivery Template.

type
required
string

Delivery Type of the Pass Delivery Template. EG SMS, Email, etc.

Responses

Request samples

Content type
application/json
{
  • "body": "Your new digital pass is available for download. To download the pass to your smartphone digital wallet, please use the pass download link provided below from your intended Smartphone device:",
  • "footer": "The download link will only be valid for one installation. Best regards",
  • "preheader": "Some Header Text",
  • "subject": "Some Subject",
  • "title": "Test-Email",
  • "type": "Email"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

GetPaginatedPassDeliveryTemplates

This API can be used to fetch a paginated list of an Organisation's Pass Delivery Templates from the Cloud DB.

Request Body schema: application/json
required

model.GetPaginatedPassDeliveryTemplateRequest

batchCount
required
integer

The number of templates we wish to return in our request

lastCreatedDate
string

The Created timestamp of the last document in previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

lastDocID
string

The DocID of the last document in previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

passTemplateType
required
string

The type of delivery template we wish to fetch. Options: "All", "SMS" or "Email"

Responses

Request samples

Content type
application/json
{
  • "batchCount": 10,
  • "lastCreatedDate": "2024-03-13T07:42:42.472468Z",
  • "lastDocID": "string",
  • "passTemplateType": "Email"
}

Response samples

Content type
application/json
{
  • "lastCreatedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "lastDocID": "some-doc-id",
  • "passDeliveryTemplates": [
    ]
}

UpdatePassDeliveryTemplate

This API can be used to update an Organisation's Pass Delivery Template in the Cloud DB.

Request Body schema: application/json
required

model.PassDeliveryTemplateRequest

body
required
string

Body value for populating in Pass Delivery message at distribution time. Please note that this string can be separated into numerous lines using the HTML line break characters, EG <br/><br/>.

footer
required
string

Footer value for populating in Pass Delivery message at distribution time. Please note that this string can be separated into numerous lines using the HTML line break characters, EG <br/><br/>.

imageURL
required
string

Public URL pointing to image to be used when sending Pass Delivery message at distribution time.

preheader
string

Preheader value for populating in Pass Delivery message at distribution time.

subject
required
string

Subject value for populating in Pass Delivery message at distribution time.

title
required
string

Title for the Pass Delivery Template.

type
required
string

Delivery Type of the Pass Delivery Template. EG SMS, Email, etc.

Responses

Request samples

Content type
application/json
{
  • "body": "Your new digital pass is available for download. To download the pass to your smartphone digital wallet, please use the pass download link provided below from your intended Smartphone device:",
  • "footer": "The download link will only be valid for one installation. Best regards",
  • "preheader": "Some Header Text",
  • "subject": "Some Subject",
  • "title": "Test-Email",
  • "type": "Email"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

VerifyDeliveryTemplateAvailable

This API will attempt to verify if a provided Title is available for creating a new Pass Delivery Template within the Cloud DB. Endpoint returns HTTP Status Code 200 (OK) when title is available for use.

Request Body schema: application/json
required

model.VerifyTemplateTitleRequest

deliveryTitle
required
string

Requested title for a new Pass Delivery Template

Responses

Request samples

Content type
application/json
{
  • "deliveryTitle": "SomePassDeliveryTemplateTitle"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

passDesigns

GetOrganisationPassDesignByTitle

This API can be used to fetch an Organisation's Pass Design By Title from the Cloud DB.

Request Body schema: application/json
required

model.GetPassDesignByTitleRequest

title
required
string

The title of the pass design to fetch

Responses

Request samples

Content type
application/json
{
  • "title": "Gift-Card"
}

Response samples

Content type
application/json
{
  • "apple": {
    },
  • "appleRedemptions": 1,
  • "auxiliaryFields": {
    },
  • "backFields": {
    },
  • "backgroundColor": {
    },
  • "barcodeType": "Barcode128",
  • "boardingClassDefaultFields": {
    },
  • "countryCode": "en-gb",
  • "downloadBackground": "url.com",
  • "downloadLogo": "some.png",
  • "downloadMessage": "Add your Gift Card",
  • "dynamicFieldKeys": [
    ],
  • "eventClassDefaultFields": {
    },
  • "giftCardDefaultFields": {
    },
  • "google": {
    },
  • "googleRedemptions": 1,
  • "isNFCEnabled": false,
  • "issuingOrganisation": "Cafe",
  • "lastDistributionDate": "2024-07-22T11:27:37.48090",
  • "locations": [
    ],
  • "loyaltyCardDefaultFields": {
    },
  • "metaData": {
    },
  • "offerCardClassDefaultFields": {
    },
  • "pass": {
    },
  • "passBrandingLogo": {
    },
  • "passDesignDefaultFields": {
    },
  • "passIcon": {
    },
  • "passImage": {
    },
  • "primaryFields": {
    },
  • "secondaryFields": {
    },
  • "serialPrefix": "9938",
  • "title": "testDesign",
  • "totalDistributionCount": 2,
  • "transitClassDefaultFields": {
    }
}

GetPaginatedPassDesigns

This API can be used to fetch a paginated list of Pass Designs from the Cloud DB.

Request Body schema: application/json
required

model.GetPaginatedPassDesignRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request. EG 10

lastDocID
string

lastDocID is the unique ID related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

lastModifiedTimestamp
string

lastModifiedTimestamp is the timestamp related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "newtestpass",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z"
}

Response samples

Content type
application/json
{
  • "lastDocID": "tester",
  • "lastModifiedTimestamp": "2024-03-28T17:48:03.733664Z",
  • "passDesignDocs": [
    ]
}

GetSerialNumberByPrefix

This API can be used to fetch an Organisation's Serial Number record by Prefix from the Cloud DB.

Request Body schema: application/json
required

model.GetBySerialPrefixRequest

serialPrefix
required
string

The prefix of the serial number sequence for which we want to fetch.

Responses

Request samples

Content type
application/json
{
  • "serialPrefix": "9938"
}

Response samples

Content type
application/json
{
  • "cardNumberLength": 8,
  • "created": "2024-06-25T13:46:12.323918Z",
  • "creator": "john.smith@breezin.io",
  • "initialCardNumber": "0",
  • "lastModified": "2024-06-25T13:46:12.323918Z",
  • "latestCardNumber": 1234,
  • "maximumCardNumber": 99999999,
  • "modifier": "john.smith@breezin.io",
  • "prefix": "9938",
  • "prefixLength": 4,
  • "prefixNumber": 9938,
  • "reservedRanges": [
    ]
}

VerifyPassDesignTitleExists

This API will attempt to verify if a provided Title is available for creating a new Pass Design within the Cloud DB. Endpoint returns HTTP Status Code 200 (OK) when title is available for use.

Request Body schema: application/json
required

model.VerifyPassDesignTitleExistsInput

passDesignTitle
required
string

Title of the Pass Design to query DB to verify if it already exists.

Responses

Request samples

Content type
application/json
{
  • "passDesignTitle": "Gift-Card"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

passes

ExternalPassDownload

This API can be used to control the Pass Download flow from an external application (EG end-user does not get redirected to the Breezin public pass download page). Please note that this will require that the external application uses the specific Add To Wallet buttons for Apple Wallet / Google Wallet. After creating a Distribution request, please provide the passApiKey to this endpoint. Upon success, this endpoint will return a URL which will allow the end-user to download their pass. The external application should redirect the user to the returned URL automatically.

Request Body schema: application/json
required

model.ExternalPassDownloadRequest

deviceOS
required
string

The device operating system, possible values are: Apple or Google.

encryptedDetails
required
string

The encrypted pass details.

Responses

Request samples

Content type
application/json
{
  • "deviceOS": "Apple",
  • "encryptedDetails": "Some Encrypted Pass Details"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

ForgetUserDetailsForPass

This API will attempt to update a pass record to remove the end-users personal details from the cloud DB (GDPR - Right to be forgotten). Please note that this endpoint will expire the pass record (if not already expired), before removing the end-users personal details within 3 days of the request being received.

Request Body schema: application/json
required

model.ForgetUserDetailsForPassRequest

serialNumber
required
string

Unique serial number of pass record for user details to be forgotten. Please note that their pass will be expired before removing user personal details from platform. Personal details will be removed within 3 days of request being received.

Responses

Request samples

Content type
application/json
{
  • "serialNumber": "000100000001"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

GetPassesByExternalRefID

This API can be used to fetch a list of Pass records which are assigned a provided ExternalReferenceID value within the Cloud DB.

Request Body schema: application/json
required

model.GetPassesByExternalRefIDRequest

externalReferenceID
required
string

Unique Reference ID for the end-user in external customer system. This will require the externalReferenceID value to be set at Pass Distribution.

Responses

Request samples

Content type
application/json
{
  • "externalReferenceID": "Some Customer ID"
}

Response samples

Content type
application/json
[
  • {
    }
]

UpdatePassPayload

This API can be used to update the payload received by a card reader when a pass is scanned. This works for both NFC and barcodes. Provide a payload to override the given value. Please note that the value has a limit of 64 characters and must only contain ASCII.

Request Body schema: application/json
required

model.UpdatePassPayloadRequest

payload
required
string

Value to be updated on an active pass for scanning the pass via NFC / Barcodes. This value has a 64 byte limit and must contain only ASCII characters.

serialNumber
required
string

Unique Serial Number ID of the active pass to be updated with a new payload value.

Responses

Request samples

Content type
application/json
{
  • "payload": "101010101",
  • "serialNumber": "000100000001"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

UpdatePassUserDetails

This API can be used to update Pass User details in the Cloud DB.

Request Body schema: application/json
required

model.UpdatePassUserDetails

beacons
Array of strings

List of titles of BLE beacons to be associated with a specific pass record. Please provide all titles which should be associated with the pass in an update request (when you intend to update pass beacons). Beacons are not support by Google Wallet at this time, and there is a maximum limit of 10 beacons per pass record. This value can be omitted from the request if you do not want to update these pass fields. An empty array can be provided if you intend to clear all of the beacons associated with the pass record.

object

Dynamic field data to be updated

locations
Array of strings

List of titles of Geolocations to be associated with a specific pass record. Please provide all titles which should be associated with the pass in an update request (when you intend to update pass locations). Geolocations are not support by Google Wallet at this time, and there is a maximum limit of 10 locations per pass record. This value can be omitted from the request if you do not want to update these pass fields. An empty array can be provided if you intend to clear all of the locations associated with the pass record.

serialNumber
required
string

Serial number of the pass to be updated

Responses

Request samples

Content type
application/json
{
  • "beacons": [
    ],
  • "dynamicFieldData": {
    },
  • "locations": [
    ],
  • "serialNumber": "123400000001"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

reporting

GenerateAuditLogReport

This API can be used to generate Audit Log report.

Request Body schema: application/json
required

model.GenerateAuditLogReportRequest

categoryFilter
string

Filter option for specifying the report to be filtered to a specific category of audit events. Please omit this value from the request, or set to empty string ('') if this filter is not required. Available values: 'Beacons', 'Billing', 'Distributions'. 'Invalidations', 'Geolocations', 'Login', 'Organisation', 'Pass Designs', 'Passes', 'Reporting', 'Serial Numbers', 'Signing', or 'Users'.

emailAddressFilter
string

Filter option for specifying the report to be filtered to a specific system user's email address. Please omit this value from the request, or set to empty string ('') if this filter is not required.

emailAddresses
required
Array of strings

List of email addresses to receive the report download link via email once report generation complete. This can be set to an empty array if not required to receive email results.

endTime
required
string

Timestamp to control the end point of report generation for Audit Log records. Please note there is a 7 day maximum limit on Audit Log report generation.

startTime
required
string

Timestamp to control initial start point of report generation for Audit Log records. Please note there is a 7 day maximum limit on Audit Log report generation.

Responses

Request samples

Content type
application/json
{
  • "categoryFilter": "Distributions",
  • "emailAddressFilter": "someone@email.com",
  • "emailAddresses": [
    ],
  • "endTime": "2024-10-13T00:00:00.000000Z",
  • "startTime": "2024-10-10T00:00:00.000000Z"
}

Response samples

Content type
application/json
{
  • "message": "Audit Log reporting request has been uploaded successfully. We will notify you by email once it has been processed.",
  • "reportID": "REPORT_ID"
}

GetPaginatedReportingRequests

This API can be used to fetch paginated reporting requests.

Request Body schema: application/json
required

model.GetPaginatedReportingRequestsRequest

batchSize
required
integer

Batch size for controlling the number of items which will be returned in the pagination request. EG 10

endTime
required
string

End Time timestamp for filtering DB records for report. This value will be compared against the LastModified timestamp of the reporting request records and the query will return any records modified after this point in time. Please note that there is a maximum of limit of 3 months between start and end time values for reporting.

lastDocID
string

lastDocID is the unique ID related to the final item of the previous pagination batch. For the first batch of pagination, please skip providing this value. For following requests, use the value returned from the previous pagination request.

lastModifiedTimestamp
string

Last Modified Timestamp value for ordering pagination batches. Please provide this value in requests for subsequent batches to ensure ordering of pagination results is correct.

reportType
string

The type of the Reporting Request. You can omit this value, set to to empty string, or set to all if filter is not required. Supported reporting values: PassReport, AuditLogReport.

startTime
required
string

Start Time timestamp for filtering DB records for report. This value will be compared against the LastModified timestamp of the reporting request records and the query will return any records modified after this point in time. Please note that there is a maximum of limit of 3 months between start and end time values for reporting.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 25,
  • "endTime": "2024-03-13T07:42:42.472468Z",
  • "lastDocID": "Last Doc ID",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "reportType": "PassReport",
  • "startTime": "2024-03-13T07:42:42.472468Z"
}

Response samples

Content type
application/json
{
  • "lastDocID": "Last Doc ID",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "reportingRequestList": [
    ]
}

GetPassDesignMonthlyReport

This API can be used to get Pass design monthly report from the Cloud DB.

Request Body schema: application/json
required

model.GetPassDesignMonthlyReportRequest

passDesignTitle
required
string

Title of the Pass Design included in the report.

reportFields
required
Array of strings

The fields we wish to return within the CSV report.
Example: ["Serial Number", "Device OS"]

reportingPeriod
required
string

Reporting Period represents the month and year period for the data included in the report.

Responses

Request samples

Content type
application/json
{
  • "passDesignTitle": "Gift-Card",
  • "reportFields": [
    ],
  • "reportingPeriod": "April 2025"
}

Response samples

Content type
application/json
[
  • {
    }
]

GetReportingRequestByReportID

This API can be used to get the Reporting Request by specified Report ID.

Request Body schema: application/json
required

model.GetReportingRequestByReportIDRequest

reportID
required
string

The unique ID of the Reporting Request.

Responses

Request samples

Content type
application/json
{
  • "reportID": "ab12cd34ef56"
}

Response samples

Content type
application/json
{
  • "created": "2024-03-13T07:42:42.472468Z",
  • "downloadURL": "https://downloadURL.com",
  • "lastModified": "2024-03-13T07:42:42.472468Z",
  • "reportType": "PassReport",
  • "requester": "john.smith@breezin.io",
  • "status": "in-progress"
}

GetUsageReporting

This API can be used to get usage reporting from the Cloud DB.

Request Body schema: application/json
required

model.ReportingPeriod

reportingPeriod
required
string

The reporting period to be requested

Responses

Request samples

Content type
application/json
{
  • "reportingPeriod": "April 2025"
}

Response samples

Content type
application/json
[
  • {
    }
]