{
  "openapi": "3.0.0",
  "info": {
    "version": "1.3",
    "title": "LifePeaks.dk API",
    "description": "Lifepeaks.dk API uses standard OAuth2 REST API.\n\nEvery response carries an `X-Request-Guid` header. Sending that value back as the `X-Request-Guid` request header on a retry makes the call idempotent: the server replays the recorded response instead of executing the action twice. Use it for claim, refund, cancel and gift-card creation.",
    "termsOfService": "https://erhverv.lifepeaks.dk/gdpr/",
    "contact": {
      "name": "API Support",
      "url": "https://erhverv.lifepeaks.dk/kontakt/",
      "email": "jens@lifepeaks.dk"
    },
    "x-logo": {
      "url": "https://app.lifepeaks.dk/frontend/assets/img/logo/life-peaks-logo-black_transparent-4x.png"
    }
  },
  "servers": [
    {
      "url": "https://api.lifepeaks.dk",
      "description": "LIVE API",
      "variables": {
        "domain": {
          "default": "api.lifepeaks.dk",
          "description": "LIVE version"
        },
        "protocol": {
          "enum": [
            "https"
          ],
          "default": "https"
        }
      }
    },
    {
      "url": "https://api-dev.lifepeaks.dk",
      "description": "Developer / testing API",
      "variables": {
        "domain": {
          "default": "api-dev.lifepeaks.dk",
          "description": "Developer / testing API version"
        },
        "protocol": {
          "enum": [
            "http",
            "https"
          ],
          "default": "https"
        }
      }
    },
    {
      "url": "https://api-demo.lifepeaks.dk",
      "description": "Demo API",
      "variables": {
        "domain": {
          "default": "api-demo.lifepeaks.dk",
          "description": "Demo version"
        },
        "protocol": {
          "enum": [
            "http",
            "https"
          ],
          "default": "https"
        }
      }
    }
  ],
  "paths": {
    "/action/ping": {
      "get": {
        "summary": "Ping",
        "operationId": "Ping",
        "tags": [
          "Actions"
        ],
        "responses": {
          "200": {
            "description": "Message with info about the logged in user and their company.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": "API is live and you are logged in as APITester from company Villa Copenhagen API test."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Checks if the service is alive.\n\nAction for testing API is working and if you have correct authentication.",
        "parameters": []
      }
    },
    "/action/list": {
      "post": {
        "summary": "List Items",
        "operationId": "List",
        "tags": [
          "Actions"
        ],
        "responses": {
          "200": {
            "description": "List of items",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseWithItems"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "items": [
                          {
                            "code": "77xrB3e44T",
                            "order_id": "devOEVLB1EW33",
                            "group_code": "ds7cd5dsfe",
                            "item_type": "Ticket",
                            "item_type_identification": "Ticket",
                            "item_title": "Event - ticket",
                            "event_title": "Event",
                            "ticket_title": "ticket",
                            "is_token": false,
                            "item_info": "10.05.2022",
                            "status": 3,
                            "status_name": "Used",
                            "amount": 10,
                            "vat": 25,
                            "vat_value": 2,
                            "currency": "DKK",
                            "remaining_amount": 0,
                            "remaining_pieces": 0,
                            "available_claim": false,
                            "available_piece_claim": false,
                            "available_amount_claim": false,
                            "available_group_claim": true,
                            "available_cancel": false,
                            "available_discard": false,
                            "speed_claim": false,
                            "available_refund": false,
                            "available_piece_refund": false,
                            "available_amount_refund": true,
                            "company_name": "Lukas X Company",
                            "validity": "2022-05-10 00:00:00",
                            "sender_name": "xxx",
                            "sender_email": "no-email@lifepeaks.dk",
                            "sender_phone": "",
                            "sender_company_use": false,
                            "sender_company_name": "",
                            "sender_company_address": "",
                            "sender_company_city": "",
                            "sender_company_postcode": "",
                            "sender_company_country": "",
                            "reciever_name": "xxx",
                            "reciever_email": "no-email@lifepeaks.dk",
                            "reciever_phone": "",
                            "created_at": "2022-05-12 15:31:57",
                            "language": "en-GB",
                            "delayed_deliver": false,
                            "deliver_at": "2022-05-11 14:42:36",
                            "delivered_at": "2022-05-16 15:09:51",
                            "delivered_to_post_at": null,
                            "greetings_text": "",
                            "image": null,
                            "variant_description": "<p>aaaa</p>",
                            "channel": "online-pos",
                            "api_receipt_text": "Hello boys and girls!",
                            "claim_error": "Ticket is not valid, It's used. Code of Ticket 77xrB3e44T",
                            "refund_error": "Ticket (77xrB3e44T) cannot be refunded. It's not used.",
                            "claim_url": "https://app.lifepeaks.dk/l/77xrB3e44T"
                          }
                        ],
                        "itemsCount": 1,
                        "filter": {
                          "offset": 0,
                          "limit": 10,
                          "order": "desc"
                        }
                      },
                      "request": {
                        "ip": "123.123.123.123",
                        "user": "APITester",
                        "language": "Danish",
                        "datetime": "2020-10-27 16:25:54",
                        "query": {
                          "limit": 1
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "description": "Action for listing (and searching in) all Items (Gift Card, Special offers, etc.).\n\n\nAt least one of `order_id`, `group_code` or `search` must be supplied, otherwise the request is rejected with `\"You have to provide at least one filter (group_code,order_id or search)!\"`. When `search` is used it must be 5 characters or longer.",
        "requestBody": {
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "order_id": {
                    "type": "string",
                    "description": "Id of order to search by."
                  },
                  "group_code": {
                    "type": "string",
                    "description": "Code of group."
                  },
                  "only_claimable": {
                    "type": "boolean",
                    "description": "Display only items which are claimable."
                  },
                  "offset": {
                    "type": "integer",
                    "default": 0,
                    "description": "The number of items to skip. When it is less than 0 than it will be automatically reset to 0."
                  },
                  "limit": {
                    "type": "integer",
                    "default": 10,
                    "description": "The number of items to return. When it is less than 1 than it will be automatically reset to 1 and the number higher than 100 will be reset to 100."
                  },
                  "order": {
                    "type": "string",
                    "default": "desc",
                    "enum": [
                      "desc",
                      "asc"
                    ],
                    "description": "Can be asc or desc. It indicates ascending or descending order of returning items."
                  },
                  "date_from": {
                    "type": "string",
                    "description": "API will return items newer (including) than this date when used."
                  },
                  "date_to": {
                    "type": "string",
                    "description": "API will return items older (including) than this date when used."
                  },
                  "search": {
                    "type": "string",
                    "description": "Search text for searching by code, sender and receiver name/email and few other items to search in. Must be minimum 5 characters long otherwise error will be shown."
                  },
                  "status": {
                    "type": "string",
                    "description": "Filter by item status."
                  },
                  "company": {
                    "type": "string",
                    "description": "Filter by company."
                  },
                  "type": {
                    "type": "string",
                    "description": "Filter by item type."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/action/analytics": {
      "post": {
        "summary": "List Items without details",
        "operationId": "Analytics",
        "tags": [
          "Actions"
        ],
        "responses": {
          "200": {
            "description": "List of items without details",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseWithItemsHeaders"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "items": [
                          {
                            "item_type": "Ticket",
                            "item_type_identification": "Ticket",
                            "item_title": "Event - ticket",
                            "event_title": "Event",
                            "ticket_title": "ticket",
                            "is_token": false,
                            "item_info": "10.05.2022",
                            "status": 3,
                            "status_name": "Used",
                            "amount": 10,
                            "vat": 25,
                            "vat_value": 2,
                            "currency": "DKK",
                            "remaining_amount": 0,
                            "remaining_pieces": 0,
                            "company_name": "Lukas X Company",
                            "validity": "2022-05-10 00:00:00",
                            "created_at": "2022-05-12 15:31:57",
                            "language": "en-GB"
                          }
                        ],
                        "itemsCount": 1,
                        "filter": {
                          "offset": 0,
                          "limit": 10,
                          "order": "desc"
                        }
                      },
                      "request": {
                        "ip": "123.123.123.123",
                        "user": "APITester",
                        "language": "Danish",
                        "datetime": "2020-10-27 16:25:54",
                        "query": {
                          "limit": 1
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "description": "Action for listing (and searching in) all Items (Gift Card, Special offers, etc.).\n",
        "requestBody": {
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "offset": {
                    "type": "integer",
                    "default": 0,
                    "description": "The number of items to skip. When it is less than 0 than it will be automatically reset to 0."
                  },
                  "limit": {
                    "type": "integer",
                    "default": 10,
                    "description": "The number of items to return. When it is less than 1 than it will be automatically reset to 1 and the number higher than 100 will be reset to 100."
                  },
                  "order": {
                    "type": "string",
                    "default": "desc",
                    "enum": [
                      "desc",
                      "asc"
                    ],
                    "description": "Can be asc or desc. It indicates ascending or descending order of returning items."
                  },
                  "date_from": {
                    "type": "string",
                    "description": "API will return items newer (including) than this date when used."
                  },
                  "date_to": {
                    "type": "string",
                    "description": "API will return items older (including) than this date when used."
                  },
                  "search": {
                    "type": "string",
                    "description": "Search text for searching by code, sender and receiver name/email and few other items to search in. Must be minimum 5 characters long otherwise error will be shown."
                  },
                  "status": {
                    "type": "string",
                    "description": "Filter by item status."
                  },
                  "company": {
                    "type": "string",
                    "description": "Filter by company."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/action/claimed-items": {
      "post": {
        "summary": "List Claimed Actions",
        "operationId": "ClaimedItems",
        "tags": [
          "Actions"
        ],
        "responses": {
          "200": {
            "description": "List of claimed actions of items",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseWithItemsClaimedActions"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "items": [
                          {
                            "transaction_id": 123456,
                            "status": 3,
                            "status_name": "Used",
                            "date": "2024-09-12",
                            "time": "01:36:48",
                            "item_type": "Gift Card Variation",
                            "item_type_identification": "Gift Card Variation",
                            "code": "XXXXXXXXXXX",
                            "amount": 200,
                            "claim_note": null,
                            "claimed_by_username": "Tester",
                            "claimed_by_company_name": "Super Company",
                            "currency": "DKK",
                            "company_name": "Super Company"
                          },
                          {
                            "transaction_id": 1234567,
                            "status": 3,
                            "status_name": "Used",
                            "date": "2024-09-12",
                            "time": "07:17:21",
                            "item_type": "Gift Card",
                            "item_type_identification": "Gift Card",
                            "code": "XXXXXXXXXXX",
                            "amount": 456,
                            "claim_note": null,
                            "claimed_by_username": "Tester",
                            "claimed_by_company_name": "Super Company",
                            "currency": "DKK",
                            "company_name": "Super Company"
                          }
                        ],
                        "itemsCount": 2,
                        "filter": {
                          "offset": 0,
                          "limit": 10,
                          "order": "desc",
                          "filter": {
                            "date_from": "2024-09-03",
                            "date_to": "2024-09-03"
                          }
                        }
                      },
                      "request": {
                        "ip": "123.123.123.123",
                        "user": "APITester",
                        "language": "Danish",
                        "datetime": "2020-10-27 16:25:54",
                        "post": {
                          "date_from": "2024-09-03",
                          "date_to": "2024-09-03"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "description": "Action for listing (and searching in) all claim actions (claim, partly claim & refund).\n\n\nBoth `date_from` and `date_to` are required; without them the request is rejected with `\"You have to provide date_from and date_to!\"`.",
        "requestBody": {
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "offset": {
                    "type": "integer",
                    "default": 0,
                    "description": "The number of items to skip. When it is less than 0 than it will be automatically reset to 0."
                  },
                  "limit": {
                    "type": "integer",
                    "default": 10,
                    "description": "The number of items to return. When it is less than 1 than it will be automatically reset to 1 and the number higher than 100 will be reset to 100."
                  },
                  "order": {
                    "type": "string",
                    "default": "desc",
                    "enum": [
                      "desc",
                      "asc"
                    ],
                    "description": "Can be asc or desc. It indicates ascending or descending order of returning items."
                  },
                  "date_from": {
                    "type": "string",
                    "description": "API will return items newer (including) than this date when used."
                  },
                  "date_to": {
                    "type": "string",
                    "description": "API will return items older (including) than this date when used."
                  }
                },
                "required": [
                  "date_from",
                  "date_to"
                ]
              }
            }
          }
        }
      }
    },
    "/action/subscribers": {
      "get": {
        "summary": "Subscribers",
        "operationId": "Subscribers",
        "tags": [
          "Actions"
        ],
        "responses": {
          "200": {
            "description": "Array of id, email for provided company.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseSubscribers"
                },
                "examples": {
                  "Example": {
                    "value": {}
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "List newsletter subscribers for the company the access token belongs to. Optionally filter with date_from and date_to (both must be valid `yyyy-MM-dd` dates, otherwise the filter is ignored). The company is taken from the authenticated user and cannot be passed in the request.",
        "parameters": [
          {
            "name": "date_from",
            "in": "query",
            "required": false,
            "description": "Inclusive lower bound, `yyyy-MM-dd`. Applied only when both date_from and date_to parse.",
            "example": "2024-09-03",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "date_to",
            "in": "query",
            "required": false,
            "description": "Inclusive upper bound, `yyyy-MM-dd`. Applied only when both date_from and date_to parse.",
            "example": "2024-09-03",
            "schema": {
              "type": "string",
              "format": "date"
            }
          }
        ]
      }
    },
    "/order/{order_id}/claim": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "order_id",
          "in": "path",
          "required": true,
          "description": "Order id."
        }
      ],
      "post": {
        "summary": "Claim whole Order",
        "operationId": "ClaimOrder",
        "tags": [
          "Order"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseAfterClaim"
                },
                "examples": {
                  "Example": {
                    "value": {}
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Claim (=redeem/use) of whole Order\nAction for claiming the order at once.\n\nYou can see, If it is available in item detail (item detail->available_groupclaim).\n\n Your user logged to API cannot be agency_user to be allowed to use this function.",
        "requestBody": {
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "group_code": {
                    "type": "string",
                    "nullable": true,
                    "description": "Group code to limit items to claim by group code."
                  }
                },
                "required": []
              },
              "examples": {
                "Example": {
                  "value": {
                    "group_code": "ds7cd5dsfe"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/order/{order_id}/capture": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "order_id",
          "in": "path",
          "required": true,
          "description": "Order id."
        }
      ],
      "post": {
        "summary": "Capture whole Order",
        "operationId": "CaptureOrder",
        "tags": [
          "Order"
        ],
        "responses": {
          "200": {
            "description": "Message about order has been captured.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": "Order devOEVLB1EW33 has been captured!"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "200 Error": {
            "description": "Incorrect order_id! User TesterAPI has no unpaid order devOEVLB1EW33",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "Error",
                      "response": "Incorrect order_id! User TesterAPI has no unpaid order devOEVLB1EW33"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Capture order which has been created (but not activated) with capture=false to make it paid/active."
      }
    },
    "/item/{code}": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "code",
          "in": "path",
          "required": true,
          "description": "Code of Gift Card, Special offer or other item."
        }
      ],
      "get": {
        "summary": "Item Detail",
        "operationId": "GetItem",
        "tags": [
          "Item"
        ],
        "responses": {
          "200": {
            "description": "Response is an array of one item or error message (string).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseWithItems"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "items": [
                          {
                            "code": "77xrB3e44T",
                            "order_id": "devOEVLB1EW33",
                            "group_code": "ds7cd5dsfe",
                            "item_type": "Ticket",
                            "item_type_identification": "Ticket",
                            "item_title": "xxMinus ticket test - ABC",
                            "event_title": "xxMinus ticket test",
                            "ticket_title": "ABC",
                            "is_token": false,
                            "item_info": "10.05.2022",
                            "status": 3,
                            "status_name": "Used",
                            "amount": 10,
                            "vat": 25,
                            "vat_value": 2,
                            "currency": "DKK",
                            "remaining_amount": 0,
                            "remaining_pieces": 0,
                            "available_claim": false,
                            "available_piece_claim": false,
                            "available_amount_claim": false,
                            "available_group_claim": true,
                            "available_cancel": false,
                            "available_discard": false,
                            "speed_claim": false,
                            "available_refund": false,
                            "available_piece_refund": false,
                            "available_amount_refund": true,
                            "company_name": "Lukas X Company",
                            "validity": "2022-05-10 00:00:00",
                            "sender_name": "xxx",
                            "sender_email": "no-email@lifepeaks.dk",
                            "sender_phone": "",
                            "sender_company_use": false,
                            "sender_company_name": "",
                            "sender_company_address": "",
                            "sender_company_city": "",
                            "sender_company_postcode": "",
                            "sender_company_country": "",
                            "reciever_name": "xxx",
                            "reciever_email": "no-email@lifepeaks.dk",
                            "reciever_phone": "",
                            "created_at": "2022-05-12 15:31:57",
                            "language": "en-GB",
                            "delayed_deliver": false,
                            "deliver_at": "2022-05-11 14:42:36",
                            "delivered_at": "2022-05-16 15:09:51",
                            "delivered_to_post_at": null,
                            "greetings_text": "",
                            "image": null,
                            "variant_description": "<p>aaaa</p>",
                            "channel": "online-pos",
                            "api_receipt_text": "Hello boys and girls!",
                            "claim_error": "Ticket is not valid, It's used. Code of Ticket 77xrB3e44T",
                            "refund_error": "Ticket (77xrB3e44T) cannot be refunded. It's not used.",
                            "claim_url": "https://app.lifepeaks.dk/l/77xrB3e44T"
                          }
                        ],
                        "itemsCount": 1
                      },
                      "request": {
                        "ip": "123.123.123.123",
                        "user": "APITester",
                        "language": "Danish",
                        "datetime": "2020-10-27 17:13:32",
                        "query": {
                          "code": "77xrB3e44T"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Action for getting one item by code and returning information about the item."
      }
    },
    "/item/{code}/resend": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "code",
          "in": "path",
          "required": true,
          "description": "Code of Gift Card, Special offer or other item."
        }
      ],
      "post": {
        "summary": "Resend Item",
        "operationId": "Resend",
        "tags": [
          "Item"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": "Item 6qNpRcGawb has been activated! Value: 123."
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request. The email is not provided or is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Action for resending the item (email with PDF) to the provided email.",
        "requestBody": {
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "email": {
                    "type": "string",
                    "description": "Email where to send item to."
                  }
                },
                "required": [
                  "email"
                ]
              },
              "examples": {
                "Example": {
                  "value": {
                    "email": "test@lifepeaks.dk"
                  }
                }
              }
            }
          },
          "description": "The email to resend the item to."
        }
      }
    },
    "/item/{code}/claim": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "code",
          "in": "path",
          "required": true,
          "description": "Code of Gift Card, Special offer, other item or order_id."
        }
      ],
      "post": {
        "summary": "Claim Item",
        "operationId": "Claim",
        "tags": [
          "Item"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseAfterClaim"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "info": "Gift Card partly claimed",
                        "message": "Successfully claimed 1 DKK.",
                        "remaining_value": 946,
                        "remaining_number": null,
                        "partly_claimed": true,
                        "claimed_amount": 1
                      },
                      "request": {
                        "ip": "123.123.123.123",
                        "user": "APITester",
                        "language": "Danish",
                        "datetime": "2020-10-27 16:25:54"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request. Required parameters are missing or invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Claim (=redeem/use)\nAction for claiming the item.\n\nThis function can be used when it is available (item detail->available_claim).\nItem can be claimed fully (\"all\") or by some amount (\"amount\") when it is available (item detail->available_amount_claim) or by piece (\"piece\") when it is available (item detail->available_piece_claim).\n\nType can be \"piece\", \"amount\" or \"all\".\n\nSome gift cards are an indivisible unit, e.g. a gift card variant for a fixed product (one stay, one experience). For these, available_claim is true while available_amount_claim and available_piece_claim are false, and the card is redeemed in full - use type \"all\". A request that covers the whole remaining value is also accepted and treated as a full claim: type \"amount\" with amount equal to remaining_amount, or type \"piece\" with number equal to remaining_pieces.\n\nYou can optionally provide claim_note (eg. Reservation number).\n\nFundamentally You can claim an item by amount when it is the gift card with value, and the gift card has, let's say 500 DKK amount. You will claim, e.g., 100 DKK when they visit your restaurant, and 400 DKK will stay on the gift card. The second example is, e.g., the gift card with experience. Let's say the customer has 5 x head massages, and when she visits the massage saloon, she will use one piece, and four other pieces will remain on the gift card.\n\nNote: Your user logged to API cannot be agency_user to be allowed to use this function.\n",
        "requestBody": {
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "description": "",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "piece",
                      "amount",
                      "all"
                    ]
                  },
                  "number": {
                    "type": "number"
                  },
                  "amount": {
                    "type": "number"
                  },
                  "claim_note": {
                    "type": "string"
                  }
                },
                "required": [
                  "type"
                ]
              },
              "examples": {
                "Example": {
                  "value": {
                    "type": "piece",
                    "number": 1,
                    "amount": 10
                  }
                }
              }
            }
          },
          "description": "The type, number, and amount of the item to be claimed."
        }
      }
    },
    "/item/{code}/refund": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "code",
          "in": "path",
          "required": true,
          "description": "Code of Gift Card, Special offer, other item or order_id."
        }
      ],
      "post": {
        "summary": "Refund Item",
        "operationId": "Refund",
        "tags": [
          "Item"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseAfterRefund"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "info": "Gift Card refunded",
                        "message": "Gift Card rVwvAH4abb has been fully refunded!",
                        "remaining_value": 20,
                        "remaining_number": 1,
                        "partly_refunded": false
                      },
                      "request": {
                        "ip": "123.123.123.123",
                        "user": "APITester",
                        "language": "Danish",
                        "datetime": "2020-10-27 16:25:54"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request. Required parameters are missing or invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Refund\nAction for refunding the item.\n\nThis function can be used when it is available (item detail->available_refund).\nItem can be refunded fully (\"all\") or by some amount (\"amount\") when it is available (item detail->available_amount_refund) or by piece (\"piece\") when it is available (item detail->available_piece_refund).\n\nType can be \"piece\", \"amount\" or \"all\".\n\nFundamentally You can refund an item by amount when it is the gift card with value, and the gift card has, let's say 500 DKK amount claimed. You will refund, e.g., 100 DKK when there was mistake  an extra 100 DKK was claimed. The second example is, e.g., the gift card with experience. Let's say the customer has 5 x head massages, and when she visits the massage saloon, she will use two pieces. And she decided to use only one massage so you can refund 1 massage back to the gift card.\n\nNote: Your user logged to API cannot be agency_user to be allowed to use this function.\n",
        "requestBody": {
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "description": "",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "piece",
                      "amount",
                      "all"
                    ]
                  },
                  "number": {
                    "type": "number"
                  },
                  "amount": {
                    "type": "number"
                  }
                },
                "required": [
                  "type"
                ]
              },
              "examples": {
                "Example": {
                  "value": {
                    "type": "piece",
                    "number": 1,
                    "amount": 10
                  }
                }
              }
            }
          },
          "description": "The type, number, and amount of the item to be refunded."
        }
      }
    },
    "/action/create-gc": {
      "post": {
        "summary": "Create Gift Card",
        "operationId": "CreateGc",
        "tags": [
          "Item"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseWithItemsCreateGc"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "items": [
                          {
                            "code": "T36h5tpDYC",
                            "order_id": "devPNZVUB8TMP",
                            "group_code": "ds7cd5dsfe",
                            "item_type": "Gift Card",
                            "item_type_identification": "Gift Card",
                            "item_title": "Gift Card - Value: 10,-",
                            "event_title": null,
                            "ticket_title": null,
                            "is_token": false,
                            "item_info": "",
                            "status": 6,
                            "status_name": "Paid",
                            "amount": 10,
                            "vat": 25,
                            "vat_value": 2,
                            "currency": "DKK",
                            "remaining_amount": 10,
                            "remaining_pieces": 1,
                            "available_claim": false,
                            "available_piece_claim": false,
                            "available_amount_claim": true,
                            "available_group_claim": false,
                            "available_cancel": true,
                            "available_discard": false,
                            "speed_claim": false,
                            "available_refund": false,
                            "available_piece_refund": false,
                            "available_amount_refund": true,
                            "company_name": "Lukas X Company",
                            "validity": "2023-10-06 20:19:30",
                            "sender_name": "Agency A",
                            "sender_email": "no-email@lifepeaks.dk",
                            "sender_phone": null,
                            "sender_company_use": false,
                            "sender_company_name": null,
                            "sender_company_address": null,
                            "sender_company_city": null,
                            "sender_company_postcode": null,
                            "sender_company_country": null,
                            "reciever_name": "Agency A",
                            "reciever_email": "no-email@lifepeaks.dk",
                            "reciever_phone": null,
                            "created_at": "2022-10-06 20:19:30",
                            "language": "en-GB",
                            "delayed_deliver": false,
                            "deliver_at": "2022-10-06 20:19:30",
                            "delivered_at": "2022-10-06 20:19:31",
                            "delivered_to_post_at": null,
                            "greetings_text": null,
                            "image": null,
                            "variant_description": null,
                            "channel": "online-pos",
                            "api_receipt_text": "Hello boys and girls!",
                            "claim_error": "Ticket is not valid, It's used. Code of Ticket 77xrB3e44T",
                            "refund_error": "Ticket (77xrB3e44T) cannot be refunded. It's not used.",
                            "claim_url": "https://app.lifepeaks.dk/l/77xrB3e44T",
                            "pdf_url": "https://app.lifepeaks.dk/pdf/devPNZVUB8TMP/T36h5tpDYC",
                            "pdf_short_url": "https://app.lpeaks.dk/p/TMPT36h5tpDYC"
                          }
                        ],
                        "itemsCount": 1,
                        "filter": {
                          "offset": 0,
                          "limit": 10,
                          "order": "desc"
                        },
                        "order_id": "devPNZVUB8TMP"
                      },
                      "request": {
                        "ip": "123.123.123.123",
                        "user": "APITester",
                        "language": "Danish",
                        "datetime": "2020-10-27 16:25:54",
                        "query": {
                          "limit": 1
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request. Required parameters are missing or invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Action for creating the Gift Card(s)\n\nIf your credentials are set as **Agency** (such as GoGift, Huuray, GODREAM, Truestory) only company and amount is required. E-mail address and name are not required (hence related e-mail address is already stored in Agency platform). Sender and receiver name will be name of your agency. The gift card will be created with payment type \"API created - Payment with invoice\". \n\nIf your credentials are set as **POS/PMS platform** (such as OnlinePOS, EBM, Tilty) name of receiver, e-mail address of receiver and amount are required.The gift card will be created with payment type \"API - Paid on location\".\n\nHere’s the recommended flow for creating gift cards:\n1. Call our API’s create gift card action with the parameter capture=false. Save order_id.\n2. Handle the payment on your side, and when it’s successful, proceed to the next step.\n3. Call our API to capture the whole order with order_id. The gift card will then be activated on our side.\n\nIf an item is not captured within one week, it will be automatically deleted.\n\nValue for Added Value Campaign:\nThe final value of the gift card is calculated as:\nfinal amount = amount + (amount × added-value %)\n\nValue for Discount Campaign:\nThe final value of the gift card equals the specified amount.\nThe customer pays:\npaid amount = amount − (amount × discount %)\n\nEvery returned item includes **pdf_url**, a direct public link to the gift card PDF (no login required) that you can pass on to the buyer. Append ?g for the personal greeting, ?r for the remaining value, or ?d=D to force a download. A shorter equivalent link is returned as **pdf_short_url** (the same form recipients receive by email).",
        "requestBody": {
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "amount": {
                    "type": "integer",
                    "description": "The value of the gift card in the company’s currency (usually DKK)."
                  },
                  "piece": {
                    "type": "integer",
                    "description": "Number of pieces of gift card bundle.",
                    "default": 1
                  },
                  "company": {
                    "type": "string",
                    "description": "Company identifier on whose behalf you are creating this Gift Card."
                  },
                  "sender_name": {
                    "type": "string",
                    "description": "Name of the sender of this Gift Card.",
                    "default": "Name of your Agency"
                  },
                  "sender_email": {
                    "type": "string",
                    "description": "E-mail of the sender of this Gift Card.",
                    "default": "no-email@lifepeaks.dk"
                  },
                  "receiver_name": {
                    "type": "string",
                    "description": "Name of the receiver of this Gift Card.",
                    "default": "Name of your Agency"
                  },
                  "receiver_email": {
                    "type": "string",
                    "description": "E-mail of the receiver of this Gift Card.",
                    "default": "no-email@lifepeaks.dk"
                  },
                  "validity": {
                    "type": "date",
                    "description": "Validity of the Gift Card in format YYYY-MM-DD.",
                    "default": "3 years (company settings) from now"
                  },
                  "sdh_product_id": {
                    "type": "string",
                    "description": "SDH product id for the Gift Card.",
                    "default": "Default SDH product id (2025)."
                  },
                  "capture": {
                    "type": "boolean",
                    "description": "If true or not present, the Gift Card(s) will be captured (activated) immediately upon creation. If false, no or 0, the Gift Card will be created but not activated. You need to use action capture order.",
                    "default": true
                  },
                  "gc_value_modification": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Id of discount or added value modification to be applied to the Gift Card value (Gc Value Modification).",
                    "default": null
                  }
                },
                "required": [
                  "amount",
                  "company"
                ]
              },
              "examples": {
                "Example": {
                  "value": {
                    "amount": 100,
                    "company": "arndal-spa"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/item/{code}/cancel": {
      "parameters": [
        {
          "name": "code",
          "in": "path",
          "description": "Unique identifier (code) for the Gift Card, Special Offer, other items, or order_id.",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "post": {
        "summary": "Cancel Item",
        "operationId": "CancelItem",
        "tags": [
          "Item"
        ],
        "description": "Endpoint to cancel or discard an item. This operation can be performed if 'available_cancel' for the item is true. If 'available_cancel' is false but 'available_discard' is true, a discard operation will be automatically executed instead. Note: Only 'agency_user' type users can use this function and can only cancel or discard items they have created. Please be aware this action is irreversible.",
        "responses": {
          "200": {
            "description": "OK - Item successfully cancelled",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": "Item KJqgfeUyYQ has been successfully cancelled!"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request - The request could not be understood or was missing required parameters.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized - Authentication failed or user doesn't have permissions for the requested operation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "default": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/item/{code}/activate": {
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "code",
          "in": "path",
          "required": true,
          "description": "Code of Gift Card, Special offer or other item."
        }
      ],
      "post": {
        "summary": "Activate Item",
        "operationId": "Activate",
        "tags": [
          "Item"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseAfterActivation"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "message": "Item zF92Emxn_c has been activated! Value: 123. Validity: 06.05.2026.",
                        "amount": "123",
                        "validity": "06.05.2026"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Amount is required for this code!",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Action for activating inactive code.\n\nThis function can be used when item is type of Inactive Item .",
        "requestBody": {
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "amount": {
                    "type": "number",
                    "description": "Amount of the item to be activated. It is required when amount of item is null."
                  }
                }
              },
              "examples": {
                "Example": {
                  "value": {
                    "amount": "100"
                  }
                }
              }
            }
          },
          "description": "The amount of the item to be activated."
        }
      }
    },
    "/event/list": {
      "post": {
        "summary": "List Events",
        "operationId": "ListEvents",
        "tags": [
          "Events"
        ],
        "description": "Endpoint for retrieving a list of events. Allows for searching within the list of tickets' events.",
        "responses": {
          "200": {
            "description": "OK - Successfully retrieved list of events",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseWithEvents"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "events": [
                          {
                            "name": "Hotel Party nr.1",
                            "slug": "hotel-party-nr1",
                            "private": false,
                            "online": true,
                            "venue": "London",
                            "venue_address": "",
                            "venue_postcode": "",
                            "date_activate": null,
                            "date_deactivate": null,
                            "sold": 435,
                            "blocked": 0,
                            "all": 1773
                          },
                          {
                            "name": "xxxx",
                            "slug": "xxxx-13",
                            "private": false,
                            "online": true,
                            "venue": "Lukas X Company",
                            "venue_address": "Address",
                            "venue_postcode": "Town",
                            "date_activate": null,
                            "date_deactivate": null,
                            "sold": 143,
                            "blocked": 0,
                            "all": 200
                          }
                        ],
                        "eventsCount": 2,
                        "filter": {
                          "offset": 0,
                          "limit": 2,
                          "online": true,
                          "private": false
                        }
                      },
                      "request": {
                        "ip": "123.123.123.123",
                        "user": "APITester",
                        "language": "Danish",
                        "datetime": "2023-01-17 14:29:56",
                        "query": {
                          "limit": 2,
                          "online": true
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request - The request could not be understood or was missing required parameters.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized - Authentication failed or user doesn't have permissions for the requested operation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "default": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Form-encoded paging and visibility filters.",
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "offset": {
                    "type": "integer",
                    "default": 0,
                    "description": "Number of rows to skip. Non-numeric values and values below 0 become 0."
                  },
                  "limit": {
                    "type": "integer",
                    "default": 10,
                    "description": "Maximum rows to return. Non-numeric values become 0; values above 100 are capped at 100."
                  },
                  "online": {
                    "type": "boolean",
                    "default": false,
                    "description": "Filter to display only online events."
                  },
                  "private": {
                    "type": "boolean",
                    "default": false,
                    "description": "Filter events by privacy status."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/list/gc-value-modifications": {
      "get": {
        "summary": "Get GC Value Modifications",
        "operationId": "GetGCValueModifications",
        "tags": [
          "Lists"
        ],
        "responses": {
          "200": {
            "description": "Lists of available GC value modifications for API Create-gc requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseWithGcValueModifications"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": [
                        {
                          "id": 499,
                          "name": "API Campaign Added 10%",
                          "modification": "added-value",
                          "amount_from": 10,
                          "amount_to": 100,
                          "reduced_price": null,
                          "added_value": 10
                        },
                        {
                          "id": 498,
                          "name": "API Campaign Discount 10%",
                          "modification": "discount",
                          "amount_from": null,
                          "amount_to": null,
                          "reduced_price": 10,
                          "added_value": null
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized request / incorrect token",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "examples": {
                  "Example of an unauthorized request / incorrect token": {
                    "value": {
                      "name": "Unauthorized",
                      "message": "Your request was made with invalid credentials.",
                      "code": 0,
                      "status": 401
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unexpected errors.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "description": "Checks if the service is alive.\n\nAction for testing API is working and if you have correct authentication.",
        "parameters": []
      }
    },
    "/token": {
      "post": {
        "summary": "Get Access Token",
        "operationId": "Token",
        "tags": [
          "Authorization"
        ],
        "security": [],
        "description": "Exchanges client credentials for an access token. This is the entry point for every integration: the returned `access_token` is what all other endpoints expect in the `Authorization: Bearer` header.\n\nThree grant types are enabled: `password` (user credentials), `refresh_token` and `authorization_code`. There is no `client_credentials` grant.\n\nClient credentials may be sent in the form body as `client_id` / `client_secret`, or as HTTP Basic auth. Request values must be URL-encoded.\n\nThe same handler is also reachable at `POST /oauth2/token`.",
        "requestBody": {
          "description": "Form-encoded grant request. Which fields are required depends on `grant_type`.",
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": [
                  "grant_type"
                ],
                "properties": {
                  "grant_type": {
                    "type": "string",
                    "enum": [
                      "password",
                      "refresh_token",
                      "authorization_code"
                    ],
                    "description": "The OAuth2 grant type to use."
                  },
                  "client_id": {
                    "type": "string",
                    "description": "API Client ID from company settings. Required unless sent via HTTP Basic auth."
                  },
                  "client_secret": {
                    "type": "string",
                    "description": "API secret from company settings. Required unless sent via HTTP Basic auth."
                  },
                  "username": {
                    "type": "string",
                    "description": "Required for `grant_type=password`. The username of a user with the API user right."
                  },
                  "password": {
                    "type": "string",
                    "description": "Required for `grant_type=password`."
                  },
                  "refresh_token": {
                    "type": "string",
                    "description": "Required for `grant_type=refresh_token`."
                  },
                  "code": {
                    "type": "string",
                    "description": "Required for `grant_type=authorization_code`. The code returned by `/authorize`."
                  },
                  "redirect_uri": {
                    "type": "string",
                    "description": "Required for `grant_type=authorization_code`. Must match the API redirect (callback) URL configured in company settings."
                  },
                  "scope": {
                    "type": "string",
                    "description": "Optional. Narrows the granted scope, e.g. `admin` or `zapier`."
                  }
                }
              },
              "examples": {
                "Password grant": {
                  "value": {
                    "grant_type": "password",
                    "client_id": "{clientId}",
                    "client_secret": "{clientSecret}",
                    "username": "{apiUserUsername}",
                    "password": "{apiUserPassword}"
                  }
                },
                "Refresh token grant": {
                  "value": {
                    "grant_type": "refresh_token",
                    "client_id": "{clientId}",
                    "client_secret": "{clientSecret}",
                    "refresh_token": "{refreshToken}"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "A new access token.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenResponse"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "access_token": "413cf40b7c3e2f05d329ed3577441c2311366497",
                      "expires_in": 86400,
                      "token_type": "Bearer",
                      "scope": "admin",
                      "refresh_token": "e01008fda47a4fd2ac17eccb9dcef62187372266"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid or missing grant parameters (`invalid_request`, `invalid_grant`, `unsupported_grant_type`).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenError"
                },
                "examples": {
                  "Bad credentials": {
                    "value": {
                      "error": "invalid_grant",
                      "error_description": "Invalid username and password combination"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Client authentication failed (`invalid_client`).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenError"
                },
                "examples": {
                  "Bad client": {
                    "value": {
                      "error": "invalid_client",
                      "error_description": "The client credentials are invalid"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/oauth2/revoke": {
      "post": {
        "summary": "Revoke Token",
        "operationId": "RevokeToken",
        "tags": [
          "Authorization"
        ],
        "security": [],
        "description": "Revokes an access token or a refresh token. Reachable through the generic `POST /oauth2/{action}` route.",
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": [
                  "token"
                ],
                "properties": {
                  "token": {
                    "type": "string",
                    "description": "The token to revoke."
                  },
                  "token_type_hint": {
                    "type": "string",
                    "enum": [
                      "access_token",
                      "refresh_token"
                    ],
                    "description": "Optional hint about which token type is being revoked."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The token was revoked."
          },
          "400": {
            "description": "Missing `token`, or an unsupported `token_type_hint`.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenError"
                }
              }
            }
          }
        }
      }
    },
    "/event/{slug}/participants": {
      "post": {
        "summary": "List Events' Participants",
        "operationId": "ListParticipants",
        "tags": [
          "Events"
        ],
        "description": "Endpoint for retrieving a list of participants of an event. Allows for filtering and searching within the participant list.",
        "responses": {
          "200": {
            "description": "OK - Successfully retrieved list of participants",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseWithParticipants"
                },
                "examples": {
                  "Example": {
                    "value": {
                      "status": "OK",
                      "response": {
                        "participants": [
                          {
                            "sender_name": "[GDPR]",
                            "sender_email": "[GDPR]",
                            "sender_phone": "",
                            "sender_comment": "",
                            "sender_code": null,
                            "ticket_variation": "3 x sdfg",
                            "ticket_price": 255,
                            "created_at": "2018-07-03 20:15:10",
                            "payment_type": "normal",
                            "payment_OTH": null,
                            "claimed_at": null
                          },
                          {
                            "sender_name": "[GDPR]",
                            "sender_email": "[GDPR]",
                            "sender_phone": "",
                            "sender_comment": "",
                            "sender_code": null,
                            "ticket_variation": "2 x sdfg",
                            "ticket_price": 255,
                            "created_at": "2018-07-05 13:51:54",
                            "payment_type": "no payment",
                            "payment_OTH": "",
                            "claimed_at": null
                          }
                        ],
                        "participantCount": 2
                      },
                      "request": {
                        "ip": "123.123.123.123",
                        "user": "APITester",
                        "language": "Danish",
                        "datetime": "2023-01-17 14:29:56",
                        "query": {
                          "limit": 5
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request - The request could not be understood or was missing required parameters.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized - Authentication failed or user doesn't have permissions for the requested operation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "default": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Form-encoded paging, ordering and search options.",
          "content": {
            "application/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "offset": {
                    "type": "integer",
                    "default": 0,
                    "description": "Number of rows to skip. Non-numeric values and values below 0 become 0."
                  },
                  "limit": {
                    "type": "integer",
                    "default": 10,
                    "description": "Maximum rows to return. Non-numeric values become 0; values above 100 are capped at 100."
                  },
                  "order": {
                    "type": "string",
                    "description": "Order items by active or claimed participants. Accepts \"active\" or \"claimed\" as values."
                  },
                  "search": {
                    "type": "string",
                    "description": "Search participants by text."
                  }
                }
              }
            }
          }
        }
      },
      "parameters": [
        {
          "name": "slug",
          "in": "path",
          "required": true,
          "description": "Slug of the event whose participants are listed.",
          "schema": {
            "type": "string"
          }
        }
      ]
    }
  },
  "components": {
    "schemas": {
      "Response": {
        "type": "object",
        "title": "",
        "description": "Note: Live API server doesn't return request object.",
        "x-examples": {
          "example": {
            "status": "OK",
            "response": "API is live and you are logged in as APITester from company Villa Copenhagen API test.",
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2020-10-26 12:38:58"
            }
          }
        },
        "properties": {
          "status": {
            "type": "string"
          },
          "response": {
            "type": "string"
          },
          "request": {
            "type": "array",
            "items": {}
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "Error": {
        "description": "Error structure.",
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "code": {
            "type": "number"
          },
          "status": {
            "type": "number"
          }
        },
        "required": [
          "name",
          "message",
          "code",
          "status"
        ],
        "x-examples": {
          "Example of anuauthorized request / incorrect token": {
            "name": "Unauthorized",
            "message": "Your request was made with invalid credentials.",
            "code": 0,
            "status": 401
          }
        }
      },
      "Item": {
        "title": "Item",
        "type": "object",
        "description": "Be aware: Unset parameter can be null .",
        "x-examples": {
          "Example": {
            "code": "77xrB3e44T",
            "order_id": "devOEVLB1EW33",
            "group_code": "ds7cd5dsfe",
            "item_type": "Ticket",
            "item_type_identification": "Ticket",
            "item_title": "xxMinus ticket test - ABC",
            "event_title": "xxMinus ticket test",
            "ticket_title": "ABC",
            "is_token": false,
            "item_info": "10.05.2022",
            "status": 3,
            "status_name": "Used",
            "amount": 10,
            "vat": 25,
            "vat_value": 2,
            "currency": "DKK",
            "remaining_amount": 0,
            "remaining_pieces": 0,
            "available_claim": false,
            "available_piece_claim": false,
            "available_amount_claim": false,
            "available_group_claim": true,
            "available_cancel": false,
            "available_discard": false,
            "speed_claim": false,
            "available_refund": false,
            "available_piece_refund": false,
            "available_amount_refund": true,
            "company_name": "Lukas X Company",
            "validity": "2022-05-10 00:00:00",
            "sender_name": "xxx",
            "sender_email": "no-email@lifepeaks.dk",
            "sender_phone": "",
            "sender_company_use": false,
            "sender_company_name": "",
            "sender_company_address": "",
            "sender_company_city": "",
            "sender_company_postcode": "",
            "sender_company_country": "",
            "reciever_name": "xxx",
            "reciever_email": "no-email@lifepeaks.dk",
            "reciever_phone": "",
            "created_at": "2022-05-12 15:31:57",
            "language": "en-GB",
            "delayed_deliver": false,
            "deliver_at": "2022-05-11 14:42:36",
            "delivered_at": "2022-05-16 15:09:51",
            "delivered_to_post_at": null,
            "greetings_text": "",
            "image": null,
            "variant_description": "<p>aaaa</p>",
            "channel": "online-pos",
            "api_receipt_text": "Hello boys and girls!",
            "claim_error": "Ticket is not valid, It's used. Code of Ticket 77xrB3e44T",
            "refund_error": "Ticket (77xrB3e44T) cannot be refunded. It's not used.",
            "claim_url": "https://app.lifepeaks.dk/l/77xrB3e44T"
          }
        },
        "properties": {
          "code": {
            "type": "string",
            "description": "Code of Gift Card, Special offer or other item."
          },
          "order_id": {
            "type": "string",
            "description": "Id/code of whole order."
          },
          "group_code": {
            "type": "string",
            "description": "Code of whole group."
          },
          "item_type": {
            "type": "string",
            "description": "Item type or translated equivalent.",
            "enum": [
              "Gift Card",
              "Gift Card Variation",
              "Discounted Gift Card for Employees",
              "Discounted Gift Card for Customers",
              "Private Discounted Gift Card for Customers",
              "Ticket Coupon",
              "Add-on Voucher",
              "Special Offer",
              "Ticket",
              "Order",
              "Credit",
              "Inactive Item"
            ]
          },
          "item_type_identification": {
            "type": "string",
            "description": "Item type (everytime English version)",
            "enum": [
              "Gift Card",
              "Gift Card Variation",
              "Discounted Gift Card for Employees",
              "Discounted Gift Card for Customers",
              "Private Discounted Gift Card for Customers",
              "Ticket Coupon",
              "Add-on Voucher",
              "Special Offer",
              "Ticket",
              "Order",
              "Credit",
              "Inactive Item"
            ]
          },
          "item_title": {
            "type": "string",
            "description": "Title of item like Gift Card,Discounted Gift Card for Employees, gift card variation name, ticket name etc."
          },
          "event_title": {
            "type": "string",
            "nullable": true,
            "description": "Title of event for tickets."
          },
          "ticket_title": {
            "type": "string",
            "nullable": true,
            "description": "Title of Ticket."
          },
          "is_token": {
            "type": "boolean",
            "description": "If ticket is token (add-on ticket)."
          },
          "item_info": {
            "type": "string",
            "description": "Additional info about item."
          },
          "status": {
            "type": "integer",
            "description": "Id of status"
          },
          "status_name": {
            "type": "string",
            "enum": [
              "Used",
              "Cancelled",
              "Expired",
              "Paid",
              "Awaiting Payment"
            ],
            "description": "Status name or translated equivalent.\n\nID status relation: 3 - Used, 4 - Cancelled, 5 - Expired, 6 - Paid, 10 - Awaiting Payment."
          },
          "amount": {
            "type": "float",
            "description": "Amount/value of item."
          },
          "vat": {
            "type": "integer",
            "description": "VAT %"
          },
          "vat_value": {
            "type": "float",
            "description": "VAT amount"
          },
          "currency": {
            "type": "string",
            "description": "Currency code like DKK."
          },
          "remaining_amount": {
            "type": "float",
            "description": "Remaining amount."
          },
          "remaining_pieces": {
            "type": "integer",
            "description": "Remaining number of pieces (for vouchers etc.)."
          },
          "available_claim": {
            "type": "boolean",
            "description": "If claim globally is available. If not see 'claim_error' for error message."
          },
          "available_piece_claim": {
            "type": "boolean",
            "description": "If claim by number of pieces (for vouchers etc.) is available."
          },
          "available_amount_claim": {
            "type": "boolean",
            "description": "If claim by amount (for gift card, special offers etc.) is available."
          },
          "available_group_claim": {
            "type": "boolean",
            "description": "If claim for whole order is available."
          },
          "available_cancel": {
            "type": "boolean",
            "description": "If cancel of item is available."
          },
          "available_discard": {
            "type": "boolean",
            "description": "If discard of item is available."
          },
          "speed_claim": {
            "type": "boolean",
            "description": "If speed claim is available (mainly for mobile app)."
          },
          "available_refund": {
            "type": "boolean",
            "description": "If refund globally is available. If not see 'refund_error' for error message."
          },
          "available_piece_refund": {
            "type": "boolean",
            "description": "If refund by number of pieces (for vouchers etc.) is available."
          },
          "available_amount_refund": {
            "type": "boolean",
            "description": "If refund by amount (for gift card, special offers etc.) is available."
          },
          "company_name": {
            "type": "string",
            "description": "Name of company of item."
          },
          "validity": {
            "type": "string",
            "description": "Validity of item."
          },
          "sender_name": {
            "type": "string",
            "description": "Name of sender (customer buying item)."
          },
          "sender_email": {
            "type": "string",
            "description": "Email of sender (customer buying item)."
          },
          "sender_phone": {
            "type": "string",
            "description": "Phone of sender (customer buying item), only for Ticket Coupons.",
            "nullable": true
          },
          "sender_company_use": {
            "type": "boolean",
            "description": "If customer/sender selected s/he wants to use company."
          },
          "sender_company_name": {
            "type": "string",
            "description": "Name of sender's company.",
            "nullable": true
          },
          "sender_company_address": {
            "type": "string",
            "description": "Address of sender's company.",
            "nullable": true
          },
          "sender_company_city": {
            "type": "string",
            "description": "City of sender's company.",
            "nullable": true
          },
          "sender_company_postcode": {
            "type": "string",
            "description": "Postcode of sender's company.",
            "nullable": true
          },
          "sender_company_country": {
            "type": "string",
            "description": "Country of sender's company.",
            "nullable": true
          },
          "reciever_name": {
            "type": "string",
            "description": "Name of receiver."
          },
          "reciever_email": {
            "type": "string",
            "description": "Email of receiver."
          },
          "reciever_phone": {
            "type": "string",
            "description": "Phone of receiver.",
            "nullable": true
          },
          "created_at": {
            "type": "string",
            "description": "Time and date of item's creation."
          },
          "language": {
            "type": "string",
            "description": "Language which was used by customer when ordering item."
          },
          "delayed_deliver": {
            "type": "boolean",
            "description": "If customer wants to send item later (not imidiatelly)."
          },
          "deliver_at": {
            "type": "string",
            "description": "Time and date when customer wants item to be delivered."
          },
          "delivered_at": {
            "type": "string",
            "nullable": true,
            "description": "Time and date when item has been delivered."
          },
          "delivered_to_post_at": {
            "type": "string",
            "nullable": true,
            "description": "Time and date when item has been delivered to post."
          },
          "greetings_text": {
            "type": "string",
            "description": "Greetings text from sender.",
            "nullable": true
          },
          "image": {
            "type": "string",
            "nullable": true,
            "description": "Image url."
          },
          "channel": {
            "type": [
              "string",
              null
            ],
            "description": "Channel where item was sold."
          },
          "api_receipt_text": {
            "type": [
              "string",
              null
            ],
            "description": "Custom receipt text for the item."
          },
          "variant_description": {
            "type": "string",
            "nullable": true,
            "description": "Gc variation description in html (including tags, like &lt;p&gt;Hello&lt;/p&gt;)."
          },
          "claim_error": {
            "type": "string",
            "nullable": true,
            "description": "Error message describing why claim is not available for an item."
          },
          "refund_error": {
            "type": "string",
            "nullable": true,
            "description": "Error message describing why refund is not available for an item."
          },
          "claim_url": {
            "type": "string",
            "description": "Url for claiming item."
          },
          "pdf_url": {
            "type": "string",
            "description": "Direct public link to the item's gift card PDF (app.lifepeaks.dk/pdf/{order_id}/{code}). No login required. Append ?g for the personal greeting, ?r for the remaining value, or ?d=D to force a download."
          },
          "pdf_short_url": {
            "type": "string",
            "description": "Short public link to the same PDF (on app.lpeaks.dk) - the format recipients receive by email."
          }
        }
      },
      "ItemHeaders": {
        "title": "Item",
        "type": "object",
        "description": "Be aware: Unset parameter can be null .",
        "x-examples": {
          "Example": {
            "item_type": "Ticket",
            "item_type_identification": "Ticket",
            "item_title": "Event - ticket",
            "event_title": "Event",
            "ticket_title": "ticket",
            "is_token": false,
            "item_info": "10.05.2022",
            "status": 3,
            "status_name": "Used",
            "amount": 10,
            "vat": 25,
            "vat_value": 2,
            "currency": "DKK",
            "remaining_amount": 0,
            "remaining_pieces": 0,
            "company_name": "Lukas X Company",
            "validity": "2022-05-10 00:00:00",
            "created_at": "2022-05-12 15:31:57",
            "language": "en-GB"
          }
        },
        "properties": {
          "item_type": {
            "type": "string",
            "description": "Item type or translated equivalent.",
            "enum": [
              "Gift Card",
              "Gift Card Variation",
              "Discounted Gift Card for Employees",
              "Discounted Gift Card for Customers",
              "Private Discounted Gift Card for Customers",
              "Ticket Coupon",
              "Add-on Voucher",
              "Special Offer",
              "Ticket",
              "Order",
              "Credit",
              "Inactive Item"
            ]
          },
          "item_type_identification": {
            "type": "string",
            "description": "Item type (everytime English version)",
            "enum": [
              "Gift Card",
              "Gift Card Variation",
              "Discounted Gift Card for Employees",
              "Discounted Gift Card for Customers",
              "Private Discounted Gift Card for Customers",
              "Ticket Coupon",
              "Add-on Voucher",
              "Special Offer",
              "Ticket",
              "Order",
              "Credit",
              "Inactive Item"
            ]
          },
          "item_title": {
            "type": "string",
            "description": "Title of item like Gift Card,Discounted Gift Card for Employees, gift card variation name, ticket name etc."
          },
          "event_title": {
            "type": "string",
            "nullable": true,
            "description": "Title of event for tickets."
          },
          "ticket_title": {
            "type": "string",
            "nullable": true,
            "description": "Title of Ticket."
          },
          "is_token": {
            "type": "boolean",
            "description": "If ticket is token (add-on ticket)."
          },
          "item_info": {
            "type": "string",
            "description": "Additional info about item."
          },
          "status": {
            "type": "integer",
            "description": "Id of status"
          },
          "status_name": {
            "type": "string",
            "enum": [
              "Used",
              "Cancelled",
              "Expired",
              "Paid",
              "Awaiting Payment"
            ],
            "description": "Status name or translated equivalent.\n\nID status relation: 3 - Used, 4 - Cancelled, 5 - Expired, 6 - Paid, 10 - Awaiting Payment."
          },
          "amount": {
            "type": "float",
            "description": "Amount/value of item."
          },
          "vat": {
            "type": "integer",
            "description": "VAT %"
          },
          "vat_value": {
            "type": "integer",
            "description": "VAT amount"
          },
          "currency": {
            "type": "string",
            "description": "Currency code like DKK."
          },
          "remaining_amount": {
            "type": "float",
            "description": "Remaining amount."
          },
          "company_name": {
            "type": "string",
            "description": "Name of company of item."
          },
          "validity": {
            "type": "string",
            "description": "Validity of item."
          },
          "created_at": {
            "type": "string",
            "description": "Time and date of item's creation."
          },
          "language": {
            "type": "string",
            "description": "Language which was used by customer when ordering item."
          }
        }
      },
      "ItemClaimedActions": {
        "title": "Action",
        "type": "object",
        "description": "Be aware: Unset parameter can be null .",
        "x-examples": {
          "Example": {
            "transaction_id": 123465,
            "status": 3,
            "status_name": "Used",
            "date": "2024-09-12",
            "time": "01:36:48",
            "item_type": "Gift Card Variation",
            "item_type_identification": "Gift Card Variation",
            "code": "XXXXXXXXXXX",
            "amount": 200,
            "claim_note": null,
            "claimed_by_username": "Tester",
            "claimed_by_company_name": "Super Company",
            "company_name": "Super Company"
          }
        },
        "properties": {
          "transaction_id": {
            "type": "integer",
            "description": "Transaction ID"
          },
          "status": {
            "type": "integer",
            "description": "Id of status"
          },
          "status_name": {
            "type": "string",
            "enum": [
              "Used",
              "Cancelled",
              "Expired",
              "Paid",
              "Awaiting Payment"
            ],
            "description": "Status name or translated equivalent.\n\nID status relation: 3 - Used, 4 - Cancelled, 5 - Expired, 6 - Paid, 10 - Awaiting Payment."
          },
          "date": {
            "type": "string",
            "description": "Date of item's action."
          },
          "time": {
            "type": "string",
            "description": "Date of item's action."
          },
          "item_type": {
            "type": "string",
            "description": "Item type or translated equivalent.",
            "enum": [
              "Gift Card",
              "Gift Card Variation",
              "Discounted Gift Card for Employees",
              "Discounted Gift Card for Customers",
              "Private Discounted Gift Card for Customers",
              "Ticket Coupon",
              "Add-on Voucher",
              "Special Offer",
              "Ticket",
              "Order",
              "Credit",
              "Inactive Item"
            ]
          },
          "item_type_identification": {
            "type": "string",
            "description": "Item type (everytime English version)",
            "enum": [
              "Gift Card",
              "Gift Card Variation",
              "Discounted Gift Card for Employees",
              "Discounted Gift Card for Customers",
              "Private Discounted Gift Card for Customers",
              "Ticket Coupon",
              "Add-on Voucher",
              "Special Offer",
              "Ticket",
              "Order",
              "Credit",
              "Inactive Item"
            ]
          },
          "code": {
            "type": "string",
            "description": "Item's code."
          },
          "amount": {
            "type": "float",
            "description": "Amount/value of item."
          },
          "claim_note": {
            "type": "string",
            "description": "Claim note (reservation number)."
          },
          "claimed_by_username": {
            "type": "string",
            "description": "Username of user who claimed item."
          },
          "claimed_by_company_name": {
            "type": "string",
            "description": "Company name of user who claimed item."
          },
          "currency": {
            "type": "string",
            "description": "Currency code like DKK."
          },
          "company_name": {
            "type": "string",
            "description": "Name of company of item."
          }
        }
      },
      "Subscriber": {
        "title": "Subscriber",
        "type": "object",
        "description": "Subscriber Object.",
        "x-examples": {
          "Example": {
            "id": "3183",
            "company": "acme-hotels",
            "email": "buyer@example.com"
          }
        },
        "properties": {
          "id": {
            "type": "string",
            "description": "Id."
          },
          "company": {
            "type": "string",
            "description": "Company slug."
          },
          "email": {
            "type": "string",
            "description": "E-mail"
          }
        }
      },
      "Event": {
        "title": "Event",
        "type": "object",
        "description": "Event Object.",
        "x-examples": {
          "Example": {
            "name": "Hotel Party nr.1",
            "slug": "hotel-party-nr1",
            "private": false,
            "online": true,
            "venue": "London",
            "venue_address": "",
            "venue_postcode": " ",
            "date_activate": null,
            "date_deactivate": null,
            "sold": 435,
            "blocked": 0,
            "all": 1773
          }
        },
        "properties": {
          "name": {
            "type": "string",
            "description": "Name."
          },
          "slug": {
            "type": "string",
            "description": "Event slug identification."
          },
          "private": {
            "type": "boolean",
            "description": "If event is private."
          },
          "online": {
            "type": "boolean",
            "description": "If event is online (visible in order form)."
          },
          "venue": {
            "type": "string",
            "description": "Venue."
          },
          "venue_address": {
            "type": "string",
            "description": "Venue address."
          },
          "venue_postcode": {
            "type": "string",
            "description": "Venue postcode."
          },
          "date_activate": {
            "type": "string",
            "nullable": true,
            "description": "Time and date of item's activation (when it goes online)."
          },
          "date_deactivate": {
            "type": "string",
            "nullable": true,
            "description": "Time and date of item's deactivation (when it goes offline)."
          },
          "sold": {
            "type": "integer",
            "description": "Summary of sold tickets for this event."
          },
          "blocked": {
            "type": "integer",
            "description": "Summary of blocked tickets for this event (tickets which have users in basket and we wait for payment to be finished)."
          },
          "all": {
            "type": "integer",
            "description": "Summary of all tickets for this event."
          }
        }
      },
      "Participant": {
        "title": "Participant",
        "type": "object",
        "description": "Participant Object.",
        "x-examples": {
          "Example": {
            "sender_name": "[GDPR]",
            "sender_email": "[GDPR]",
            "sender_phone": "",
            "sender_comment": "",
            "sender_code": null,
            "ticket_variation": "3 x sdfg",
            "ticket_price": 255,
            "created_at": "2018-07-03 20:15:10",
            "payment_type": "normal",
            "payment_OTH": null,
            "claimed_at": null
          }
        },
        "properties": {
          "sender_name": {
            "type": "string",
            "description": "Sender Name."
          },
          "sender_email": {
            "type": "string",
            "description": "Sender E-mail."
          },
          "sender_phone": {
            "type": "string",
            "description": "Sender Phone."
          },
          "sender_comment": {
            "type": "string",
            "description": "Sender Comment."
          },
          "sender_code": {
            "type": "string",
            "nullable": true,
            "description": "Sender code (ref.no)."
          },
          "ticket_variation": {
            "type": "string",
            "description": "Ticket name."
          },
          "ticket_price": {
            "type": "integer",
            "nullable": true,
            "description": "Ticket price."
          },
          "created_at": {
            "type": "string",
            "description": "Time and date of item's creation."
          },
          "payment_type": {
            "type": "string",
            "enum": [
              "normal",
              "no payment",
              "payment by invoice",
              "API created - Payment with invoice",
              "OTH",
              "onpage",
              "NO PAYMENT - added participant",
              "by CREDIT",
              "Manually claimed credit"
            ],
            "description": "Type of payment. "
          },
          "payment_OTH": {
            "type": "string",
            "nullable": true,
            "description": "Payment comment for invoice/OTH/..."
          },
          "claimed_at": {
            "type": "string",
            "nullable": true,
            "description": "Time and date of item's fully claim action."
          }
        }
      },
      "ListFilter": {
        "description": "",
        "type": "object",
        "x-examples": {
          "Example": {
            "offset": 10,
            "limit": 20,
            "order": "desc",
            "date_from": "2020-01-01",
            "date_to": "2020-01-05"
          }
        },
        "properties": {
          "offset": {
            "type": "number",
            "nullable": true,
            "default": 0,
            "description": "The number of items to skip. When it is less than 0 than it will be automatically reset to 0."
          },
          "limit": {
            "type": "number",
            "nullable": true,
            "default": 10,
            "description": "The number of items to return. When it is less than 1 than it will be automatically reset to 1 and the number higher than 100 will be reset to 100."
          },
          "order": {
            "type": "string",
            "nullable": true,
            "enum": [
              "desc",
              "asc"
            ],
            "default": "desc",
            "description": "Can be also asc otherwise it uses desc. It indicates ascending or descending order of returning items."
          },
          "date_from": {
            "type": "string",
            "description": "API will return items newer (including) than this date when used."
          },
          "date_to": {
            "type": "string",
            "description": "API will return items older (including) than this date when used."
          },
          "order_id": {
            "type": "string",
            "description": "Id of order."
          },
          "search": {
            "type": "string",
            "description": "Search text for searching by code, sender and receiver name/email and few other items to search in. Must be minimum 5 characters long otherwise error will be shown."
          }
        }
      },
      "ResponseWithItems": {
        "type": "object",
        "title": "",
        "description": "Note: Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": {
              "items": [
                {
                  "code": "77xrB3e44T",
                  "order_id": "devOEVLB1EW33",
                  "group_code": "ds7cd5dsfe",
                  "item_type": "Ticket",
                  "item_type_identification": "Ticket",
                  "item_title": "xxMinus ticket test - ABC",
                  "event_title": "xxMinus ticket test",
                  "ticket_title": "ABC",
                  "is_token": false,
                  "item_info": "10.05.2022",
                  "status": 3,
                  "status_name": "Used",
                  "amount": 10,
                  "vat": 25,
                  "vat_value": 2,
                  "currency": "DKK",
                  "remaining_amount": 0,
                  "remaining_pieces": 0,
                  "available_claim": false,
                  "available_piece_claim": false,
                  "available_amount_claim": false,
                  "available_group_claim": true,
                  "available_cancel": false,
                  "available_discard": false,
                  "speed_claim": false,
                  "available_refund": false,
                  "available_piece_refund": false,
                  "available_amount_refund": true,
                  "company_name": "Lukas X Company",
                  "validity": "2022-05-10 00:00:00",
                  "sender_name": "xxx",
                  "sender_email": "no-email@lifepeaks.dk",
                  "sender_phone": "",
                  "sender_company_use": false,
                  "sender_company_name": "",
                  "sender_company_address": "",
                  "sender_company_city": "",
                  "sender_company_postcode": "",
                  "sender_company_country": "",
                  "reciever_name": "xxx",
                  "reciever_email": "no-email@lifepeaks.dk",
                  "reciever_phone": "",
                  "created_at": "2022-05-12 15:31:57",
                  "language": "en-GB",
                  "delayed_deliver": false,
                  "deliver_at": "2022-05-11 14:42:36",
                  "delivered_at": "2022-05-16 15:09:51",
                  "delivered_to_post_at": null,
                  "greetings_text": "",
                  "image": null,
                  "variant_description": "<p>aaaa</p>",
                  "channel": "online-pos",
                  "api_receipt_text": "Hello boys and girls!",
                  "claim_error": "Ticket is not valid, It's used. Code of Ticket 77xrB3e44T",
                  "refund_error": "Ticket (77xrB3e44T) cannot be refunded. It's not used.",
                  "claim_url": "https://app.lifepeaks.dk/l/77xrB3e44T"
                }
              ],
              "itemsCount": 1,
              "filter": {
                "offset": 0,
                "limit": 10,
                "order": "desc"
              }
            },
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2020-10-27 16:25:54",
              "query": {
                "limit": "1"
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "items",
              "itemsCount"
            ],
            "properties": {
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Item"
                }
              },
              "itemsCount": {
                "type": "integer"
              },
              "filter": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseWithItemsCreateGc": {
        "type": "object",
        "title": "",
        "description": "Note: Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": {
              "items": [
                {
                  "code": "77xrB3e44T",
                  "order_id": "devOEVLB1EW33",
                  "group_code": "ds7cd5dsfe",
                  "item_type": "Ticket",
                  "item_type_identification": "Ticket",
                  "item_title": "xxMinus ticket test - ABC",
                  "event_title": "xxMinus ticket test",
                  "ticket_title": "ABC",
                  "is_token": false,
                  "item_info": "10.05.2022",
                  "status": 3,
                  "status_name": "Used",
                  "amount": 10,
                  "vat": 25,
                  "vat_value": 2,
                  "currency": "DKK",
                  "remaining_amount": 0,
                  "remaining_pieces": 0,
                  "available_claim": false,
                  "available_piece_claim": false,
                  "available_amount_claim": false,
                  "available_group_claim": true,
                  "available_cancel": false,
                  "available_discard": false,
                  "speed_claim": false,
                  "available_refund": false,
                  "available_piece_refund": false,
                  "available_amount_refund": true,
                  "company_name": "Lukas X Company",
                  "validity": "2022-05-10 00:00:00",
                  "sender_name": "xxx",
                  "sender_email": "no-email@lifepeaks.dk",
                  "sender_phone": "",
                  "sender_company_use": false,
                  "sender_company_name": "",
                  "sender_company_address": "",
                  "sender_company_city": "",
                  "sender_company_postcode": "",
                  "sender_company_country": "",
                  "reciever_name": "xxx",
                  "reciever_email": "no-email@lifepeaks.dk",
                  "reciever_phone": "",
                  "created_at": "2022-05-12 15:31:57",
                  "language": "en-GB",
                  "delayed_deliver": false,
                  "deliver_at": "2022-05-11 14:42:36",
                  "delivered_at": "2022-05-16 15:09:51",
                  "delivered_to_post_at": null,
                  "greetings_text": "",
                  "image": null,
                  "variant_description": "<p>aaaa</p>",
                  "channel": "online-pos",
                  "api_receipt_text": "Hello boys and girls!",
                  "claim_error": "Ticket is not valid, It's used. Code of Ticket 77xrB3e44T",
                  "refund_error": "Ticket (77xrB3e44T) cannot be refunded. It's not used.",
                  "claim_url": "https://app.lifepeaks.dk/l/77xrB3e44T"
                }
              ],
              "itemsCount": 1,
              "filter": {
                "offset": 0,
                "limit": 10,
                "order": "desc"
              },
              "order_id": "devOEVLB1EW33"
            },
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2020-10-27 16:25:54",
              "query": {
                "limit": "1"
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "items",
              "itemsCount"
            ],
            "properties": {
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Item"
                }
              },
              "itemsCount": {
                "type": "integer"
              },
              "filter": {
                "$ref": "#/components/schemas/ListFilter"
              },
              "order_id": {
                "type": "string",
                "description": "Order ID of created gift card order."
              }
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseWithItemsHeaders": {
        "type": "object",
        "title": "",
        "description": "Note: Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": {
              "items": [
                {
                  "item_type": "Ticket",
                  "item_type_identification": "Ticket",
                  "item_title": "Event - ticket",
                  "event_title": "Event",
                  "ticket_title": "ticket",
                  "is_token": false,
                  "item_info": "10.05.2022",
                  "status": 3,
                  "status_name": "Used",
                  "amount": 10,
                  "vat": 25,
                  "vat_value": 2,
                  "currency": "DKK",
                  "remaining_amount": 0,
                  "remaining_pieces": 0,
                  "company_name": "Lukas X Company",
                  "validity": "2022-05-10 00:00:00",
                  "created_at": "2022-05-12 15:31:57",
                  "language": "en-GB"
                }
              ],
              "itemsCount": 1
            },
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2020-10-27 16:25:54",
              "post": {
                "date_from": "2024-09-03",
                "date_to": "2024-09-03"
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "items",
              "itemsCount"
            ],
            "properties": {
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ItemHeaders"
                }
              },
              "itemsCount": {
                "type": "integer"
              },
              "filter": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseWithItemsClaimedActions": {
        "type": "object",
        "title": "",
        "description": "Note: Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": {
              "items": [
                {
                  "transaction_id": 123456,
                  "status": 3,
                  "status_name": "Used",
                  "date": "2024-09-12",
                  "time": "01:36:48",
                  "item_type": "Gift Card Variation",
                  "item_type_identification": "Gift Card Variation",
                  "code": "XXXXXXXXXXX",
                  "amount": 200,
                  "claim_note": null,
                  "claimed_by_username": "Tester",
                  "claimed_by_company_name": "Super Company",
                  "currency": "DKK",
                  "company_name": "Super Company"
                }
              ],
              "itemsCount": 1,
              "filter": {
                "offset": 0,
                "limit": 10,
                "order": "desc",
                "filter": {
                  "date_from": "2024-09-03",
                  "date_to": "2024-09-03"
                }
              }
            },
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2024-09-03 16:25:54",
              "post": {
                "date_from": "2024-09-03",
                "date_to": "2024-09-03"
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "items",
              "itemsCount"
            ],
            "properties": {
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ItemClaimedActions"
                }
              },
              "itemsCount": {
                "type": "integer"
              }
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseAfterClaim": {
        "type": "object",
        "title": "",
        "description": "Note: Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": {
              "info": "Gift Card partly claimed",
              "message": "Successfully claimed 1 DKK.",
              "code": "2fdeUUnAkN",
              "remaining_value": 946,
              "remaining_number": null,
              "partly_claimed": true,
              "claimed_amount": 1
            },
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2020-10-27 16:25:54",
              "query": {
                "limit": "1"
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "info",
              "message",
              "remaining_value",
              "remaining_number",
              "partly_claimed"
            ],
            "properties": {
              "info": {
                "type": "string",
                "description": "Simple info text about what was done like 'Gift Card partly claimed'."
              },
              "message": {
                "type": "string",
                "description": "Message about how much amount/number was claimed."
              },
              "remaining_value": {
                "type": "integer",
                "description": "Remaining value/amount after claim."
              },
              "remaining_number": {
                "type": "integer",
                "description": "Remaining number of pieces after claim.",
                "nullable": true
              },
              "partly_claimed": {
                "type": "boolean",
                "description": "If item was partly claimed (otherwise fully claimed)."
              },
              "claimed_amount": {
                "type": "integer",
                "description": "Claimed value/amount."
              }
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseAfterRefund": {
        "type": "object",
        "title": "",
        "description": "Note: Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": {
              "info": "Gift Card refunded",
              "message": "Gift Card rVwvAH4abb has been fully refunded!",
              "remaining_value": 20,
              "remaining_number": 1,
              "partly_refunded": false
            },
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2020-10-27 16:25:54",
              "query": {
                "limit": "1"
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "info",
              "message",
              "remaining_value",
              "remaining_number",
              "partly_refunded"
            ],
            "properties": {
              "info": {
                "type": "string",
                "description": "Simple info text about what was done like 'Gift Card partly refunded'."
              },
              "message": {
                "type": "string",
                "description": "Message about how much amount/number was refunded."
              },
              "remaining_value": {
                "type": "integer",
                "description": "Remaining value/amount after refund."
              },
              "remaining_number": {
                "type": "integer",
                "description": "Remaining number of pieces after refund.",
                "nullable": true
              },
              "partly_refunded": {
                "type": "boolean",
                "description": "If item was partly refunded (otherwise fully refunded)."
              }
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseAfterActivation": {
        "type": "object",
        "title": "",
        "description": "Note: Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": {
              "message": "Item zF92Emxn_c has been activated! Value: 123. Validity: 06.05.2026.",
              "amount": 123,
              "validity": "06.05.2026"
            },
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2020-10-27 16:25:54",
              "query": {
                "limit": "1"
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "message",
              "amount",
              "validity"
            ],
            "properties": {
              "message": {
                "type": "string",
                "description": "Message about what was activated."
              },
              "amount": {
                "type": "integer",
                "description": "Amount of activated item.",
                "nullable": true
              },
              "validity": {
                "type": "string",
                "description": "Validity in d.m.Y format."
              }
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseSubscribers": {
        "type": "object",
        "title": "",
        "description": "Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": [
              {
                "id": "3183",
                "company": "acme-hotels",
                "email": "abc@lifepeaks.dk",
                "name": "Lukas"
              },
              {
                "id": "3182",
                "company": "acme-hotels",
                "email": "def@lifepeaks.dk",
                "name": "Lukas X"
              }
            ],
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2020-10-27 16:25:54",
              "query": {
                "company": "acme-hotels"
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Subscriber"
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseWithEvents": {
        "type": "object",
        "title": "",
        "description": "Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": {
              "events": [
                {
                  "name": "Hotel Party nr.1",
                  "slug": "hotel-party-nr1",
                  "private": false,
                  "online": true,
                  "venue": "London",
                  "venue_address": "",
                  "venue_postcode": " ",
                  "date_activate": null,
                  "date_deactivate": null,
                  "sold": 435,
                  "blocked": 0,
                  "all": 1773
                },
                {
                  "name": "xxxx",
                  "slug": "xxxx-13",
                  "private": false,
                  "online": true,
                  "venue": "Lukas X Company",
                  "venue_address": "Address",
                  "venue_postcode": "Town",
                  "date_activate": null,
                  "date_deactivate": null,
                  "sold": 143,
                  "blocked": 0,
                  "all": 200
                }
              ],
              "eventsCount": 2,
              "filter": {
                "offset": 0,
                "limit": 2,
                "online": "true",
                "private": false
              }
            },
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2020-10-27 16:25:54",
              "query": {
                "company": "acme-hotels"
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "events",
              "eventsCount"
            ],
            "properties": {
              "events": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Event"
                }
              },
              "eventsCount": {
                "type": "integer"
              },
              "filter": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseWithParticipants": {
        "type": "object",
        "title": "",
        "description": "Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": {
              "participants": [
                {
                  "sender_name": "[GDPR]",
                  "sender_email": "[GDPR]",
                  "sender_phone": "",
                  "sender_comment": "",
                  "sender_code": null,
                  "ticket_variation": "3 x sdfg",
                  "ticket_price": 255,
                  "created_at": "2018-07-03 20:15:10",
                  "payment_type": "normal",
                  "payment_OTH": null,
                  "claimed_at": null
                },
                {
                  "sender_name": "[GDPR]",
                  "sender_email": "[GDPR]",
                  "sender_phone": "",
                  "sender_comment": "",
                  "sender_code": null,
                  "ticket_variation": "2 x sdfg",
                  "ticket_price": 255,
                  "created_at": "2018-07-05 13:51:54",
                  "payment_type": "no payment",
                  "payment_OTH": "",
                  "claimed_at": null
                },
                {
                  "sender_name": "[GDPR]",
                  "sender_email": "[GDPR]",
                  "sender_phone": "",
                  "sender_comment": "",
                  "sender_code": null,
                  "ticket_variation": "sdfg",
                  "ticket_price": null,
                  "created_at": "2018-07-05 15:37:16",
                  "payment_type": "normal",
                  "payment_OTH": null,
                  "claimed_at": null
                },
                {
                  "sender_name": "[GDPR]",
                  "sender_email": "[GDPR]",
                  "sender_phone": "",
                  "sender_comment": "",
                  "sender_code": null,
                  "ticket_variation": "sdfg",
                  "ticket_price": null,
                  "created_at": "2018-07-05 15:37:16",
                  "payment_type": "normal",
                  "payment_OTH": null,
                  "claimed_at": null
                },
                {
                  "sender_name": "[GDPR]",
                  "sender_email": "[GDPR]",
                  "sender_phone": "",
                  "sender_comment": "",
                  "sender_code": null,
                  "ticket_variation": "2 x sdfg",
                  "ticket_price": 255,
                  "created_at": "2021-05-27 08:19:11",
                  "payment_type": "normal",
                  "payment_OTH": null,
                  "claimed_at": null
                }
              ],
              "participantCount": 5
            },
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2023-01-17 14:29:56",
              "query": {
                "limit": 5
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "participants",
              "participantCount"
            ],
            "properties": {
              "participants": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Participant"
                }
              },
              "participantCount": {
                "type": "integer"
              },
              "filter": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          },
          "request": {
            "type": "object",
            "required": [
              "ip",
              "user",
              "language",
              "datetime"
            ],
            "properties": {
              "ip": {
                "type": "string",
                "minLength": 1
              },
              "user": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "minLength": 1
              },
              "datetime": {
                "type": "string",
                "minLength": 1
              },
              "query": {
                "$ref": "#/components/schemas/ListFilter"
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "ResponseWithGcValueModifications": {
        "type": "object",
        "title": "",
        "description": "Live API server doesn't return request object.",
        "x-examples": {
          "Example": {
            "status": "OK",
            "response": [
              {
                "id": 499,
                "name": "API Campaign Added 10%",
                "modification": "added-value",
                "amount_from": 10,
                "amount_to": 100,
                "reduced_price": null,
                "added_value": 10
              },
              {
                "id": 498,
                "name": "API Campaign Discount 10%",
                "modification": "discount",
                "amount_from": null,
                "amount_to": null,
                "reduced_price": 10,
                "added_value": null
              }
            ],
            "request": {
              "ip": "123.123.123.123",
              "user": "APITester",
              "language": "Danish",
              "datetime": "2023-01-17 14:29:56",
              "query": {
                "limit": 5
              }
            }
          }
        },
        "properties": {
          "status": {
            "type": "string",
            "minLength": 1
          },
          "response": {
            "type": "object",
            "required": [
              "id",
              "name",
              "modification",
              "amount_from",
              "amount_to",
              "reduced_price",
              "added_value"
            ],
            "properties": {
              "id": {
                "type": "integer"
              },
              "name": {
                "type": "string"
              },
              "modification": {
                "type": "string",
                "enum": [
                  "discount",
                  "added-value"
                ]
              },
              "amount_from": {
                "type": "integer",
                "nullable": true,
                "description": "Minimum amount which can be used. It can be null when it is not restricted."
              },
              "amount_to": {
                "type": "integer",
                "nullable": true,
                "description": "Maximum amount which can be used. It can be null when it is not restricted."
              },
              "reduced_price": {
                "type": "integer",
                "nullable": true,
                "description": "Amount reduced in % from gift card price. It will be null for added-value type. Example 20 means for 100DKK gift card you pay 80DKK for 100DKK value."
              },
              "added_value": {
                "type": "integer",
                "nullable": true,
                "description": "Amount added in % to gift card value. It will be null for discount type. Example 20 means for 100DKK gift card you get value of 120DKK for 100DKK."
              }
            }
          }
        },
        "required": [
          "status",
          "response"
        ]
      },
      "TokenResponse": {
        "type": "object",
        "properties": {
          "access_token": {
            "type": "string",
            "description": "The Bearer token to send in the Authorization header."
          },
          "expires_in": {
            "type": "integer",
            "description": "Access token lifetime in seconds. Configured to 86400 (24 hours).",
            "example": 86400
          },
          "token_type": {
            "type": "string",
            "description": "Always \"Bearer\".",
            "example": "Bearer"
          },
          "scope": {
            "type": "string",
            "description": "Scope granted to the client, e.g. \"admin\".",
            "example": "admin"
          },
          "refresh_token": {
            "type": "string",
            "description": "Issued for the password and authorization_code grants, and re-issued on every refresh_token exchange. Expires after 1209600 seconds (14 days)."
          }
        }
      },
      "TokenError": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string",
            "example": "invalid_grant"
          },
          "error_description": {
            "type": "string",
            "example": "Invalid username and password combination"
          }
        }
      }
    },
    "securitySchemes": {
      "oauth2": {
        "type": "oauth2",
        "description": "OAuth2. The password grant is the usual choice for server-to-server integrations; the authorization code grant is available for browser flows. See [Authorization of Request](/v1/authorization).",
        "flows": {
          "authorizationCode": {
            "authorizationUrl": "authorize",
            "tokenUrl": "token",
            "scopes": {
              "admin": "Do anything",
              "zapier": "For Subscribers action."
            },
            "refreshUrl": "token"
          },
          "password": {
            "tokenUrl": "token",
            "refreshUrl": "token",
            "scopes": {
              "admin": "Do anything",
              "zapier": "For Subscribers action."
            }
          }
        }
      }
    }
  },
  "tags": [
    {
      "name": "Actions",
      "description": "Global actions."
    },
    {
      "name": "Item",
      "description": "Item actions."
    },
    {
      "name": "Order",
      "description": "Order actions"
    },
    {
      "name": "Events",
      "description": "Events actions"
    },
    {
      "name": "Lists",
      "description": "Listing actions."
    }
  ],
  "security": [
    {
      "oauth2": [
        "admin",
        "zapier"
      ]
    }
  ],
  "externalDocs": {
    "description": "Find more info here",
    "url": "https://docs.google.com/document/d/1sVneOQlPdf9_8a3y05BHO7xO1913zXc4cEY_T0EzfjE"
  }
}
