Pass Bundle Management

This API allows you to create and update bundles of passes. You can bundle up to 10 passes together for convenient distribution.

POST/api/v2/pass-bundle/{bundleId}

Create/Update a bundle

Creates a new bundle for given passes or updates an existing bundle.

Path Parameters

  • Name
    bundleId
    Type
    string
    (optional)
    Description

    Optional bundle identifier. Can be used to update an existing bundle or create a new one with the given bundleId. If not provided, the system will automatically create a new bundle and assign a random value.

Example URLs

Request URLs

https://app.passcreator.com/api/v2/pass-bundle
https://app.passcreator.com/api/v2/pass-bundle/my-bundle-123


Authorization

  • Name
    Authorization
    Type
    string
    (mandatory)
    Description

    HTTP Header containing your API key. Replace yourApiKeyHere with your actual API key.

Example HTTP Header

HTTP header

POST /api/v2/pass-bundle HTTP/1.1
Host: app.passcreator.com
Authorization: yourApiKeyHere
Content-Type: application/json


Request Body

The request body must contain an array of pass identifiers to bundle together.

  • Name
    passes
    Type
    array<string>
    (mandatory)
    Description

    Array of pass identifiers to include in the bundle. Maximum of 10 passes allowed.

You can bundle up to 10 passes. Each pass identifier in the array must be a valid pass UID.

Example Request

Request body

{
  "passes": [
    "92c21f9a-4244-4adc-87f0-xxxxxxxxxxxx",
    "5a47ad28-08f8-4263-b503-xxxxxxxxxxxx"
  ]
}


Returned values

The response includes the bundle identifier and a URL to access the bundled passes.

  • Name
    success
    Type
    boolean
    (mandatory)
    Description

    Indicates whether the operation was successful.

  • Name
    description
    Type
    string
    (mandatory)
    Description

    A human-readable description of the operation result.

  • Name
    errors
    Type
    array
    (mandatory)
    Description

    Array of error messages if any errors occurred.

  • Name
    data
    Type
    object
    (mandatory)
    Description

    The response data object containing bundle information.

  • Name
    data.bundleId
    Type
    string
    (mandatory)
    Description

    The unique identifier of the created or updated bundle.

  • Name
    data.urlToPass
    Type
    string
    (mandatory)
    Description

    URL to access the bundled passes.

  • Name
    statusCode
    Type
    integer
    (mandatory)
    Description

    HTTP status code of the response.

Example Response

Success Response (200)

{
  "success": true,
  "description": "Pass Bundle was created successfully!",
  "errors": [],
  "data": {
    "bundleId": "...",
    "urlToPass": "..."
  },
  "statusCode": 200
}


Code Examples

Here you can find examples of how to call this endpoint using different programming languages and tools. Each example shows the complete request including headers, authentication, and the request body structure.

The examples demonstrate creating a bundle with two pass identifiers. Replace the example pass UIDs with your actual pass identifiers and yourApiKeyHere with your actual API key.

Code Examples for Requests

POST
/api/v2/pass-bundle
curl -X POST https://app.passcreator.com/api/v2/pass-bundle \
  -H "Authorization: yourApiKeyHere" \
  -H "Content-Type: application/json" \
  -d '{
    "passes": [
      "92c21f9a-4244-4adc-87f0-xxxxxxxxxxxx",
      "5a47ad28-08f8-4263-b503-xxxxxxxxxxxx"
    ]
  }'

GET/api/v2/pass-bundle/{bundleId}

Get a list of bundled passes

Lists all passes for the given bundleId.

Path Parameters

  • Name
    bundleId
    Type
    string
    (mandatory)
    Description

    The unique identifier of the bundle whose passes you want to retrieve.

Example URL

Request URL

https://app.passcreator.com/api/v2/pass-bundle/my-bundle-123


Authorization

  • Name
    Authorization
    Type
    string
    (mandatory)
    Description

    HTTP Header containing your API key. Replace yourApiKeyHere with your actual API key.

Example HTTP Header

HTTP header

GET /api/v2/pass-bundle/my-bundle-123 HTTP/1.1
Host: app.passcreator.com
Authorization: yourApiKeyHere


Returned values

The response includes an array of pass identifiers that are part of the bundle.

  • Name
    success
    Type
    boolean
    (mandatory)
    Description

    Indicates whether the operation was successful.

  • Name
    description
    Type
    string
    (mandatory)
    Description

    A human-readable description of the operation result.

  • Name
    errors
    Type
    array
    (mandatory)
    Description

    Array of error messages if any errors occurred.

  • Name
    data
    Type
    object
    (mandatory)
    Description

    The response data object containing the list of passes.

  • Name
    data.passes
    Type
    array<string>
    (mandatory)
    Description

    Array of pass identifiers included in the bundle.

  • Name
    statusCode
    Type
    integer
    (mandatory)
    Description

    HTTP status code of the response.

Example Response

Success Response (200)

{
  "success": true,
  "description": "success",
  "errors": [],
  "data": {
    "passes": [
      "5a47ad28-08f8-4263-b503-xxxxxxxxxxxx",
      "92c21f9a-4244-4adc-87f0-xxxxxxxxxxxx"
    ]
  },
  "statusCode": 200
}


Code Examples

Here you can find examples of how to call this endpoint using different programming languages and tools. Each example shows the complete request including headers and authentication.

Replace my-bundle-123 with your actual bundle identifier and yourApiKeyHere with your actual API key.

Code Examples for Requests

GET
/api/v2/pass-bundle/{bundleId}
curl -X GET https://app.passcreator.com/api/v2/pass-bundle/my-bundle-123 \
  -H "Authorization: yourApiKeyHere"

PUT/api/v2/pass-bundle/void/{bundle-identifier}

Void/Unvoid all passes of a bundle

Sets the voided status for all passes that are part of the given bundle. You can mark passes as voided (invalid) or restore them to valid status. This is e.g. useful, if an event ticket has been used. When a pass is voided, the barcode shown on the pass will be greyed out on the user's device.

Path Parameters

  • Name
    bundle-identifier
    Type
    string
    (mandatory)
    Description

    The unique identifier of the bundle whose passes should be voided or unvoided.

Example URL

Request URL

https://app.passcreator.com/api/v2/pass-bundle/void/my-bundle-123


Authorization

  • Name
    Authorization
    Type
    string
    (mandatory)
    Description

    HTTP Header containing your API key. Replace yourApiKeyHere with your actual API key.

Example HTTP Header

HTTP header

PUT /api/v2/pass-bundle/void/my-bundle-123 HTTP/1.1
Host: app.passcreator.com
Authorization: yourApiKeyHere
Content-Type: application/json


Request Body

The request body must contain the voided parameter to set the desired status for all passes in the bundle.

  • Name
    voided
    Type
    boolean
    (mandatory)
    Description

    Set to true to mark all passes in the bundle as voided/invalid. Set to false to restore the passes to valid status.

  • When voided: true: The barcode on each pass will be greyed out on the user's device, indicating the pass has been used or is no longer valid
  • When voided: false: The passes will be restored to their valid state, and the barcode will be displayed normally again

Example Request Body

Request Body Examples

{
  "voided": true
}


Returned values

The response includes information about the passes that were updated.

  • Name
    success
    Type
    boolean
    (mandatory)
    Description

    Indicates whether the operation was successful.

  • Name
    description
    Type
    string
    (mandatory)
    Description

    A human-readable description of the operation result. Will indicate whether passes were voided or set to valid.

  • Name
    errors
    Type
    array
    (mandatory)
    Description

    Array of error messages if any errors occurred.

  • Name
    data
    Type
    object
    (mandatory)
    Description

    The response data object containing information about the updated passes.

  • Name
    data.passes
    Type
    array<string>
    (mandatory)
    Description

    Array of pass identifiers that were updated.

  • Name
    statusCode
    Type
    integer
    (mandatory)
    Description

    HTTP status code of the response.

Example Response Body

Response Body Examples

{
  "success": true,
  "description": "Passes have been voided!",
  "errors": [],
  "data": {
    "passes": [
      "a66e1ce0-8407-4166-bd2f-82413ba1531b",
      "acecd9f1-9249-4733-97a7-7c78977f25c1"
    ]
  },
  "statusCode": 200
}


Code Examples

Here you can find examples of how to call this endpoint using different programming languages and tools. The examples show how to void passes (set voided: true) or restore them to valid status (set voided: false).

Replace my-bundle-123 with your actual bundle identifier and yourApiKeyHere with your actual API key.

Code Examples for Requests

PUT
/api/v2/pass-bundle/void/{bundle-identifier}
curl -X PUT https://app.passcreator.com/api/v2/pass-bundle/void/my-bundle-123 \
  -H "Authorization: yourApiKeyHere" \
  -H "Content-Type: application/json" \
  -d '{
    "voided": true
  }'

DELETE/api/v2/pass-bundle/{bundleId}

Delete a pass bundle

Delete a bundle. This will only delete the association between the passes. Not the passes itself.

Path Parameters

  • Name
    bundleId
    Type
    string
    (mandatory)
    Description

    The unique identifier of the bundle to delete.

Example URL

Request URL

https://app.passcreator.com/api/v2/pass-bundle/my-bundle-123


Authorization

  • Name
    Authorization
    Type
    string
    (mandatory)
    Description

    HTTP Header containing your API key. Replace yourApiKeyHere with your actual API key.

Example HTTP Header

HTTP header

DELETE /api/v2/pass-bundle/my-bundle-123 HTTP/1.1
Host: app.passcreator.com
Authorization: yourApiKeyHere


Returned values

The response confirms whether the bundle was successfully deleted.

  • Name
    success
    Type
    boolean
    (mandatory)
    Description

    Indicates whether the operation was successful.

  • Name
    description
    Type
    string
    (mandatory)
    Description

    A human-readable description of the operation result.

  • Name
    errors
    Type
    array
    (mandatory)
    Description

    Array of error messages if any errors occurred.

  • Name
    data
    Type
    array
    (mandatory)
    Description

    Empty array in successful responses.

  • Name
    statusCode
    Type
    integer
    (mandatory)
    Description

    HTTP status code of the response.

This endpoint returns a 404 status code if the bundle with the given identifier is not found.

Example Response

Success Response (200)

{
  "success": true,
  "description": "Pass Bundle was removed successfully!",
  "errors": [],
  "data": [],
  "statusCode": 200
}

Error Response (404)

{
  "success": false,
  "description": "Pass bundle with the identifier my-bundle-123 is not known",
  "errors": [],
  "data": [],
  "statusCode": 404
}


Code Examples

Here you can find examples of how to call this endpoint using different programming languages and tools. Each example shows the complete request including headers and authentication.

Replace my-bundle-123 with your actual bundle identifier and yourApiKeyHere with your actual API key.

Code Examples for Requests

DELETE
/api/v2/pass-bundle/{bundleId}
curl -X DELETE https://app.passcreator.com/api/v2/pass-bundle/my-bundle-123 \
  -H "Authorization: yourApiKeyHere"