Skip to main content

Subscription Builder Customer API (1.0)

Download OpenAPI specification:Download

Subscription Builder makes it possible to create advanced build-a-box style subscription boxes, where customers can choose the contents of each subscription order. Merchants must be using Bold Checkout to use this functionality.

The Subscription Builder Customer API contains endpoints specific to customer functionality and requires JWT authentication.

Refer to the changelog for the latest updates to this API.

Selections

Contains information about a customer's product selections for a subscription box, including customer ID, shop ID, and subscription boxes. Use these endpoints to get, create, remove, and update customer selections.

Create Customer Selection

Creates a new selection for a customer using their platform ID.

Authorizations:
JWT
path Parameters
shop_identifier
required
string
Example: zp3oafdor9

The identifier of the shop. Can be retrieved by making a request to the Get Info endpoint.

platform_customer_id
required
string
Example: 50942578465125

The platform identifier for an authenticated customer.

Request Body schema: application/json
object (Selection)

The subscription properties selected by the customer.

id
integer

The selection ID.

bold_platform_subscription_line_item_id
integer

The Bold-generated ID for a subscription line item.

order_datetime
string <date-time>

The date and time of the order, in RFC date-time format.

box_size_id
integer or null

The box size ID.

time_slot_id
integer or null

The time slot ID.

Array of objects
created_at
string <date-time>

The date and time the order was created, in RFC date-time format.

updated_at
string <date-time>

The date and time the order was updated, in RFC date-time format.

Responses

Request samples

Content type
application/json
{
  • "selection": {
    }
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

List Customer Selections

Lists selections for a single customer using their platform ID.

Authorizations:
JWT
path Parameters
shop_identifier
required
string
Example: zp3oafdor9

The identifier of the shop. Can be retrieved by making a request to the Get Info endpoint.

platform_customer_id
required
string
Example: 50942578465125

The platform identifier for an authenticated customer.

query Parameters
bold_platform_subscription_line_item_id
integer
Example: bold_platform_subscription_line_item_id=200

An internal-only string that Bold uses to identify subscription line items.

order_datetime
string <date-time>
Example: order_datetime=2021-01-17T20:30:40Z

The date and time of the order, in RFC date-time format.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "pagination": {
    }
}

Get Customer Selection

Gets a customer's selection by the selection ID.

Authorizations:
JWT
path Parameters
shop_identifier
required
string
Example: zp3oafdor9

The identifier of the shop. Can be retrieved by making a request to the Get Info endpoint.

selection_id
required
integer
Example: 17

The selection ID.

platform_customer_id
required
string
Example: 50942578465125

The platform identifier for an authenticated customer.

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update Customer Selection

Partially updates a customer's existing selection by the selection ID.

Authorizations:
JWT
path Parameters
shop_identifier
required
string
Example: zp3oafdor9

The identifier of the shop. Can be retrieved by making a request to the Get Info endpoint.

selection_id
required
integer
Example: 17

The selection ID.

platform_customer_id
required
string
Example: 50942578465125

The platform identifier for an authenticated customer.

Request Body schema: application/json
object (Selection)

The subscription properties selected by the customer.

id
integer

The selection ID.

bold_platform_subscription_line_item_id
integer

The Bold-generated ID for a subscription line item.

order_datetime
string <date-time>

The date and time of the order, in RFC date-time format.

box_size_id
integer or null

The box size ID.

time_slot_id
integer or null

The time slot ID.

Array of objects
created_at
string <date-time>

The date and time the order was created, in RFC date-time format.

updated_at
string <date-time>

The date and time the order was updated, in RFC date-time format.

Responses

Request samples

Content type
application/json
{
  • "selection": {
    }
}

Delete Customer Selection

Deletes a customer's existing selection by the selection ID.

Authorizations:
JWT
path Parameters
shop_identifier
required
string
Example: zp3oafdor9

The identifier of the shop. Can be retrieved by making a request to the Get Info endpoint.

selection_id
required
integer
Example: 17

The selection ID.

platform_customer_id
required
string
Example: 50942578465125

The platform identifier for an authenticated customer.

Responses