Breezin Pass Management UAT 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

ActivateBeacon

This API can be used to update an Organisation's Beacon to mark it as Active in the Cloud DB.

Request Body schema: application/json
required

model.ActivateBeaconRequest

title
required
string

Title of the Beacon to mark as Active.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

ArchiveBeacon

This API can be used to update an Organisation's Beacon to mark it as Archived in the Cloud DB.

Request Body schema: application/json
required

model.ArchiveBeaconRequest

title
required
string

Title of the Beacon to mark as Archived.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

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.

status
required
string

Status of the Beacon to save to the Cloud DB. Available options are: 'Draft', 'Active' or 'Archived'.

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",
  • "status": "Active",
  • "title": "Some Beacon Title"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

FetchActiveBeaconList

This API will attempt to fetch active Beacon title lists. Endpoint returns HTTP Status Code 200 (OK) when sucessfully fetchs.

Request Body schema: application/json
required

model.FetchActiveBeaconListRequest

object (model.FetchActiveBeaconListRequest)

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "beaconList": [
    ]
}

FetchBeaconByTitle

This API will attempt to retrieve an Organisation's Beacon from the Cloud DB by Beacon title.

Request Body schema: application/json
required

model.FetchBeaconByTitleRequest

title
string

Title of an Organisation's beacon record to search for within the Cloud DB.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "created": "2024-03-13T07:42:42.472468Z",
  • "creator": "john.smith@breezin.io",
  • "lastModified": "2024-03-13T07:42:42.472468Z",
  • "major": 10,
  • "messageText": "Some iBeacon messaging for pass notification",
  • "minor": 10,
  • "modifier": "john.smith@breezin.io",
  • "proximityUUID": "12341234-1234-1234-1234-123412341234",
  • "status": "Active",
  • "title": "Some Beacon Title"
}

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. Please note there is a maximum limit of 25 for batch size.

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.

lastTitle
string

lastTitle is the unique Title 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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first', 'oldest-first', 'name-ascending', or 'name-descending'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return Beacons with a specified status value. Available status filter options: 'Draft', 'Active' or 'Archived'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "apple-beacon-5",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z",
  • "lastTitle": "some-title",
  • "sortFilter": "newest-first",
  • "statusFilter": "Active"
}

Response samples

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

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.

status
required
string

Status of the Beacon to save to the Cloud DB. Available options are: 'Draft', 'Active' or 'Archived'.

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",
  • "status": "Active",
  • "title": "Some Beacon Title"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

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": "Relevant Message for the request"
}

billing

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": "Relevant Message for the request"
}

brandingColors

CreateBrandingColor

This API can be used to create a new Branding Color.

Request Body schema: application/json
required

model.CreateBrandingColorRequest

colorHexCode
required
string

The Hex value of the Branding Color.

title
required
string

The title of the Branding Color to create in the Cloud DB for an organisation.

Responses

Request samples

Content type
application/json
{
  • "colorHexCode": "#000000",
  • "title": "some-title"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

DeleteBrandingColor

This API can be used to delete an existing Branding Color.

Request Body schema: application/json
required

model.DeleteBrandingColorRequest

title
required
string

The title of the Branding Color record to be removed from the Cloud DB.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

FetchBrandingColorByTitle

This API can be used to fetch a Branding Color by title.

Request Body schema: application/json
required

model.FetchBrandingColorByTitleRequest

title
required
string

Title of the Branding Color record to fetch from the Cloud DB.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "colorHexCode": "#000000",
  • "created": "2024-03-13T07:42:42.472468Z",
  • "creator": "john.smith@breezin.io",
  • "lastModified": "2024-03-13T07:42:42.472468Z",
  • "modifier": "john.smith@breezin.io",
  • "title": "Blue",
  • "titleLowercase": "blue"
}

FetchPaginatedBrandingColors

This API can be used to fetch a paginated list of Branding Colors.

Request Body schema: application/json
required

model.FetchPaginatedBrandingColorsRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request, EG 10. Please note there is a maximum limit of 25 for batch size.

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.

lastTitle
string

lastTitle is the unique Title 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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first', 'oldest-first', 'name-ascending', or 'name-descending'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "some-doc-id",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z",
  • "lastTitle": "some-title",
  • "sortFilter": "newest-first"
}

Response samples

Content type
application/json
{
  • "brandingColors": [
    ],
  • "lastDocID": "some-doc-id",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z",
  • "lastTitle": "some-title",
  • "totalNumberOfRecords": 120
}

UpdateBrandingColor

This API can be used to update an existing Branding Color.

Request Body schema: application/json
required

model.UpdateBrandingColorRequest

newColorHexCode
string

Optional field to update the Hex Code of an Organisation's branding color.

newTitle
string

Optional field to update the title of an existing branding color.

title
required
string

The existing title of the Branding Color record to be updated.

Responses

Request samples

Content type
application/json
{
  • "newColorHexCode": "#000000",
  • "newTitle": "some new title",
  • "title": "some-title"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

customerSupportDetails

ActivateCustomerSupportDetail

This API can be used to activate an archived Customer Support Detail.

Request Body schema: application/json
required

model.ActivateCustomerSupportDetailRequest

title
required
string

The title of the Customer Support Detail to be activated in the Cloud DB.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

ArchiveCustomerSupportDetail

This API can be used to archive an active Customer Support Detail.

Request Body schema: application/json
required

model.ArchiveCustomerSupportDetailRequest

title
required
string

The title of the Customer Support Detail to be archived in the Cloud DB.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

CreateCustomerSupportDetail

This API can be used to create a Customer Support Detail.

Request Body schema: application/json
required

model.CreateCustomerSupportDetail

title
required
string

The title of the Customer Support Detail to create in the Cloud DB for an organisation.

type
required
string

The type of Customer Support Detail to create: Can be Email Address, Phone Number, Whatsapp or Web Link

value
required
string

The value of the Customer Support Detail to be created.

Responses

Request samples

Content type
application/json
{
  • "title": "some title",
  • "type": "Email Address",
  • "value": "some value"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

FetchPaginatedCustomerSupportDetails

This API can be used to fetch a paginated list of Organisation Customer Support Details.

Request Body schema: application/json
required

model.FetchPaginatedCustomerSupportDetailsRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request, EG 10. Please note there is a maximum limit of 25 for batch size.

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.

lastTitle
string

lastTitle is the unique Title 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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first', 'oldest-first', 'name-ascending', or 'name-descending'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return Customer Support Details with a specified status value. Available status filter options: 'Active' or 'Archived'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

typeFilter
string

Optional filter option to limit the pagination results to return a specified type of Customer Support Detail. Available type filter options: 'Email Address', 'Phone Number', 'Whatsapp' or 'Web Link'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "some-doc-id",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z",
  • "lastTitle": "some-last-title",
  • "sortFilter": "newest-first",
  • "statusFilter": "Active",
  • "typeFilter": "Email Address"
}

Response samples

Content type
application/json
{
  • "customerSupportDetailList": [
    ],
  • "lastDocID": "some-doc-id",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z",
  • "lastTitle": "some-last-title",
  • "totalNumberOfRecords": 120
}

GetCustomerSupportDetailByTitle

This API can be used to fetch a Customer Support Detail by title.

Request Body schema: application/json
required

model.GetCustomerSupportDetailByTitleRequest

title
required
string

The title of the Customer Support Detail to fetch from the Cloud DB.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "created": "2024-03-13T07:42:42.472468Z",
  • "creator": "john.smith@breezin.io",
  • "lastModified": "2024-03-13T07:42:42.472468Z",
  • "modifier": "john.smith@breezin.io",
  • "status": "Active",
  • "title": "some title",
  • "titleLowercase": "some title",
  • "type": "Email Address",
  • "value": "some value"
}

UpdateCustomerSupportDetail

This API can be used to update an existing Customer Support Detail.

Request Body schema: application/json
required

model.UpdateCustomerSupportDetail

title
required
string

The title of the Customer Support Detail to update in the Cloud DB for an organisation.

type
string

Optional type of Customer Support Detail to update: Can be Email Address, Phone Number, Whatsapp or Web Link

value
string

Optional value of the Customer Support Detail to be updated.

Responses

Request samples

Content type
application/json
{
  • "title": "some title",
  • "type": "Email Address",
  • "value": "some value"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

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": "Relevant Message for the request"
}

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": "Relevant Message for the request"
}

FetchDistributionDocByID

This API can be used to fetch a distribution document by ID from the Cloud DB.

Request Body schema: application/json
required

model.FetchDistributionDocByIdRequest

distributionID
required
string

Responses

Request samples

Content type
application/json
{
  • "distributionID": "Some Distribution ID"
}

Response samples

Content type
application/json
{
  • "appleRedemptions": 0,
  • "batchCount": 1,
  • "created": "2024-06-24T15:39:20.581734Z",
  • "docID": "SomeUnqiueDocID",
  • "failureCount": 0,
  • "googleRedemptions": 0,
  • "isBatchRequest": false,
  • "jobIssuer": "cafe-api",
  • "passDesignTitle": "SomePassDesign",
  • "passType": "LongTerm",
  • "pricePerPass": 50,
  • "projectedCost": 50,
  • "status": "Complete",
  • "successCount": 1,
}

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. Please note there is a maximum limit of 25 for batch size.

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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first' or 'oldest-first'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return Distribution requests with a specified status value. Available status filter options: 'In Progress' or 'Complete'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

typeFilter
string

Optional filter option to limit the pagination results to return Distribution requests with a specified type value. Available status filter options: 'Manual' or 'Batch'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

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

Response samples

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

dynamicKeys

ArchiveDynamicKey

This API can be used to mark a Dynamic Key record as Archived within the Cloud DB. Please note that once a Dynamic Key is marked as archived then it will no longer be able to be assigned to any Pass Designs unless it is re-activated.

Request Body schema: application/json
required

model.ArchiveDynamicKeyRequest

title
required
string

The title of the Dynamic Key to mark as archived in the Cloud DB.

Responses

Request samples

Content type
application/json
{
  • "title": "some-key"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

CreateDynamicKey

This API can be used to create a new Dynamic Key record within the Cloud DB for an Organisation.

Request Body schema: application/json
required

model.CreateDynamicKeyRequest

description
required
string

A human-readable description for the Dynamic Key value to record the intended usage of the Dynamic Key record.

title
required
string

The title of the Dynamic Key to create in the Cloud DB for an organisation.

Responses

Request samples

Content type
application/json
{
  • "description": "Some description of the usage for the Dynamic Key value.",
  • "title": "some-key"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

FetchActiveDynamicKeyList

This API can be used to fetch a list of Active Dynamic Keys for an Organisation.

Request Body schema: application/json
required

model.FetchActiveDynamicKeyListRequest

object (model.FetchActiveDynamicKeyListRequest)

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "dynamicKeyList": [
    ]
}

FetchDynamicKeyByTitle

This API can be used to retrieve a Dynamic Key record from the Cloud DB which matches on the provided title field.

Request Body schema: application/json
required

model.FetchDynamicKeyByTitleRequest

title
required
string

The title of the Dynamic Key to search for in the Cloud DB.

Responses

Request samples

Content type
application/json
{
  • "title": "some-key"
}

Response samples

Content type
application/json
{
  • "created": "2024-10-13T00:00:00.000000Z",
  • "creator": "string",
  • "description": "Some description of the usage for the Dynamic Key value.",
  • "lastModified": "2024-10-13T00:00:00.000000Z",
  • "modifier": "string",
  • "status": "active",
  • "title": "some-key"
}

FetchPaginatedDynamicKeys

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

Request Body schema: application/json
required

model.FetchPaginatedDynamicKeysRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request, EG 10. Please note there is a maximum limit of 25 for batch size.

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

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.

lastTitle
string

lastTitle is the unique Title 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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first', 'oldest-first', 'name-ascending', or 'name-descending'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optionl filter option to limit the pagination results to return Dynamic Keys with a specified status value. Available status filter options: 'active' or 'archived'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "some-doc-id",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "lastTitle": "some-key",
  • "sortFilter": "name-ascending",
  • "statusFilter": "active"
}

Response samples

Content type
application/json
{
  • "dynamicKeys": [
    ],
  • "lastDocID": "some-doc-id",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "lastTitle": "some-key",
  • "totalNumberOfRecords": 99
}

ReactivateDynamicKey

This API can be used to re-active an archived Dynamic Key in the Cloud DB.

Request Body schema: application/json
required

model.ReactivateDynamicKeyRequest

title
required
string

The title of the Dynamic Key to mark as active in the Cloud DB.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

UpdateDynamicKey

This API can be used to create a new Dynamic Key record within the Cloud DB for an Organisation.

Request Body schema: application/json
required

model.UpdateDynamicKeyRequest

description
required
string

An updated human-readable description for the Dynamic Key value to record the intended usage of the Dynamic Key record.

title
required
string

The title of the Dynamic Key to update in the Cloud DB for an organisation.

Responses

Request samples

Content type
application/json
{
  • "description": "Some description of the usage for the Dynamic Key value.",
  • "title": "some-key"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

VerifyDynamicKeyTitleAvailable

This API can be used to verify a title for a new Dynamic Key record already exists within the Cloud DB for an Organisation.

Request Body schema: application/json
required

model.VerifyDynamicKeyTitleAvailableRequest

title
required
string

The title of a new Dynamic Key to verify if the title already exists or not.

Responses

Request samples

Content type
application/json
{
  • "title": "some-key"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

invalidation

FetchInvalidationDocByID

This API can be used to fetch a specific invalidation request by ID.

Request Body schema: application/json
required

model.FetchInvalidationDocByIdRequest

invalidationID
required
string

Responses

Request samples

Content type
application/json
{
  • "invalidationID": "some invalidation doc ID"
}

Response samples

Content type
application/json
{}

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. Please note there is a maximum limit of 25 for batch size.

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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first' or 'oldest-first'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return Invalidation requests with a specified status value. Available status filter options: 'In Progress' or 'Complete'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

typeFilter
string

Optional filter option to limit the pagination results to return Invalidation requests with a specified type value. Available status filter options: 'Manual' or 'Batch'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "invalidationDocs": [],
  • "lastCreated": "2023-09-08T10:53:27.204Z",
  • "lastDocID": "zgU52kkepocuCRyTXOK0",
  • "totalNumberOfRecords": 120
}

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": "Relevant Message for the request"
}

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": "Relevant Message for the request"
}

location

ActivateLocation

This API can be used to update an Organisation's Location to mark it as Active in the Cloud DB.

Request Body schema: application/json
required

model.ActivateLocationRequest

title
required
string

Title of the Location to mark as Active.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

ArchiveLocation

This API can be used to update an Organisation's Location to mark it as Archived in the Cloud DB.

Request Body schema: application/json
required

model.ArchiveLocationRequest

title
required
string

Title of the Location to mark as Archived.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

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.

status
required
string

Status of the Location to save to the Cloud DB. Available options are: 'Draft', 'Active' or 'Archived'.

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",
  • "status": "Active",
  • "title": "location"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

FetchActiveLocationList

This API will attempt to fetch active Location title lists.

Request Body schema: application/json
required

model.FetchActiveLocationListRequest

object (model.FetchActiveLocationListRequest)

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "locationList": [
    ]
}

FetchLocationByTitle

This API will attempt to retrieve an Organisation's Geolocation from the Cloud DB by Geolocation title.

Request Body schema: application/json
required

model.FetchLocationByTitleRequest

title
string

Title of an Organisation's geo-location record to search for within the Cloud DB.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "altitude": 10,
  • "created": "2024-03-13T07:42:42.472468Z",
  • "creator": "john.smith@breezin.io",
  • "lastModified": "2024-03-13T07:42:42.472468Z",
  • "latitude": 10,
  • "longitude": 10,
  • "messageText": "Welcome",
  • "modifier": "john.smith@breezin.io",
  • "status": "Active",
  • "title": "location"
}

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. Please note there is a maximum limit of 25 for batch size.

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.

lastTitle
string

lastTitle is the unique Title 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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first', 'oldest-first', 'name-ascending', or 'name-descending'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return Locations with a specified status value. Available status filter options: 'Draft', 'Active' or 'Archived'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "TESTLOCATION",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z",
  • "lastTitle": "string",
  • "sortFilter": "newest-first",
  • "statusFilter": "all"
}

Response samples

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

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.

status
required
string

Status of the Location to save to the Cloud DB. Available options are: 'Draft', 'Active' or 'Archived'.

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",
  • "status": "Active",
  • "title": "location"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

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": "Relevant Message for the request"
}

passDelivery

ActivatePassDeliveryTemplate

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

Request Body schema: application/json
required

model.ActivatePassDeliveryTemplateRequest

title
required
string

Title of the Pass Delivery Template to mark as Active.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

ArchivePassDeliveryTemplate

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

Request Body schema: application/json
required

model.ArchivePassDeliveryTemplateRequest

title
required
string

Title of the Pass Delivery Template to mark as Archived.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

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.

status
required
string

Status of the Pass Delivery Template to save to the Cloud DB. Available options are: 'Draft', 'Active' or 'Archived'.

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",
  • "status": "Active",
  • "subject": "Some Subject",
  • "title": "Test-Email",
  • "type": "Email"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

FetchActivePassDeliveryList

This API can be used to fetch a list of active Pass Delivery Templates for an Organisation.

Request Body schema: application/json
required

model.FetchActivePassDeliveryListRequest

object (model.FetchActivePassDeliveryListRequest)

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "emailList": [
    ],
  • "smsList": [
    ]
}

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, EG: 10. Please note there is a maximum limit of 25 for batch size.

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.

lastModifiedTimestamp
string

The Modified 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.

lastTitle
string

lastTitle is the unique Title 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.

passTemplateType
required
string

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

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first', 'oldest-first', 'name-ascending', or 'name-descending'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return Pass Delivery Templates with a specified status value. Available status filter options: 'Draft', 'Active' or 'Archived'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

Content type
application/json
{
  • "batchCount": 10,
  • "lastDocID": "string",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "lastTitle": "some-title",
  • "passTemplateType": "Email",
  • "sortFilter": "string",
  • "statusFilter": "string"
}

Response samples

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

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.

status
required
string

Status of the Pass Delivery Template to save to the Cloud DB. Available options are: 'Draft', 'Active' or 'Archived'.

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",
  • "status": "Active",
  • "subject": "Some Subject",
  • "title": "Test-Email",
  • "type": "Email"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

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": "Relevant Message for the request"
}

passDesigns

ActivatePassDesign

This API can be used to update an Organisation's Pass Design record to mark it as Active.

Request Body schema: application/json
required

model.ActivatePassDesignRequest

title
required
string

The title of the Pass Design record to be Activated.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

ArchivePassDesign

This API can be used to update an Organisation's Pass Design record to mark it as Archived.

Request Body schema: application/json
required

model.ArchivePassDesignRequest

title
required
string

The title of the Pass Design record to be archived.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

FetchPaginatedPassDesignsForDynamicKey

This API can be used to fetch a paginated list of PassDesign details where the pass design contains a specific Dynamic Key value.

Request Body schema: application/json
required

model.FetchPaginatedPassDesignsForDynamicKeyRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request, EG 10. Please note there is a maximum limit of 25 for batch size.

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

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.

title
required
string

Title of the Dynamic Key to query Cloud DB for retrieving matching Pass Design Summary records.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "some-doc-id",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "title": "some-key"
}

Response samples

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

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": 10,
  • "auxiliaryFields": {
    },
  • "backFields": {
    },
  • "backgroundColor": {
    },
  • "barcodeType": "Barcode128",
  • "boardingClassDefaultFields": {
    },
  • "countryCode": "en-gb",
  • "customerSupportDetailList": [
    ],
  • "customerSupportMessage": "Some Customer Support Message",
  • "downloadBackground": "url.com",
  • "downloadLogo": "some.png",
  • "downloadMessage": "Add your Gift Card",
  • "dynamicFieldKeys": [
    ],
  • "eventClassDefaultFields": {
    },
  • "giftCardDefaultFields": {
    },
  • "google": {
    },
  • "googleRedemptions": 10,
  • "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": 22,
  • "totalInvalidationCount": 12,
  • "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. Please note there is a maximum limit of 25 for batch size.

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.

serialFilter
string

Optional filter option to limit the pagination results to return Pass Designs which are assigned a specific Serial Number Prefix value, EG: '0001'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first', 'oldest-first', 'name-ascending', or 'name-descending'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return Pass Designs with a specified status value. Available status filter options: 'active', 'draft', or 'archived'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

typeFilter
string

Optional filter option to limit the pagination results to return Pass Designs with a specified type value. Available type filter options: 'Generic', 'Loyalty', or 'Event'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

usageFilter
string

Optional filter option to limit the pagination results to return Pass Designs with a specified UsageLimit value. Available type filter options: 'LongTerm', 'ShortTerm', or 'X_Use'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "some-doc-id",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "serialFilter": "all",
  • "sortFilter": "newest-first",
  • "statusFilter": "all",
  • "typeFilter": "all",
  • "usageFilter": "all"
}

Response samples

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

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": "Relevant Message for the request"
}

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": "Relevant Message for the request"
}

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": "Relevant Message for the request"
}

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": "Relevant Message for the request"
}

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, set to empty string ('') or set to 'all' if this filter is not required. Available values: 'Beacons', 'Billing', 'Distributions', 'Dynamic Keys', '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 email address. Please omit this value from the request, set to empty string ('') or set to 'all' if this filter is not required.

emailAddresses
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
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.

reportFields
Array of strings

The fields we wish to return within the CSV report. Omitting this value from the request will result in all fields being included in the final report CSV. Available values: 'Timestamp', 'Email Address', 'Category', 'Event', and 'Identifier'.

startTime
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": "Users",
  • "emailAddressFilter": "someone@email.com",
  • "emailAddresses": [
    ],
  • "endTime": "2024-03-13T07:42:42.472468Z",
  • "reportFields": [
    ],
  • "startTime": "2024-03-13T07:42:42.472468Z"
}

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"
}

GeneratePassDeliveryReport

This API can be used to generate Pass Delivery report.

Request Body schema: application/json
required

model.GeneratePassDeliveryReportRequest

deliveryTypeFilter
string

Filter option for specifying the report to be filtered to a specific delivery type for Pass Delivery reporting records. Please omit this value from the request, set to empty string ('') or set to 'all' if this filter is not required. Available values are: 'Email', 'SMS UK' or 'SMS World'.

emailAddresses
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
string

Timestamp to control the end point of report generation for Pass Delivery records. Please note there is a 30 day maximum limit on Pass Delivery report generation.

reportFields
Array of strings

The fields we wish to return within the CSV report. Omitting this value from the request will result in all fields being included in the final report CSV. Available values: 'Created', 'Last Modified', 'Delivery Type', 'Delivery Address', 'Delivery Salutation', 'Delivery Name', 'Delivery Template', 'Status', and 'Distribution ID'.

startTime
string

Timestamp to control initial start point of report generation for Pass Delivery records. Please note there is a 30 day maximum limit on Pass Delivery report generation.

statusFilter
string

Filter option for specifying the report to be filtered to a specific status of Pass Delivery reporting records. Please omit this value from the request, set to empty string ('') or set to 'all' if this filter is not required. Available values: 'Processing', 'Sent', 'Delivered', or 'Failed'.

Responses

Request samples

Content type
application/json
{
  • "deliveryTypeFilter": "Email",
  • "emailAddresses": [
    ],
  • "endTime": "2024-03-13T07:42:42.472468Z",
  • "reportFields": [
    ],
  • "startTime": "2024-03-13T07:42:42.472468Z",
  • "statusFilter": "Processing"
}

Response samples

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

GeneratePassReport

This API can be used to generate a Pass Report.

Request Body schema: application/json
required

model.PassReportRequest

endTime
required
string

Timestamp to control the end point of report generation for pass records.

passDesignFilter
string

Filter option to limit the output of the report to a specific Pass Design. Please omit this value from the request, set to an empty string (''), or set to 'all' to include report data on all Passes.

reportFields
Array of strings

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

startTime
required
string

Timestamp to control initial start point of report generation for pass records.

Responses

Request samples

Content type
application/json
{
  • "endTime": "2024-03-13T07:42:42.472468Z",
  • "passDesignFilter": "all",
  • "reportFields": [
    ],
  • "startTime": "2024-03-13T07:42:42.472468Z"
}

Response samples

Content type
application/json
{
  • "message": "Pass 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. Please note there is a maximum limit of 25 for batch size.

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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first' or 'oldest-first'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return records with a specified status value. Available status filter options: 'in-progress' or 'complete'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 25,
  • "lastDocID": "some-doc-id",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "reportType": "PassReport",
  • "sortFilter": "newest-first",
  • "statusFilter": "all"
}

Response samples

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

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
[
  • {
    }
]

serialNumber

GetPaginatedSerialNumbers

This API can be used to fetch a paginated list of Serial Number records from the Cloud DB.

Request Body schema: application/json
required

model.GetPaginatedSerialNumbersRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request, EG 10. Please note there is a maximum limit of 25 for batch size.

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

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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first' or 'oldest-first'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return Serial Numbers with a specified status value. Available status filter options: 'Assigned' or 'Not Assigned'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "some-doc-id",
  • "lastModifiedTimestamp": "2024-03-13T07:42:42.472468Z",
  • "sortFilter": "newest-first",
  • "statusFilter": "all"
}

Response samples

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

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",
  • "isAssigned": true,
  • "lastModified": "2024-06-25T13:46:12.323918Z",
  • "latestCardNumber": 1234,
  • "maximumCardNumber": 99999999,
  • "modifier": "john.smith@breezin.io",
  • "prefix": "9938",
  • "prefixLength": 4,
  • "prefixNumber": 9938,
  • "reservedRanges": [
    ]
}

GetSerialNumberPrefixList

This API can be used to fetch a list of Serial Number Prefix records from the Cloud DB for an Organisation.

Request Body schema: application/json
required

model.GetSerialNumberPrefixListRequest

object (model.GetSerialNumberPrefixListRequest)

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "serialNumberPrefixList": [
    ]
}

users

ActivateOrgUser

This API can be used to update an Organisation User account to mark as Active.

Request Body schema: application/json
required

model.ActivateOrgUserRequest

userEmail
required
string

The email address of the Organisation User to be marked as active.

Responses

Request samples

Content type
application/json
{
  • "userEmail": "someEmail@email.com"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

ArchiveOrgUser

This API can be used to update an Organisation User account to mark as Archived.

Request Body schema: application/json
required

model.ArchiveOrgUserRequest

userEmail
required
string

The email address of the Organisation User to be marked as archived.

Responses

Request samples

Content type
application/json
{
  • "userEmail": "someEmail@email.com"
}

Response samples

Content type
application/json
{
  • "message": "Relevant Message for the request"
}

GetPaginatedOrgUsers

This API can be used to fetch a paginated list of Organisation User account records from the Cloud DB.

Request Body schema: application/json
required

model.GetPaginatedOrgUsersRequest

batchSize
required
integer

batchSize controls the number of items which will be returned in the pagination request, EG 10. Please note there is a maximum limit of 25 for batch size.

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.

lastName
string

lastName 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.

sortFilter
string

Optional filter option to set the sorting method for ordering the pagination output of the response. Available values are: 'newest-first', 'oldest-first', 'name-ascending' or 'name-descending'. If this value is not provided then the function will default to using the 'newest-first' sorting method.

statusFilter
string

Optional filter option to limit the pagination results to return Organisation Users with a specified status value. Available status filter options: 'Active' or 'Archived'. Please note that if this filter is not required, then please omit the value from the request, or set to 'all'.

Responses

Request samples

Content type
application/json
{
  • "batchSize": 10,
  • "lastDocID": "some-doc-id",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z",
  • "lastName": "some-name",
  • "sortFilter": "newest-first",
  • "statusFilter": "Active"
}

Response samples

Content type
application/json
{
  • "lastDocID": "some-doc-id",
  • "lastModifiedDate": "2024-03-13T07:42:42.472468Z",
  • "lastName": "some-name",
  • "totalNumberOfRecords": 120,
  • "usersList": [
    ]
}

GetUserDetailsByEmail

This API can be used to get details of an Organisation User account by email.

Request Body schema: application/json
required

model.GetUserDetailsByEmailRequest

email
required
string

Responses

Request samples

Content type
application/json
{
  • "email": "someEmail@email.com"
}

Response samples

Content type
application/json
{
  • "created": "2024-03-13T07:42:42.472468Z",
  • "email": "some-email",
  • "fullName": "string",
  • "isEmailVerified": true,
  • "lastModified": "2024-03-13T07:42:42.472468Z",
  • "roles": [
    ],
  • "status": "Active"
}