Get Qualification Criteria (QC) List

Pulls a list of all qualification criteria (QC) available and defined at the business level.

To call this API, the offers ingestion option must be enabled for the business on the Punchh platform. Contact your Punchh representative to update this Punchh platform configuration.

Qualification criteria search is on a business level, and the request can:

  • Set search limits and order by descending search
  • Filter based on name and other attributes, for example, name or recency

For more information, see Offers Ingestion Management

Headers
  • Accept
    Type: string

    Set this header to application/json

  • Authorization
    Type: string
    required

    Bearer token for admin authorization, who is making a call on behalf of the customer. Send the API key in the following format: "Authorization: Bearer BUSINESS_ADMIN_KEY_GOES_HERE".

  • Content-Type
    Type: string

    Set this header to application/json

Body
application/json
  • page
    Type: integer

    Number of pages to retrieve. If the requested number exceeds the available pages, the system will retrieve up to the last valid page. If the page value is not provided, the default value is used.

  • per_page
    Type: integer

    Number of records per page. If the per_page value is not provided, the default value is used. The maximum per_page value is enforced based on the OFFERS_LIST_MAX_PER_PAGE environment variable.

  • query
    Type: string

    Define the search string on the qc name column

Responses
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for get/api2/dashboard/offers/qc
curl https://SERVER_NAME_GOES_HERE.punchh.com/api2/dashboard/offers/qc \
  --header 'Accept: ' \
  --header 'Authorization: Bearer BUSINESS_ADMIN_KEY_GOES_HERE' \
  --header 'Content-Type: application/json' \
  --data '{
  "query": "free",
  "page": 1,
  "per_page": 20
}'
{
  "data": [
    {
      "name": "10% Off on Sandwich",
      "external_id": "EXTERNAL_ID_GOES_HERE",
      "amount_cap": "3",
      "percentage_of_processed_amount": "10",
      "qc_processing_function": "sum_amounts",
      "rounding_rule": "ceil",
      "max_discount_units": 2,
      "target_price": 1,
      "effective_location": "location:1234",
      "stack_discounting": false,
      "reuse_qualifying_items": false,
      "line_item_filters": [
        {
          "line_item_selector": {
            "name": "Test LIS",
            "external_id": "EXTERNAL_ID_GOES_HERE",
            "exclude_non_payable": false,
            "filter_item_set": "base_and_modifiers",
            "base_items": {
              "clauses": [
                {
                  "attribute": "line_item_type",
                  "operator": "==",
                  "value": "M"
                },
                {
                  "attribute": "item_id",
                  "operator": "in",
                  "value": "101"
                }
              ]
            },
            "modifiers": {
              "clauses": [
                {
                  "attribute": "item_name",
                  "operator": "like",
                  "value": "modified"
                }
              ],
              "processing_method": "max_price",
              "max_discount_units": 12
            }
          },
          "processing_method": "max_price",
          "quantity": 5
        }
      ],
      "enable_menu_item_aggregator": false,
      "aggregator_grouping_attributes": {
        "item_name": false,
        "item_id": false,
        "item_major_group": false,
        "item_family": false,
        "line_item_type": false
      },
      "item_qualifiers": [
        {
          "expression_type": "line_item_exists",
          "line_item_selector": {
            "name": "Test LIS",
            "external_id": "EXTERNAL_ID_GOES_HERE",
            "exclude_non_payable": false,
            "filter_item_set": "base_and_modifiers",
            "base_items": {
              "clauses": [
                {
                  "attribute": "line_item_type",
                  "operator": "==",
                  "value": "M"
                },
                {
                  "attribute": "item_id",
                  "operator": "in",
                  "value": "101"
                }
              ]
            },
            "modifiers": {
              "clauses": [
                {
                  "attribute": "item_name",
                  "operator": "like",
                  "value": "modified"
                }
              ],
              "processing_method": "max_price",
              "max_discount_units": 12
            }
          },
          "net_value": null
        }
      ],
      "receipt_qualifier": [
        {
          "attribute": "total_amount",
          "operator": ">=",
          "value": "10"
        }
      ]
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 1,
    "total_records": 10
  }
}