Auto check-in rules

This feature requires the bundled pretix.plugins.autocheckin plugin to be active for the event in order to work properly.

Resource description

Auto check-in rules specify that tickets should under specific conditions automatically be considered checked in after they have been purchased.

Field

Type

Description

id

integer

Internal ID of the rule

list

integer

ID of the check-in list to check the ticket in on. If None, the system will select all matching check-in lists.

mode

string

"placed" if the rule should be evaluated right after an order has been created, "paid" if the rule should be evaluated after the order has been fully paid.

all_sales_channels

boolean

If true (default), the rule applies to tickets sold on all sales channels.

limit_sales_channels

list of strings

List of sales channel identifiers the rule should apply to if all_sales_channels is false.

all_products

boolean

If true (default), the rule affects all products and variations.

limit_products

list of integers

List of item IDs, if all_products is not set. If the product listed here has variations, all variations will be matched.

limit_variations

list of integers

List of product variation IDs, if all_products is not set. The parent product does not need to be part of limit_products.

all_payment_methods

boolean

If true (default), the rule applies to tickets paid with all payment methods.

limit_payment_methods

list of strings

List of payment method identifiers the rule should apply to if all_payment_methods is false.

Added in version 2024.7.

Endpoints

GET /api/v1/organizers/(organizer)/events/(event)/auto_checkin_rules/

Returns a list of all rules configured for an event.

Example request:

GET /api/v1/organizers/bigevents/events/sampleconf/auto_checkin_rules/ HTTP/1.1
Host: pretix.eu
Accept: application/json, text/javascript

Example response:

HTTP/1.1 200 OK
Vary: Accept
Content-Type: application/json

{
  "count": 1,
  "next": null,
  "previous": null,
  "results": [
    {
      "id": 1,
      "list": 12345,
      "mode": "placed",
      "all_sales_channels": false,
      "limit_sales_channels": ["web"],
      "all_products": false,
      "limit_products": [2, 3],
      "limit_variations": [456],
      "all_payment_methods": true,
      "limit_payment_methods": []
    }
  ]
}
Query Parameters:
  • page – The page number in case of a multi-page result set, default is 1

Parameters:
  • organizer – The slug field of a valid organizer

  • event – The slug field of the event to fetch

Status Codes:
GET /api/v1/organizers/(organizer)/events/(event)/auto_checkin_rules/(id)/

Returns information on one rule, identified by its ID.

Example request:

GET /api/v1/organizers/bigevents/events/sampleconf/auto_checkin_rules/1/ HTTP/1.1
Host: pretix.eu
Accept: application/json, text/javascript

Example response:

HTTP/1.1 200 OK
Vary: Accept
Content-Type: application/json

{
  "id": 1,
  "list": 12345,
  "mode": "placed",
  "all_sales_channels": false,
  "limit_sales_channels": ["web"],
  "all_products": false,
  "limit_products": [2, 3],
  "limit_variations": [456],
  "all_payment_methods": true,
  "limit_payment_methods": []
}
Parameters:
  • organizer – The slug field of the organizer to fetch

  • event – The slug field of the event to fetch

  • id – The id field of the rule to fetch

Status Codes:
POST /api/v1/organizers/(organizer)/events/(event)/auto_checkin_rules/

Create a new rule.

Example request:

POST /api/v1/organizers/bigevents/events/sampleconf/auto_checkin_rules/ HTTP/1.1
Host: pretix.eu
Accept: application/json, text/javascript
Content-Type: application/json
Content-Length: 166

{
  "list": 12345,
  "mode": "placed",
  "all_sales_channels": false,
  "limit_sales_channels": ["web"],
  "all_products": false,
  "limit_products": [2, 3],
  "limit_variations": [456],
  "all_payment_methods": true,
  "limit_payment_methods": []
}

Example response:

HTTP/1.1 201 Created
Vary: Accept
Content-Type: application/json

{
  "id": 1,
  "list": 12345,
  "mode": "placed",
  "all_sales_channels": false,
  "limit_sales_channels": ["web"],
  "all_products": false,
  "limit_products": [2, 3],
  "limit_variations": [456],
  "all_payment_methods": true,
  "limit_payment_methods": []
}
Parameters:
  • organizer – The slug field of the organizer to create a rule for

  • event – The slug field of the event to create a rule for

Status Codes:
PATCH /api/v1/organizers/(organizer)/events/(event)/auto_checkin_rules/(id)/

Update a rule. You can also use PUT instead of PATCH. With PUT, you have to provide all fields of the resource, other fields will be reset to default. With PATCH, you only need to provide the fields that you want to change.

Example request:

PATCH /api/v1/organizers/bigevents/events/sampleconf/auto_checkin_rules/1/ HTTP/1.1
Host: pretix.eu
Accept: application/json, text/javascript
Content-Type: application/json
Content-Length: 34

{
  "mode": "paid",
}

Example response:

HTTP/1.1 200 OK
Vary: Accept
Content-Type: text/javascript

{
  "id": 1,
  "list": 12345,
  "mode": "placed",
  "all_sales_channels": false,
  "limit_sales_channels": ["web"],
  "all_products": false,
  "limit_products": [2, 3],
  "limit_variations": [456],
  "all_payment_methods": true,
  "limit_payment_methods": []
}
Parameters:
  • organizer – The slug field of the organizer to modify

  • event – The slug field of the event to modify

  • id – The id field of the rule to modify

Status Codes:
  • 200 OK – no error

  • 400 Bad Request – The rule could not be modified due to invalid submitted data.

  • 401 Unauthorized – Authentication failure

  • 403 Forbidden – The requested organizer/event/rule does not exist or you have no permission to change it.

DELETE /api/v1/organizers/(organizer)/events/(event)/auto_checkin_rules/(id)/

Delete a rule.

Example request:

DELETE /api/v1/organizers/bigevents/events/sampleconf/auto_checkin_rules/1/ HTTP/1.1
Host: pretix.eu
Accept: application/json, text/javascript

Example response:

HTTP/1.1 204 No Content
Vary: Accept
Parameters:
  • organizer – The slug field of the organizer to modify

  • event – The slug field of the event to modify

  • id – The id field of the rule to delete

Status Codes:
  • 204 No Content – no error

  • 401 Unauthorized – Authentication failure

  • 403 Forbidden – The requested organizer/event/rule does not exist or you have no permission to change it or this rule cannot be deleted since it is currently in use.