{  "openapi": "3.0.0",  "info": {    "title": "Open Loyalty",    "description": "OpenLoyalty REST API\n# Authentication\n<!-- Redoc-Inject: <security-definitions> -->\n",    "version": "",    "license": {      "name": "Proprietary",      "url": "https://openloyalty.io"    },    "x-logo": {      "url": "https://docs.openloyalty.io/en/latest/_static/images/openloyalty.png",      "backgroundColor": "#47388C",      "altText": "Open Loyalty"    }  },  "servers": [    {      "url": "http://openloyalty.localhost"    }  ],  "security": [    {      "Bearer": []    },    {      "token": []    }  ],  "tags": [    {      "name": "Authorization",      "description": "These endpoints will allow you to authorize the user."    },    {      "name": "Achievement",      "description": "These endpoints will allow you to easily manage achievements."    },    {      "name": "ACL",      "description": "These endpoints will allow you to easily manage access control list."    },    {      "name": "Admin",      "description": "These endpoints will allow you to easily manage admin users."    },    {      "name": "Analytics",      "description": "These endpoints will allow you to easily analyze your data in Open Loyalty."    },    {      "name": "Audit",      "description": "These endpoints will allow you to see the list of actions taken in Open Loyalty."    },    {      "name": "Badge",      "description": "These endpoints will allow you to easily manage badges."    },    {      "name": "Billable Report",      "description": "These endpoints will allow you to retrieve data about billable members."    },    {      "name": "Bulk Action",      "description": "These endpoints will allow you to easily manage bulk actions in system."    },    {      "name": "Campaign",      "description": "These endpoints will allow you to easily manage campaigns."    },    {      "name": "Channels",      "description": "These endpoints will allow you to easily manage sales channels."    },    {      "name": "Custom Event",      "description": "These endpoints will allow you to retrieve custom events."    },    {      "name": "Data Analytics",      "description": "These endpoints will allow you to retrieve data for analytical dashboards and graphs"    },    {      "name": "Export",      "description": "These endpoints will allow you to export data."    },    {      "name": "Group Of Values",      "description": "These endpoints will allow you to easily manage group of values."    },    {      "name": "HealthCheck",      "description": "These endpoints will allow you to retrieve information about application version and status."    },    {      "name": "Import",      "description": "These endpoints will allow you to import data."    },    {      "name": "Language",      "description": "These endpoints will allow you to easily manage languages and translations."    },    {      "name": "Member",      "description": "These endpoints allow you to easily manage members."    },    {      "name": "Custom Field Schema",      "description": "These endpoints allow you to easily manage custom field schemas."    },    {      "name": "Custom Field Group",      "description": "These endpoints allow you to manage custom field groups and their definitions."    },    {      "name": "Custom Field Value",      "description": "These endpoints allow you to set and clear custom field values on entities."    },    {      "name": "Points",      "description": "These endpoints allow you to easily manage points and points transfers."    },    {      "name": "Reward",      "description": "These endpoints allow you to easily manage rewards."    },    {      "name": "Reward category",      "description": "These endpoints allow you to easily manage rewards categories."    },    {      "name": "Segment",      "description": "These endpoints allow you to easily manage segments."    },    {      "name": "Settings",      "description": "These endpoints allow you to easily manage settings."    },    {      "name": "Store",      "description": "These endpoints allow you to easily manage stores."    },    {      "name": "Tier",      "description": "These endpoints will allow you to easily manage tiers."    },    {      "name": "Transactions",      "description": "These endpoints will allow you to easily manage transactions."    },    {      "name": "Wallet",      "description": "These endpoints will allow you to easily manage wallets and wallet types."    },    {      "name": "Webhook event",      "description": "This documentation provides information on the data returned by each webhook event.<br><br>\nEach webhook has two identifiers: `requestId` and `messageId`.<br>\nThe `requestId` is a unique identifier for each attempt to send the webhook.<br>\nThe `messageId` is a unique identifier for the webhook itself, so it can be used to implement a deduplication mechanism.\n"    },    {      "name": "Webhook subscription",      "description": "These endpoints will allow you to easily manage webhooks subscriptions.<br><br/>\nOur requests sent to the endpoint configured in the webhook subscription are synchronous, so we wait for a response.<br>\nIn the case of 4xx or 5xx response codes, we retry sending the webhook once. \n"    }  ],  "externalDocs": {    "description": "Check our User Guide here!",    "url": "https://help.openloyalty.io/"  },  "paths": {    "/api/acl/role/{role}": {      "get": {        "tags": [          "ACL"        ],        "summary": "Get role details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all Role details.\n",        "operationId": "aclGetRole",        "parameters": [          {            "$ref": "#/components/parameters/role"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/Role"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "ACL"        ],        "summary": "Modify role",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows modifying specific Role.\n",        "operationId": "aclPutRole",        "parameters": [          {            "name": "role",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "\\d+"            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "role": {                    "$ref": "#/components/schemas/RoleFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "ACL"        ],        "summary": "Delete role",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows deleting specific Role.\n",        "operationId": "aclDeleteRole",        "parameters": [          {            "$ref": "#/components/parameters/role"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/acl/accesses": {      "get": {        "tags": [          "ACL"        ],        "summary": "Get permission accesses",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns available permission accesses.  \n\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "aclGetAccesses",        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/AclAvailableObject"                      }                    },                    "total": {                      "properties": {                        "all": {                          "example": 0                        }                      },                      "type": "object"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/acl/role": {      "get": {        "tags": [          "ACL"        ],        "summary": "Get roles list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of all Roles that have been created in the system.  \n\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "aclGetList",        "parameters": [          {            "name": "id",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "role",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "master",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "default",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/Role"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "201": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "ACL"        ],        "summary": "Add a new role",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows creating a new Role in the system.\n",        "operationId": "aclPostRole",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "role": {                    "$ref": "#/components/schemas/RoleFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "201": {            "$ref": "#/components/responses/NoContent"          },          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/acl/resources": {      "get": {        "tags": [          "ACL"        ],        "summary": "Get resources list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all available permission resources in the system that you can dedicate to a specific Role.  \n\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "aclGetResources",        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/AclAvailableObject"                      }                    },                    "total": {                      "properties": {                        "all": {                          "example": "0"                        }                      },                      "type": "object"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/admin/data/{admin}": {      "get": {        "tags": [          "Admin"        ],        "summary": "Get admin details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all specific Admin details.\n",        "operationId": "adminGetData",        "parameters": [          {            "$ref": "#/components/parameters/admin"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/AdminInternal"                    },                    {                      "$ref": "#/components/schemas/AdminExternal"                    }                  ]                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "put": {        "tags": [          "Admin"        ],        "summary": "Update admin details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows updating specific Admin data.\n",        "operationId": "adminPutData",        "parameters": [          {            "$ref": "#/components/parameters/admin"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "$ref": "#/components/schemas/AdminWithApiKey"                  },                  {                    "$ref": "#/components/schemas/AdminWithPlainPassword"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/AdminId"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          },          "405": {            "$ref": "#/components/responses/MethodNotAllowed"          }        }      }    },    "/api/admin": {      "get": {        "tags": [          "Admin"        ],        "summary": "Get admins list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of all Admins that have been created in the system.  \n\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "adminGetList",        "parameters": [          {            "name": "id",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "username",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "isActive",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "createAt",            "in": "query",            "description": "use `createdAt` instead",            "required": false,            "deprecated": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "email",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "phone",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "firstName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "lastName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "external",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "role",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/AdminExternalList"                    },                    {                      "$ref": "#/components/schemas/AdminInternalList"                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/admin/permissions": {      "get": {        "tags": [          "Admin"        ],        "summary": "Get admin permissions",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all permissions information for current logged in Admin.\n",        "operationId": "adminGetPermissions",        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/AdminPermissions"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/admin/data": {      "post": {        "tags": [          "Admin"        ],        "summary": "Add a new admin",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows creating a new Admin in the system.\nThe required fields are dependent on the value of the \"external\" field.\nIf the value of the \"external\" field is set to false, then it is required to provide the value for the \"plainPassword\" field.\nOtherwise, it is required to provide a value for the \"apiKey\" field.\n",        "operationId": "adminPostData",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "$ref": "#/components/schemas/AdminWithApiKey"                  },                  {                    "$ref": "#/components/schemas/AdminWithPlainPassword"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/AdminId"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/admin/{admin}/settings": {      "get": {        "tags": [          "Admin"        ],        "summary": "Get admin settings",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns the settings of the specified Admin.\n",        "operationId": "settingsGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/admin"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/UserSettingsEntry"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/admin/{admin}/settings/{key}": {      "put": {        "tags": [          "Admin"        ],        "summary": "Update admin’s API key",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows you to add or modify specific Administrator settings.\n",        "operationId": "settingsPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/admin"          },          {            "name": "key",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/UserSettingsEntryFormType"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/admin/password": {      "put": {        "tags": [          "Admin"        ],        "summary": "Changged logged admin’s password",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows changing the password of the logged Admin.\n",        "operationId": "adminPutPassword",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "required": [                  "currentPassword",                  "plainPassword"                ],                "properties": {                  "currentPassword": {                    "type": "string"                  },                  "plainPassword": {                    "type": "string"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/admin/password/reset": {      "post": {        "tags": [          "Admin"        ],        "summary": "Set a new password",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows you to set a new password when a password reset is requested.\n",        "operationId": "adminPostPasswordReset",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "required": [                  "token",                  "reset"                ],                "properties": {                  "reset": {                    "$ref": "#/components/schemas/PasswordResetFormType"                  },                  "token": {                    "type": "string"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/admin/password/reset/request": {      "post": {        "tags": [          "Admin"        ],        "summary": "Request password reset",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method sends a message to the Admin with a password reset URL.\n",        "operationId": "adminPostPasswordResetRequest",        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "username"                ],                "properties": {                  "username": {                    "type": "string"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/analytics/levels": {      "get": {        "tags": [          "Analytics"        ],        "summary": "Tiers analytics",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns detailed information about all Tiers.\n\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "tierStatsGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/TierStats"                      }                    },                    "total": {                      "type": "integer"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/analytics/members": {      "get": {        "tags": [          "Analytics"        ],        "summary": "Members analytics",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns information about total count of Members registered in the system.\n",        "operationId": "membersStatsGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "withTransaction",            "in": "query",            "description": "Show only members who had at least one transaction (true) or had no transactions (false). Omit for all members.",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "boolean",              "default": null            }          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "intervals": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/MembersStats"                      }                    },                    "total": {                      "type": "integer",                      "example": 594                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/analytics/points": {      "get": {        "tags": [          "Analytics"        ],        "summary": "Units analytics",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns information about the total number of Points spent, expired, blocked, pending, and all active Points.\n",        "operationId": "pointsStatsGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "type": "array",                  "items": {                    "$ref": "#/components/schemas/PointsStats"                  }                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/analytics/referrals": {      "get": {        "tags": [          "Analytics"        ],        "summary": "Referrals analytics",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns information about the total number of Members referred by another.\n",        "operationId": "referralsStatsGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "total": {                      "type": "integer",                      "example": 432                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/analytics/transactions": {      "get": {        "tags": [          "Analytics"        ],        "summary": "Transactions analytics",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns information about total Transactions count, total amount with and without delivery costs, and currency.\n",        "operationId": "transactionsStatsGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "type": "array",                  "items": {                    "$ref": "#/components/schemas/TransactionsStats"                  }                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/analytics/campaigns": {      "get": {        "tags": [          "Analytics"        ],        "summary": "Campaigns analytics",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "campaignsExecutionsGet",        "parameters": [          {            "name": "executedAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "name": "_orderBy",            "in": "query",            "description": "Can be ordered by `executions` field.",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "storeCode",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "List of campaigns executions",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/CampaignsExecutions"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "429": {            "$ref": "#/components/responses/TooManyRequests"          }        },        "deprecated": true      }    },    "/api/audit/log": {      "get": {        "tags": [          "Audit"        ],        "summary": "Get all system logs",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all actions logged in system logs.  \n\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "auditLogGetList",        "parameters": [          {            "name": "eventType",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "entityId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "entityType",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "username",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "auditLogId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "ip",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "userType",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "store",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "_page",            "in": "query",            "required": false,            "schema": {              "type": "integer"            }          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "name": "_orderBy",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/AuditLog"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/audit/log/archive/{filename}": {      "get": {        "tags": [          "Audit"        ],        "summary": "Get system log archive",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method exports Audit Log archive.\n",        "operationId": "auditLogArchiveGet",        "parameters": [          {            "name": "filename",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/xml": {                "schema": {                  "type": "string",                  "format": "binary"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/audit/log/archive": {      "get": {        "tags": [          "Audit"        ],        "summary": "Get system log archives list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method exports Audit Log archives file list.  \n\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "auditLogArchiveGetList",        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "type": "string"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        },        "deprecated": true      },      "post": {        "tags": [          "Audit"        ],        "summary": "Create a new system log archive",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method creates a new Audit Log archive.\n",        "operationId": "auditLogArchivePost",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "archive": {                    "$ref": "#/components/schemas/ArchiveFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "type": "array",                  "items": {                    "$ref": "#/components/schemas/TotalLogsArchived"                  }                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        },        "deprecated": true      }    },    "/api/audit/log/export": {      "get": {        "tags": [          "Audit"        ],        "summary": "Export system log",        "description": "This method exports Audit Log.\n",        "operationId": "auditLogExportGet",        "parameters": [          {            "name": "eventType",            "in": "query",            "description": "Event type",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "string",              "default": null            }          },          {            "name": "entityId",            "in": "query",            "description": "Entity ID",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "string",              "default": null            }          },          {            "name": "userId",            "in": "query",            "description": "User ID",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "string",              "default": null            }          },          {            "name": "entityType",            "in": "query",            "description": "Entity Type",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "string",              "default": null            }          },          {            "name": "username",            "in": "query",            "description": "username",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "string",              "default": null            }          },          {            "name": "auditLogId",            "in": "query",            "description": "audit log ID",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "string",              "default": null            }          },          {            "name": "createdAt",            "in": "query",            "description": "created at from",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "string",              "default": null            }          },          {            "name": "direction",            "in": "query",            "description": "Sorting direction",            "required": false,            "schema": {              "type": "string",              "format": "asc|desc"            }          },          {            "name": "_page",            "in": "query",            "description": "Page number",            "required": false,            "schema": {              "type": "integer"            }          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "name": "_orderBy",            "in": "query",            "description": "Field to sort by",            "required": false,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "text/plain": {                "schema": {                  "type": "string",                  "format": "text"                }              },              "text/csv": {                "schema": {                  "type": "string",                  "format": "binary"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        },        "deprecated": true      }    },    "/api/{storeCode}/campaign/{campaign}": {      "get": {        "tags": [          "Campaign"        ],        "summary": "Get the campaign’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns detailed information about a specific Campaign.\n",        "operationId": "campaignGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/campaign"          }        ],        "responses": {          "200": {            "description": "Campaign details.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/CampaignResponse"                    },                    {                      "$ref": "#/components/schemas/MultiReferralCampaignResponse"                    },                    {                      "$ref": "#/components/schemas/UniqueCodeCampaignResponse"                    },                    {                      "$ref": "#/components/schemas/TimeTriggerCampaignResponse"                    },                    {                      "$ref": "#/components/schemas/LeaderboardCampaignResponse"                    },                    {                      "$ref": "#/components/schemas/ChallengeCampaignResponse"                    }                  ]                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Campaign"        ],        "summary": "Update campaign’s configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows changing the information about a specific Campaign.<br><br>\n<strong>Custom-fields semantics on PUT:</strong> <ul>\n  <li><code>customFields</code> omitted from the request body → existing custom-field\n    values on the campaign are <strong>kept untouched</strong> (no-op; no validation\n    runs).</li>\n  <li><code>customFields: null</code> → existing values are <strong>kept untouched</strong>\n    (treated identically to omitting the field).</li>\n  <li><code>customFields: {}</code> (explicit empty object) → all existing custom-field\n    values on the campaign are <strong>cleared</strong>. Required-field validation still\n    runs against the empty payload, so this fails with 400 if any active campaign\n    custom-field group contains a required field.</li>\n  <li><code>customFields: { groupKey: { fieldKey: value, ... }, ... }</code> →\n    <strong>wholesale entity replace</strong>. The campaign's entire custom-field state\n    is deleted first, then only the groups present in the payload are persisted.\n    Consequence: any group NOT listed in the payload is also wiped, even if it had\n    values before. Required-field validation runs against the payload as a whole.</li>\n</ul> The feature flag <code>CUSTOM_FIELD_CAMPAIGN</code> must be enabled; when disabled the <code>customFields</code> key is silently ignored regardless of value.<br><br>\nFor granular per-group or per-key updates that preserve other groups, use the bulk patch endpoint (<code>PATCH /api/{storeCode}/custom-fields/campaign/{campaignId}</code>).\n",        "operationId": "_campaignPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/campaign"          }        ],        "requestBody": {          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "$ref": "#/components/schemas/AchievementCampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/PutUniqueCodeCampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/CampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/MultiReferralCampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/LeaderboardCampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/ChallengeCampaignRequestBody"                  }                ]              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Campaign"        ],        "summary": "Delete campaign.",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows you to delete campaign.\n",        "operationId": "_campaignDelete",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/campaign"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "patch": {        "tags": [          "Campaign"        ],        "summary": "Update campaign’s configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows you to change the order in which your campaigns are displayed and campaign activity.\n",        "operationId": "campaignPatch",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/campaign"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/PartialUpdateCampaign"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/channel/{channel}": {      "get": {        "tags": [          "Channels"        ],        "summary": "Get channel’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns detailed information about specific Sales Channel in the system.\n",        "operationId": "channelGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/channel"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/Channel"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Channels"        ],        "summary": "Update channel configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows update specific Sales Channel data.\n",        "operationId": "channelPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/channel"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "channel": {                    "$ref": "#/components/schemas/EditChannelFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "channelId": {                      "description": "Channel Id",                      "type": "string",                      "format": "uuid",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Channels"        ],        "summary": "Delete a channel",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows deleting specific Sales Channel.\n",        "operationId": "channelDelete",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/channel"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/channel": {      "get": {        "tags": [          "Channels"        ],        "summary": "Get channels list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a complete list of the Sales Channels that exist in the system.\n\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "channelGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "identifier",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "_page",            "in": "query",            "required": false,            "schema": {              "type": "integer"            }          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "name": "_orderBy",            "in": "query",            "required": false,            "schema": {              "type": "integer"            }          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/Channel"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Channels"        ],        "summary": "Add a channel",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows creating a new Sales Channel in the system.\n",        "operationId": "channelPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "channel": {                    "$ref": "#/components/schemas/CreateChannelFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "channelId": {                      "description": "Channel Id",                      "type": "string",                      "format": "uuid",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/member/{member}/custom-attribute": {      "put": {        "tags": [          "Member"        ],        "summary": "Update member’s custom attribute",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows updating Custom Attributes that are added to a specific Member.\n",        "operationId": "customAttributePut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/EditCustomAttributeFormType"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      },      "delete": {        "tags": [          "Member"        ],        "summary": "Delete member’s custom attribute",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows deleting Custom Attributes that are added to a specific Member.\n",        "operationId": "customAttributeDelete",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/DeleteCustomAttributeFormType"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/customEvent/schema/{customEventSchema}": {      "get": {        "tags": [          "Custom Event"        ],        "summary": "Get custom event schema",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns detailed information about specific Custom Event Schema in the system.\n",        "operationId": "customEventSchemaGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/customEventSchema"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CustomEventSchema"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Custom Event"        ],        "summary": "Update custom event schema configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows updating a specific Custom Event Schema.\n",        "operationId": "customEventSchemaPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/customEventSchema"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "customEventSchema": {                    "required": [                      "schema",                      "name"                    ],                    "properties": {                      "schema": {                        "$ref": "#/components/schemas/SchemaFormType"                      },                      "name": {                        "description": "Name of the event",                        "type": "string"                      },                      "active": {                        "required": [                          "isActive"                        ],                        "properties": {                          "isActive": {                            "description": "Indicates if the event is active",                            "type": "boolean"                          }                        },                        "type": "object",                        "nullable": true                      }                    },                    "type": "object"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/customEvent/schema": {      "get": {        "tags": [          "Custom Event"        ],        "summary": "Get custom event schema list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a complete list of the Custom Event Schemas that exist in the system.\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "customEventSchemaGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "eventType",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/CustomEventSchema"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Custom Event"        ],        "summary": "Add a custom event schema",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows creating a new Custom Event Schemas in the system.\n",        "operationId": "customEventSchemaPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "customEventSchema": {                    "required": [                      "eventType",                      "schema",                      "name"                    ],                    "properties": {                      "eventType": {                        "type": "string"                      },                      "schema": {                        "$ref": "#/components/schemas/SchemaFormType"                      },                      "name": {                        "description": "Name of the event",                        "type": "string"                      },                      "active": {                        "required": [                          "isActive"                        ],                        "properties": {                          "isActive": {                            "description": "Indicates if the event is active",                            "type": "boolean"                          }                        },                        "type": "object",                        "nullable": true                      }                    },                    "type": "object"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/customEvent/schema/{eventType}/active": {      "post": {        "tags": [          "Custom Event"        ],        "summary": "Set custom event schema as active",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows changing activity for a specific Custom Event Schema.\n",        "operationId": "customEventSchemaActivePut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/eventType"          }        ],        "requestBody": {          "content": {            "application/json": {              "schema": {                "required": [                  "active"                ],                "properties": {                  "active": {                    "description": "If the schema should be active",                    "type": "boolean"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/analytics/dashboard/general-overview": {      "get": {        "tags": [          "Data Analytics"        ],        "summary": "Retrieve general overview",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThe endpoint is used to retrieve a general overview of the analytics dashboard.\nTo use the endpoint, you must provide a \"dataType\" parameter that specifies the type of data you want to retrieve.\nAdditionally, you can provide optional query parameters to filter the data.\n\nYou can specify an \"aggregationType\" parameter to group the data by day, week, month, or year. You can also specify an \"intervalStartDate\" and \"intervalEndDate\" parameter to retrieve data for a specific time range.\n\nIf you don't specify the \"aggregationType\" parameter, aggregation will be based on interval:\n\n- 1-30 - days daily aggregation\n- 31-90 - days weekly aggregation\n- 91-360 - days monthly aggregation\n- over 360 - days annual aggregation\n\nIf you don't provide any optional query parameters and don't specify an interval, it will return all data from the beginning to today.\n",        "operationId": "dataAnalyticsGetGeneralOverview",        "parameters": [          {            "name": "dataType",            "in": "query",            "required": true,            "schema": {              "type": "string",              "enum": [                "registeredMembers",                "revenue",                "avgSpending",                "transactions",                "avgTransactionValue",                "avgNumberOfTransactions",                "returnTransactions",                "totalReturns",                "avgReturnValue",                "avgNumberOfReturnTransactions"              ]            }          },          {            "name": "aggregationType",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "day",                "week",                "month",                "year"              ]            }          },          {            "name": "intervalStartDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date"            }          },          {            "name": "intervalEndDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "200": {            "description": "Data for general overview dashboard",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "allOf": [                    {                      "$ref": "#/components/schemas/GeneralOverview"                    },                    {                      "properties": {                        "aggregationType": {                          "type": "string",                          "enum": [                            "day",                            "week",                            "month",                            "year"                          ]                        },                        "dataType": {                          "type": "string",                          "enum": [                            "registeredMembers",                            "revenue",                            "avgSpending",                            "transactions",                            "avgTransactionValue",                            "avgNumberOfTransactions",                            "activeMembers",                            "returnTransactions",                            "totalReturns",                            "avgReturnValue",                            "avgNumberOfReturnTransactions"                          ]                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/analytics/units-overview/{walletTypeCode}": {      "get": {        "tags": [          "Data Analytics"        ],        "summary": "Retrieve units overview",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThe endpoint is used to retrieve a units overview of the analytics dashboard.\n\nYou can specify an \"aggregationType\" parameter to group the data by day, week, month, or year. You can also specify an \"intervalStartDate\" and \"intervalEndDate\" parameter to retrieve data for a specific time range.\n\nIf you don't specify the \"aggregationType\" parameter, aggregation will be based on interval:\n\n- 1-30 - days daily aggregation\n- 31-90 - days weekly aggregation\n- 91-360 - days monthly aggregation\n- over 360 - days annual aggregation\n\nIf you don't provide any optional query parameters and don't specify an interval, it will return all data from the beginning to today.\n",        "operationId": "dataAnalyticsGetUnitsOverview",        "parameters": [          {            "name": "aggregationType",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "day",                "week",                "month",                "year"              ]            }          },          {            "name": "dataType",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "unitsIssued",                "unitsSpent",                "unitsExpired",                "unitsPending",                "unitsActive",                "redemptionRate",                "breakageRate"              ]            }          },          {            "name": "intervalStartDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date"            }          },          {            "name": "intervalEndDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date"            }          },          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "walletTypeCode",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Data for units overview dashboard",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "allOf": [                    {                      "$ref": "#/components/schemas/UnitsOverview"                    },                    {                      "properties": {                        "aggregationType": {                          "type": "string",                          "enum": [                            "day",                            "week",                            "month",                            "year"                          ]                        },                        "dataType": {                          "type": "string",                          "enum": [                            "unitsIssued",                            "unitsSpent",                            "unitsExpired",                            "unitsPending",                            "unitsActive",                            "redemptionRate",                            "breakageRate"                          ]                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api": {      "get": {        "tags": [          "HealthCheck"        ],        "summary": "Check application version",        "description": "<label style=\"background-color: #E7E7E7;padding:5px;\">System</label><br><br>\nThis method returns the application version.\n",        "operationId": "healthCheckGetVersion",        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "name": {                      "type": "string",                      "example": "OpenLoyalty"                    },                    "version": {                      "type": "string",                      "example": "5.0.0"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "503": {            "$ref": "#/components/responses/ServiceUnavailable"          }        }      }    },    "/api/language/{code}": {      "get": {        "tags": [          "Language"        ],        "summary": "Get language data",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all Language data by its locale code.\n",        "operationId": "languageGet",        "parameters": [          {            "name": "code",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Returned when successful.",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/Language"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Language"        ],        "summary": "Update language configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows updating a specific Language.\n",        "operationId": "languagePut",        "parameters": [          {            "name": "code",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/LanguageDataFormType"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "name": {                      "type": "string"                    },                    "code": {                      "type": "string"                    },                    "apiDefault": {                      "type": "boolean"                    },                    "adminDefault": {                      "type": "boolean"                    },                    "order": {                      "type": "integer"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Language"        ],        "summary": "Delete a language",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows deleting a specific Language.\n",        "operationId": "languageDelete",        "parameters": [          {            "name": "code",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/language": {      "get": {        "tags": [          "Language"        ],        "summary": "Get languages list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of all available Languages in the system.\n\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "languageGetList",        "parameters": [          {            "name": "localeCode",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "apiDefault",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "Returned when successful.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/LanguageData"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Language"        ],        "summary": "Add a language",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows creating a new Language.\n",        "operationId": "languagePost",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/CreateLanguageFormType"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "name": {                      "type": "string"                    },                    "code": {                      "type": "string"                    },                    "apiDefault": {                      "type": "boolean"                    },                    "adminDefault": {                      "type": "boolean"                    },                    "order": {                      "type": "integer"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/language/{code}/translation/{key}": {      "put": {        "tags": [          "Language"        ],        "summary": "Update translation key",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows creating or updating a whole specific Translation key.\n",        "operationId": "languageTranslationPut",        "parameters": [          {            "name": "code",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          },          {            "name": "key",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "translation": {                    "$ref": "#/components/schemas/TranslationEntryDataFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "languageCode": {                      "type": "string"                    },                    "key": {                      "type": "string"                    },                    "value": {                      "type": "string"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/translation": {      "get": {        "tags": [          "Language"        ],        "summary": "Get translations list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all Translations.\n",        "operationId": "translationGet",        "parameters": [          {            "name": "_locale",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "additionalProperties": {                    "type": "string"                  }                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          }        }      }    },    "/api/translation/key/{key}": {      "get": {        "tags": [          "Language"        ],        "summary": "Get translation key details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns one Translation key and its value in all Languages supported.\n",        "operationId": "translationGetKey",        "parameters": [          {            "name": "key",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "type": "array",                  "items": {                    "allOf": [                      {                        "$ref": "#/components/schemas/TranslationEntry"                      },                      {                        "properties": {                          "languageCode": {                            "type": "string"                          }                        },                        "type": "object"                      }                    ]                  }                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/translation/key": {      "get": {        "tags": [          "Language"        ],        "summary": "Get translation keys list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of Translation keys available in at least one Language.\n",        "operationId": "translationGetKeyList",        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "type": "array",                  "items": {                    "type": "string"                  }                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/member/{member}/reward/redeem": {      "post": {        "tags": [          "Member"        ],        "summary": "Mark coupon as used",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows redeeming a Coupon that is assigned to a specific Member (marks it as used by the Administrator).\n",        "operationId": "rewardPostRedeem",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/RedeemCouponFormType"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CouponUsageResponse"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          },          "409": {            "$ref": "#/components/responses/Conflict"          }        }      }    },    "/api/{storeCode}/member/{member}/reward/reissue": {      "post": {        "tags": [          "Member"        ],        "summary": "Mark coupon as unused",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows reissuing a Coupon that is assigned to a specific Member (marks it as unused by the Administrator).\n",        "operationId": "rewardPostReissue",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/ReissueCouponFormType"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CouponUsageResponse"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}": {      "get": {        "tags": [          "Member"        ],        "summary": "Get member’s details",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns details related to a specific Member account.\n",        "operationId": "memberGet",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "customFields",            "in": "query",            "required": false,            "description": "Comma-separated list of custom field group names to include in the response. If omitted, all custom fields are returned.",            "schema": {              "type": "string",              "example": "group1,group2"            }          }        ],        "responses": {          "200": {            "description": "Member details",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "allOf": [                    {                      "$ref": "#/components/schemas/Customer"                    },                    {                      "properties": {                        "labels": {                          "type": "array",                          "items": {                            "allOf": [                              {                                "properties": {                                  "key": {                                    "type": "string"                                  },                                  "value": {                                    "type": "string"                                  }                                },                                "type": "object"                              }                            ]                          }                        },                        "currency": {                          "type": "string"                        },                        "storeCode": {                          "type": "string"                        },                        "segments": {                          "type": "array",                          "items": {                            "type": "string",                            "format": "uuid"                          }                        },                        "channelIdentifier": {                          "type": "string"                        },                        "currentLevel": {                          "$ref": "#/components/schemas/CurrentLevel"                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Member"        ],        "summary": "Update member’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows updating data related to a specific Member account.\nIf a member changes the primary identification method then this change has to be confirmed.\nConfirmation works only for email and phone fields.\nIf CustomerEmailWasChanged or CustomerPhoneNumberWasChanged webhook is configured,\nthe code, code number, and member contact data will be transmitted.\nField code from the webhook has to be used as token parameter in endpoint. [confirm change](#operation/memberPostConfirmChange)\n",        "operationId": "memberPut",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "example": {                "customer": {                  "firstName": "John",                  "lastName": "Doe",                  "email": "example@example.com"                }              },              "schema": {                "properties": {                  "customer": {                    "$ref": "#/components/schemas/PutMember"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return updated member id.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "customerId": {                      "description": "Updated member identity",                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          },          "405": {            "$ref": "#/components/responses/MethodNotAllowed"          }        }      },      "delete": {        "tags": [          "Member"        ],        "summary": "Delete a member",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows removing a specific Member account.\n",        "operationId": "memberDeleteMember",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "description": "Unauthorized.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "patch": {        "tags": [          "Member"        ],        "summary": "Partially update member details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nAllows partial update of member's custom attributes (labels) and custom fields data.\n\n**Two formats are supported:**\n\n1. **New format (recommended):**\n   * Labels as associative array (object with key-value pairs)\n   * **Adding:** To add a new label, provide a new key with its value.\n   * **Editing:** To update an existing label, provide its key with a new value.\n   * **Removing:** To remove a label, provide its key and set the value to `null`.\n   * Only provided labels will be updated, other labels remain unchanged.\n\n2. **Legacy format (deprecated, will be removed soon):**\n   * Labels as array of objects with `key` and `value` properties\n   * **Replaces all existing labels** - use with caution!\n\n\n**Member identifiers (`email`, `phone`, `loyaltyCardNumber`)** can also be partially updated. Only the identifiers present in the request are changed; all other member data is preserved. Editing identifiers is **admin-only** and is applied directly (no confirmation flow). A non-admin member sending any of these fields receives a `400` response. Members change their own `email`/`phone` (with the confirmation flow) via the [PUT member](#operation/_memberPut) endpoint instead.\n",        "operationId": "_memberPatch",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "properties": {                  "customer": {                    "properties": {                      "labels": {                        "oneOf": [                          {                            "description": "**New format (recommended)**\nAssociative array where keys are label names and values are label values.\nSet value to `null` to remove a label. Only provided labels will be updated.\n",                            "type": "object",                            "nullable": true,                            "example": {                              "size": "L",                              "color": "blue",                              "oldLabel": null                            },                            "additionalProperties": {                              "type": "string",                              "nullable": true                            }                          },                          {                            "description": "**Legacy format (deprecated)** - Will be removed soon.\nArray of label objects. **WARNING: Replaces all existing labels!**\n",                            "type": "array",                            "nullable": true,                            "items": {                              "required": [                                "key",                                "value"                              ],                              "properties": {                                "key": {                                  "description": "Label key/name",                                  "type": "string"                                },                                "value": {                                  "description": "Label value",                                  "type": "string"                                }                              },                              "type": "object"                            },                            "example": [                              {                                "key": "size",                                "value": "L"                              },                              {                                "key": "color",                                "value": "blue"                              }                            ],                            "deprecated": true                          }                        ]                      },                      "customFieldsData": {                        "description": "Custom fields data for member. Replaces all existing custom fields.",                        "type": "array",                        "items": {                          "required": [                            "customFieldSchemaId",                            "value"                          ],                          "properties": {                            "customFieldSchemaId": {                              "description": "ID of the custom field schema",                              "type": "string",                              "format": "uuid"                            },                            "value": {                              "description": "Value for the custom field (validated against schema requirements)",                              "type": "string"                            }                          },                          "type": "object"                        },                        "nullable": true                      },                      "customFields": {                        "description": "Custom field values (CustomField module), keyed by group then field. A field's value type depends on the field's configured `fieldType`: `text` (string), `integer`, `float`, `boolean`, `date` (`YYYY-MM-DD`), `datetime` (`YYYY-MM-DD HH:mm:ss.SSSSSS`), `single_select` (string, one value from a predefined list), `multi_select` (array of strings, one or more values from a predefined list), or `object_array` (array of objects, each containing the scalar sub-fields defined for that field). Partial merge: only submitted fields are updated, fields and groups omitted from the payload are left untouched, and a field set to `null` is cleared. Requires the `CUSTOM_FIELD_MEMBER` feature flag; ignored when disabled.",                        "type": "object",                        "nullable": true,                        "example": {                          "group_1": {                            "field_1": "orange",                            "field_2": 48,                            "field_3": 3.5,                            "field_4": true,                            "field_5": "1990-05-12",                            "field_6": "2024-01-15 10:30:00.000000",                            "field_7": null,                            "field_8": "red",                            "field_9": [                              "red",                              "blue"                            ],                            "subgroup_1": [                              {                                "field_name1": 1,                                "field_name2": 92.5,                                "field_name3": true                              }                            ]                          }                        },                        "properties": {                          "group_1": {                            "description": "Example custom field group illustrating each supported field type. Actual group and field names are tenant-defined.",                            "type": "object",                            "nullable": true,                            "properties": {                              "field_1": {                                "description": "fieldType: text",                                "type": "string"                              },                              "field_2": {                                "description": "fieldType: integer",                                "type": "integer"                              },                              "field_3": {                                "description": "fieldType: float",                                "type": "number"                              },                              "field_4": {                                "description": "fieldType: boolean",                                "type": "boolean"                              },                              "field_5": {                                "description": "fieldType: date",                                "type": "string"                              },                              "field_6": {                                "description": "fieldType: datetime",                                "type": "string"                              },                              "field_7": {                                "description": "fieldType: text, cleared by setting to null",                                "type": "string",                                "nullable": true                              },                              "field_8": {                                "description": "fieldType: single_select",                                "type": "string"                              },                              "field_9": {                                "description": "fieldType: multi_select",                                "type": "array",                                "items": {                                  "type": "string"                                }                              },                              "subgroup_1": {                                "description": "fieldType: object_array",                                "type": "array",                                "nullable": true,                                "items": {                                  "type": "object",                                  "properties": {                                    "field_name1": {                                      "type": "integer"                                    },                                    "field_name2": {                                      "type": "number"                                    },                                    "field_name3": {                                      "type": "boolean"                                    }                                  }                                }                              }                            }                          }                        },                        "additionalProperties": {                          "type": "object",                          "additionalProperties": {}                        }                      },                      "email": {                        "description": "Member email. Admin-only. Applied directly (no confirmation flow). Sent by a non-admin member it yields a `400`.",                        "type": "string",                        "format": "email",                        "example": "example@example.com"                      },                      "phone": {                        "description": "Member phone. Admin-only. Applied directly (no confirmation flow). Sent by a non-admin member it yields a `400`.",                        "type": "string"                      },                      "loyaltyCardNumber": {                        "description": "Member loyalty card number. Admin-only. Applied directly (no confirmation flow). Sent by a non-admin member it yields a `400`.",                        "type": "string"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "200": {            "description": "Member successfully updated",            "content": {              "application/json": {                "schema": {                  "properties": {                    "customerId": {                      "description": "Updated member identity",                      "type": "string",                      "format": "uuid"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/check": {      "get": {        "tags": [          "Member"        ],        "summary": "Find if the member registered",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns true or false if a Member with give phone number or email exists.\n",        "operationId": "memberGetCheck",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "emailOrPhone",            "in": "query",            "description": "This filter is deprecated. Use identifier instead",            "required": false,            "deprecated": true,            "allowEmptyValue": true,            "schema": {              "type": "string",              "default": null            }          },          {            "name": "identifier",            "in": "query",            "description": "Using this parameter you can filter by e-mail, by phone, by customer id or loyalty card number",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "string",              "default": null            }          }        ],        "responses": {          "200": {            "description": "Returns true or false if given email or phone exists.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "total": {                      "type": "integer"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/member": {      "get": {        "tags": [          "Member"        ],        "summary": "Get members list",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns list of all Members' accounts exist in the system.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "memberGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "customerId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "firstName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "lastName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "emailOrPhone",            "in": "query",            "description": "This filter is deprecated.",            "required": false,            "deprecated": true,            "schema": {              "type": "string"            }          },          {            "name": "identifier",            "in": "query",            "description": "This filter is deprecated. To get member by email, phone, loyaltyCardNumnber, use /api/{store}/member/email=user@example.com).",            "required": false,            "deprecated": true,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "gender",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "phone",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "email",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "loyaltyCardNumber",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "birthDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "agreement1",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "agreement2",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "agreement3",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "updatedAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "registeredAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "transactionsCount",            "in": "query",            "required": false,            "schema": {              "type": "integer"            }          },          {            "name": "transactionsAmount",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "transactionsAmountWithoutDeliveryCosts",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "amountExcludedForLevel",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "averageTransactionAmount",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "levelAchievementDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "labels",            "in": "query",            "description": "Labels using pattern e.g. (key1;value1),(key2;value2),...",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "lastTransactionDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "firstTransactionDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "levelId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "manuallyAssignedLevelId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "referralToken",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "address:street",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "address:address1",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "address:address2",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "address:province",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "address:city",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "address:postal",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "address:country",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "defaultAccount:activePoints",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "defaultAccount:transferredPoints",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "defaultAccount:lockedPoints",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "defaultAccount:expiredPoints",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "defaultAccount:spentPoints",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "defaultAccount:earnedPoints",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "defaultAccount:blockedPoints",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "$ref": "#/components/parameters/scroll"          }        ],        "responses": {          "200": {            "description": "List of members",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "title": "MembersListResponse",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "allOf": [                              {                                "$ref": "#/components/schemas/Customer"                              },                              {                                "properties": {                                  "labels": {                                    "type": "array",                                    "items": {                                      "properties": {                                        "key": {                                          "type": "string"                                        },                                        "value": {                                          "type": "string"                                        }                                      },                                      "type": "object"                                    }                                  },                                  "currency": {                                    "type": "string"                                  },                                  "storeCode": {                                    "type": "string"                                  },                                  "channelIdentifier": {                                    "type": "string"                                  }                                },                                "type": "object"                              }                            ]                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object",                      "additionalProperties": false                    },                    {                      "title": "MembersListResponseWithScroll",                      "required": [                        "items",                        "scroll"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "allOf": [                              {                                "$ref": "#/components/schemas/Customer"                              },                              {                                "properties": {                                  "labels": {                                    "type": "array",                                    "items": {                                      "properties": {                                        "key": {                                          "type": "string"                                        },                                        "value": {                                          "type": "string"                                        }                                      },                                      "type": "object"                                    }                                  },                                  "currency": {                                    "type": "string"                                  },                                  "storeCode": {                                    "type": "string"                                  },                                  "channelIdentifier": {                                    "type": "string"                                  }                                },                                "type": "object"                              }                            ]                          }                        },                        "scroll": {                          "$ref": "#/components/schemas/ScrollResponse"                        }                      },                      "type": "object",                      "additionalProperties": false                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Member"        ],        "summary": "Add a member",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows registering a new Member as an Admin.\n",        "operationId": "_memberPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "properties": {                  "customer": {                    "$ref": "#/components/schemas/CustomerRegistrationFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return registered member id and identifiers.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "customerId": {                      "description": "Registered member identity",                      "type": "string",                      "format": "uuid",                      "example": "00000000-0000-0000-0000-000000000000"                    },                    "email": {                      "description": "Registered member email",                      "type": "string"                    },                    "phone": {                      "description": "Registered member phone",                      "type": "string",                      "nullable": true                    },                    "loyaltyCardNumber": {                      "description": "Registered member loyalty card number",                      "type": "string",                      "nullable": true                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/registrations": {      "get": {        "tags": [          "Member"        ],        "summary": "Get number of registered members",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns the number of Members that have been registered in the system.\n",        "operationId": "memberGetRegistrations",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "lastDays",            "in": "query",            "description": "Range from last X days",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "integer",              "default": 30            }          },          {            "name": "interval",            "in": "query",            "description": "Group by interval",            "required": false,            "schema": {              "type": "string",              "format": "day|month|year",              "default": "day",              "pattern": "(day|month|year)"            }          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "format": "date-time",                  "additionalProperties": {                    "type": "integer"                  }                }              }            }          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/status": {      "get": {        "tags": [          "Member"        ],        "summary": "Get member’s loyalty status",        "description": "This method returns all the details related to a specific Member about Points, Transactions, Tier, etc.\n",        "operationId": "memberGetStatus",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CustomerStatus"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/member/{member}/activate": {      "post": {        "tags": [          "Member"        ],        "summary": "Activate a member",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows activating a specific Member account.\n",        "operationId": "memberPostActivate",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/activate/{token}": {      "post": {        "tags": [          "Member"        ],        "summary": "Activate a member with a token",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows activating by activation token a specific Member account.\n",        "operationId": "memberPostActivateByToken",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "token",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/member/{member}/anonymize": {      "post": {        "tags": [          "Member"        ],        "summary": "Anonymize member’s data",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows anonymizing a specific member account.\n",        "operationId": "memberPostAnonymize",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/channel": {      "post": {        "tags": [          "Member"        ],        "summary": "Assign channel to a member",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows assigning a Sales Channel to Member.\n",        "operationId": "memberPostChannel",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": false,          "content": {            "application/json": {              "schema": {                "properties": {                  "channelId": {                    "description": "Id of the sales channel to assign to the member",                    "type": "string",                    "format": "uuid"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/confirm-change/{token}": {      "post": {        "tags": [          "Member"        ],        "summary": "Confirm change with a token",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows confirming changes with a token.\n",        "operationId": "memberPostConfirmChange",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "token",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/deactivate": {      "post": {        "tags": [          "Member"        ],        "summary": "Deactivate a member",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows deactivating a specific Member account.\n",        "operationId": "memberPostDeactivate",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/register": {      "post": {        "tags": [          "Member"        ],        "summary": "Register a member",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows potential Members to register themselves.\nIf CustomerWasRegisteredWithoutActivation webhook is configured,\nthe code, code number, and member contact data will be transmitted.\nThe 'code' field from the webhook should be used\nas token parameter in the endpoint. [member activate](#operation/memberPostActivate)\n",        "operationId": "memberPostRegister",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "customer": {                    "$ref": "#/components/schemas/CustomerSelfRegistrationFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return registered member ID and email.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "customerId": {                      "description": "Registered member identity",                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    },                    "email": {                      "description": "Registered member email",                      "type": "string",                      "format": "email"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true,        "security": []      }    },    "/api/{storeCode}/member/{member}/remove-manually-level": {      "post": {        "tags": [          "Member"        ],        "summary": "Remove manually assigned tier",        "description": "Remove manually assigned tier\n",        "operationId": "_memberPostRemoveTier",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "properties": {                  "tierSetId": {                    "description": "tier set id specifies the tier set in which you want to remove the manually assigned tier",                    "type": "string",                    "format": "uuid"                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/resend-code": {      "post": {        "tags": [          "Member"        ],        "summary": "Request activation code",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows resending the activation code.\nUse given code in member activation endpoint as token parameter.\n[member activation](#operation/memberPostActivateByToken)\n",        "operationId": "memberPostResendCode",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "required": [                  "phone"                ],                "properties": {                  "phone": {                    "type": "string"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/member/{member}/send-code": {      "post": {        "tags": [          "Member"        ],        "summary": "Resend activation code",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows resending the activation code for chosen member\nUse given code in member activation endpoint as token parameter.\n[member activation](#operation/memberPostActivateByToken)\n",        "operationId": "memberPostSendCode",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/tier": {      "post": {        "tags": [          "Member"        ],        "summary": "Assign member to a tier",        "description": "Assign member to a tier\n",        "operationId": "_memberPostTier",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "levelId"                ],                "properties": {                  "levelId": {                    "description": "Id of the tier to assign to the member",                    "type": "string",                    "format": "uuid"                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/password": {      "put": {        "tags": [          "Member"        ],        "summary": "Update member’s password",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows logged Member changing password.\n",        "operationId": "memberPutPassword",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/ChangePasswordFormType"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/points": {      "get": {        "tags": [          "Member"        ],        "summary": "Get logged member’s units",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list of all Points transfers related to the logged Member.\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "memberGetTransferList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "type",            "in": "query",            "description": "type",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "value",            "in": "query",            "description": "value",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "comment",            "in": "query",            "description": "comment",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdBy",            "in": "query",            "description": "createdBy",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "cancelled",            "in": "query",            "description": "cancelled",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "pending",            "in": "query",            "description": "pending",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "createdAt",            "in": "query",            "description": "createdAt",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "lockedUntil",            "in": "query",            "description": "lockedUntil",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "expiresAt",            "in": "query",            "description": "expiresAt",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "walletType:code",            "in": "query",            "description": "Wallet type code related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of messages",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "allOf": [                          {                            "$ref": "#/components/schemas/Transfer"                          },                          {                            "properties": {                              "walletType": {                                "$ref": "#/components/schemas/WalletType"                              }                            },                            "type": "object"                          }                        ]                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Member"        ],        "summary": "Transfer points between members",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows transferring Points between logged Member and Member which he chooses.\n",        "operationId": "memberPostTransfer",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "transfer": {                    "$ref": "#/components/schemas/TransferPointsByCustomerFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return points transfer ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "transferId": {                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/member/password/reset/request": {      "post": {        "tags": [          "Member"        ],        "summary": "Request member’s password reset",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows sending message to the user with password reset url.\nPurpose of this method is to provide \"Forgot password\" functionality.\nInvoking this method will send message to the user with password reset url.\nIf CustomerRequestedPasswordReset webhook is configured\nthe code, code number, and member contact data will be transmitted.\nUse code from the webhook as a token in this endpoint. [password reset](#operation/memberPostPasswordReset)\n",        "operationId": "memberPostPasswordResetRequest",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "required": false,          "content": {            "application/json": {              "schema": {                "properties": {                  "username": {                    "type": "string"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/member/password/reset": {      "post": {        "tags": [          "Member"        ],        "summary": "Set a new member’s password",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows setting a new password after requesting a password reset.\n",        "operationId": "memberPostPasswordReset",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "reset": {                    "$ref": "#/components/schemas/PasswordResetFormType"                  },                  "token": {                    "type": "string"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/member/tier": {      "get": {        "tags": [          "Member"        ],        "summary": "Get logged member’s tier",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list of active Tiers that exist in the system.\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "tierMemberGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/Tier"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/reward/bought": {      "get": {        "tags": [          "Member"        ],        "summary": "Get logged member’s bought rewards",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list all rewards bought by logged Member.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "memberGetBought",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "name": "rewardId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "token",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "status",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "costInPoints",            "in": "query",            "required": false,            "schema": {              "type": "integer"            }          },          {            "name": "rewardType",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "redemptionDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          }        ],        "responses": {          "200": {            "description": "List of rewards bought by logged in member",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/issuedReward"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        },        "deprecated": true      }    },    "/api/{storeCode}/points/transfer": {      "post": {        "tags": [          "Points"        ],        "summary": "Transfer units between members",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows transferring Points between two specific Members.\n",        "operationId": "adminPostTransfer",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "transfer": {                    "$ref": "#/components/schemas/TransferPointsFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return points transfer ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "transferId": {                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/points/{transfer}": {      "get": {        "tags": [          "Points"        ],        "summary": "Get unit transfer’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns detailed information about specific transfer in the system.\n",        "operationId": "_transferGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/transfer"          }        ],        "responses": {          "200": {            "description": "Returned when successful.",            "content": {              "application/json": {                "schema": {                  "allOf": [                    {                      "$ref": "#/components/schemas/Transfer"                    },                    {                      "properties": {                        "walletType": {                          "$ref": "#/components/schemas/WalletTypeBasic"                        }                      },                      "type": "object"                    },                    {                      "properties": {                        "member": {                          "$ref": "#/components/schemas/Member"                        }                      },                      "type": "object"                    },                    {                      "properties": {                        "labels": {                          "type": "object",                          "example": {                            "size": "L",                            "color": "blue"                          },                          "nullable": true,                          "additionalProperties": {                            "type": "string",                            "nullable": true                          }                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "patch": {        "tags": [          "Points"        ],        "summary": "Update transfer labels",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows to update or add labels to an existing transfer.\n\n**Usage rules:**\n* **Adding:** To add a new label, provide a new key with its value.\n* **Editing:** To update an existing label, provide its key with a new value.\n* **Removing:** To remove an label, provide its key and set the value to `null`.\n",        "operationId": "_pointsPatchTransfer",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/transfer"          }        ],        "requestBody": {          "content": {            "application/json": {              "schema": {                "required": [                  "transfer"                ],                "properties": {                  "transfer": {                    "required": [                      "labels"                    ],                    "properties": {                      "labels": {                        "type": "object",                        "example": {                          "size": "L",                          "brand": null                        },                        "additionalProperties": {                          "type": "string",                          "nullable": true                        }                      }                    },                    "type": "object"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "description": "Returned when successful."          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/points/history": {      "get": {        "tags": [          "Points"        ],        "summary": "Get histogram of number of units",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns histogram of number of Points.\n",        "operationId": "pointsGetPointsTransfer",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "pointType",            "in": "query",            "description": "Filter by point type",            "required": true,            "allowEmptyValue": false,            "schema": {              "type": "string",              "format": "spent|earned|expired|pending",              "pattern": "(spent|earned|expired|pending)",              "nullable": false            }          },          {            "name": "lastDays",            "in": "query",            "description": "Range from last X days",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "integer",              "default": 30            }          },          {            "name": "futureDays",            "in": "query",            "description": "Range to X days in the future",            "required": false,            "allowEmptyValue": true,            "schema": {              "type": "integer",              "default": 0            }          },          {            "name": "interval",            "in": "query",            "description": "Group by interval",            "required": false,            "allowEmptyValue": false,            "schema": {              "type": "string",              "format": "day|month|year",              "default": "day",              "pattern": "(day|month|year)",              "nullable": false            }          }        ],        "responses": {          "200": {            "description": "Return created message ID.",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "additionalProperties": {                    "type": "number",                    "format": "float"                  }                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/points": {      "get": {        "tags": [          "Points"        ],        "summary": "Get units transfers list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of all Point transfers that have been created in the system.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "pointsGetTransferList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "transferId",            "in": "query",            "description": "Transfer id",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "accountId",            "in": "query",            "description": "Owner account id",            "required": false,            "deprecated": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "walletId",            "in": "query",            "description": "Owner wallet id",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "type",            "in": "query",            "description": "Type",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "value",            "in": "query",            "description": "Value",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "comment",            "in": "query",            "description": "Comment",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdBy",            "in": "query",            "description": "Creator",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "cancelled",            "in": "query",            "description": "cancelled",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "pending",            "in": "query",            "description": "pending",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "createdAt",            "in": "query",            "description": "createdAt",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "registeredOn",            "in": "query",            "description": "registeredOn",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "lockedUntil",            "in": "query",            "description": "lockedUntil",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "expiresAt",            "in": "query",            "description": "expiresAt",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "actionCause:transactionId",            "in": "query",            "description": "Transaction id related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "actionCause:campaignId",            "in": "query",            "description": "Campaign id related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "actionCause:customEventId",            "in": "query",            "description": "Custom event id related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "actionCause:internalEventName",            "in": "query",            "description": "Internal event name related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "walletType:code",            "in": "query",            "description": "Wallet type code related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "member:id",            "in": "query",            "description": "Member indentifier related to",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "member:email",            "in": "query",            "description": "Member email related to",            "required": false,            "schema": {              "type": "string",              "format": "email"            }          },          {            "name": "member:phoneNumber",            "in": "query",            "description": "Member phone number related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "member:loyaltyCardNumber",            "in": "query",            "description": "Member loyalty card number related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "$ref": "#/components/parameters/scroll"          }        ],        "responses": {          "200": {            "description": "List of transfers",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "title": "TransferResponse",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "allOf": [                              {                                "$ref": "#/components/schemas/Transfer"                              },                              {                                "properties": {                                  "walletType": {                                    "$ref": "#/components/schemas/WalletTypeBasic"                                  }                                },                                "type": "object"                              },                              {                                "properties": {                                  "member": {                                    "$ref": "#/components/schemas/Member"                                  }                                },                                "type": "object"                              },                              {                                "properties": {                                  "labels": {                                    "type": "object",                                    "nullable": true,                                    "additionalProperties": {                                      "type": "string",                                      "nullable": true                                    }                                  }                                },                                "type": "object"                              }                            ]                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object",                      "additionalProperties": false                    },                    {                      "title": "TransferResponseWithScroll",                      "required": [                        "items",                        "scroll"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "allOf": [                              {                                "$ref": "#/components/schemas/Transfer"                              },                              {                                "properties": {                                  "walletType": {                                    "$ref": "#/components/schemas/WalletTypeBasic"                                  }                                },                                "type": "object"                              },                              {                                "properties": {                                  "member": {                                    "$ref": "#/components/schemas/Member"                                  }                                },                                "type": "object"                              },                              {                                "properties": {                                  "labels": {                                    "type": "object",                                    "nullable": true,                                    "additionalProperties": {                                      "type": "string",                                      "nullable": true                                    }                                  }                                },                                "type": "object"                              }                            ]                          }                        },                        "scroll": {                          "$ref": "#/components/schemas/ScrollResponse"                        }                      },                      "type": "object",                      "additionalProperties": false                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/points/{transfer}/activate": {      "post": {        "tags": [          "Points"        ],        "summary": "Activate units transfer",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows activating specific Points transfer.\n",        "operationId": "pointsPostTransferActivate",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/transfer"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/points/add": {      "post": {        "tags": [          "Points"        ],        "summary": "Add an units transfer",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding Points transfer to specific Member.\n",        "operationId": "pointsPostTransferAdd",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "transfer": {                    "$ref": "#/components/schemas/AddPointsFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return points transfer ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "transferId": {                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/points/block": {      "post": {        "tags": [          "Points"        ],        "summary": "Block units",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows blocking Points to specific Member.\n",        "operationId": "pointsPostTransferBlock",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "transfer": {                    "$ref": "#/components/schemas/BlockPointsFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return points transfer ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "transferId": {                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/points/{transfer}/cancel": {      "post": {        "tags": [          "Points"        ],        "summary": "Cancel units transfer",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows canceling a specific Point transfer related to a Member.\n",        "operationId": "pointsPostTransferCancel",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/transfer"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/points/spend": {      "post": {        "tags": [          "Points"        ],        "summary": "Spend units",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows spending Points of a specific Member.\n",        "operationId": "pointsPostTransferSpend",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "transfer": {                    "$ref": "#/components/schemas/SpendPointsFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return points transfer ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "transferId": {                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/points/{transfer}/expire": {      "post": {        "tags": [          "Points"        ],        "summary": "Expire units transfer",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows expiring a specific Point transfer related to a Member.\n",        "operationId": "pointsPostTransferExpire",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/transfer"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/referral": {      "get": {        "tags": [          "Member"        ],        "summary": "Get referrals list",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list of referrals Members in the system.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "referralGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "referralId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "referrerId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "referrerName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "referrerToken",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "refereeId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "refereeName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of referrals",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/Referral"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/reward/{reward}/buy": {      "post": {        "tags": [          "Reward"        ],        "summary": "Buy a reward",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows buying a specific Reward by Member.<br>\nWith error 'No coupons left' returned when reward cannot be bought because of lack of coupons.\nWith error 'Not enough points' returned when reward cannot be bought because of not enough points on customer account. With empty error returned when reward limits exceeded.\n",        "operationId": "rewardPostBuy",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "$ref": "#/components/schemas/StaticCoupon"                  },                  {                    "$ref": "#/components/schemas/DynamicCoupon"                  },                  {                    "$ref": "#/components/schemas/ConversionCoupon"                  },                  {                    "$ref": "#/components/schemas/MaterialReward"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "Return created reward ID.",            "content": {              "application/json": {                "schema": {                  "type": "array",                  "items": {                    "properties": {                      "issuedRewardId": {                        "description": "Created reward identity",                        "type": "string",                        "example": "00000000-0000-0000-0000-000000000000"                      }                    },                    "type": "object"                  }                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/reward/{reward}/coupon/{couponCode}": {      "delete": {        "tags": [          "Reward"        ],        "summary": "Remove coupon code",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows removing a specific coupon from the specific Reward.\n",        "operationId": "couonDelete",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          },          {            "name": "couponCode",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/reward/{reward}/coupon": {      "get": {        "tags": [          "Reward"        ],        "summary": "Get reward’s coupons list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns coupons related to a specific Reward.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "couponGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "name": "code",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "issued",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/Coupon"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Reward"        ],        "summary": "Add coupon list to the reward",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding coupons to the specific Reward.\n",        "operationId": "couponPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "coupons": {                    "type": "array",                    "items": {                      "type": "string"                    }                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/reward/{reward}": {      "get": {        "tags": [          "Reward"        ],        "summary": "Get redeemed reward’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns detailed information about a specific Reward.\n",        "operationId": "rewardGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/SingleRewardResponse"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Reward"        ],        "summary": "Update reward configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows updating data on a specific Reward.\n",        "operationId": "_rewardPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "example": {                "reward": {                  "translations": {                    "en": {                      "name": "My Reward"                    }                  },                  "activity": {                    "allTime": true                  },                  "visibility": {                    "allTime": true                  }                }              },              "schema": {                "required": [                  "reward"                ],                "properties": {                  "reward": {                    "anyOf": [                      {                        "$ref": "#/components/schemas/UpdateMaterialRewardRequestBody"                      },                      {                        "$ref": "#/components/schemas/UpdateStaticCouponRewardRequestBody"                      },                      {                        "$ref": "#/components/schemas/UpdateDynamicCouponRewardRequestBody"                      },                      {                        "$ref": "#/components/schemas/UpdateConversionCouponRewardRequestBody"                      },                      {                        "$ref": "#/components/schemas/UpdateFortuneWheelRewardRequestBody"                      }                    ]                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/reward": {      "get": {        "tags": [          "Reward"        ],        "summary": "Get rewards list",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list of all Rewards existing in the system.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "rewardGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "name": "rewardId",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "reward",            "in": "query",            "required": false,            "deprecated": true,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "enum": [                "static_coupon",                "material",                "dynamic_coupon",                "conversion_coupon"              ]            }          },          {            "name": "active",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "createdAt",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "public",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "fulfillmentTracking",            "in": "query",            "required": false,            "deprecated": true,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "featured",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "name",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "shortDescription",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "brandName",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "brandDescription",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "levels",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "segments",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "categories",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "labels",            "in": "query",            "description": "Labels using pattern e.g. (key1;value1),(key2;value2),...",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "costInPoints",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "integer"            }          },          {            "name": "limit",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "integer"            }          },          {            "name": "available",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "visible",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "visibleFrom",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "visibleTo",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "activeFrom",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "activeTo",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "format",            "in": "query",            "description": "If set to html, the descriptions will be in HTML format. Omit for raw output.",            "required": false,            "style": "deepObject",            "schema": {              "type": "string",              "format": "html|raw"            }          },          {            "name": "type",            "in": "query",            "description": "Examples:  - `type[notIn]=material` - `type[in]=dynamic_coupon`\n",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "enum": [                "static_coupon",                "material",                "dynamic_coupon",                "conversion_coupon",                "fortune_wheel"              ]            }          }        ],        "responses": {          "200": {            "description": "Get all rewards.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/RewardResponse"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Reward"        ],        "summary": "Add a reward",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows creating a new Reward in the system.\n",        "operationId": "_rewardPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "reward"                ],                "properties": {                  "reward": {                    "discriminator": {                      "propertyName": "reward",                      "mapping": {                        "material": "#/components/schemas/CreateMaterialRewardRequestBody",                        "static_coupon": "#/components/schemas/CreateStaticCouponRewardRequestBody",                        "dynamic_coupon": "#/components/schemas/CreateDynamicCouponRewardRequestBody",                        "conversion_coupon": "#/components/schemas/CreateConversionCouponRewardRequestBody",                        "fortune_wheel": "#/components/schemas/CreateFortuneWheelRewardRequestBody"                      }                    },                    "anyOf": [                      {                        "$ref": "#/components/schemas/CreateMaterialRewardRequestBody"                      },                      {                        "$ref": "#/components/schemas/CreateStaticCouponRewardRequestBody"                      },                      {                        "$ref": "#/components/schemas/CreateDynamicCouponRewardRequestBody"                      },                      {                        "$ref": "#/components/schemas/CreateConversionCouponRewardRequestBody"                      },                      {                        "$ref": "#/components/schemas/CreateFortuneWheelRewardRequestBody"                      }                    ]                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "200": {            "description": "Return created reward ID.",            "content": {              "application/json": {                "schema": {                  "required": [                    "rewardId"                  ],                  "properties": {                    "rewardId": {                      "type": "string",                      "format": "uuid"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/reward/{reward}/members": {      "get": {        "tags": [          "Reward"        ],        "summary": "Get eligible members list",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns for which Member this Reward is visible.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "rewardGetVisibleForMembers",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          },          {            "name": "page",            "in": "query",            "description": "Page number",            "required": false,            "schema": {              "type": "integer"            }          },          {            "name": "perPage",            "in": "query",            "description": "Number of elements per page",            "required": false,            "schema": {              "type": "integer"            }          },          {            "name": "sort",            "in": "query",            "description": "Field to sort by",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "direction",            "in": "query",            "description": "Sorting direction",            "required": false,            "schema": {              "type": "string",              "format": "asc|desc"            }          },          {            "name": "visible",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          }        ],        "responses": {          "200": {            "description": "Get all rewards.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/Customer"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        },        "deprecated": true      }    },    "/api/{storeCode}/reward/{reward}/activate": {      "post": {        "tags": [          "Reward"        ],        "summary": "Activate a reward",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows activating a specific Reward.\n",        "operationId": "rewardPostActivate",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/reward/{reward}/deactivate": {      "post": {        "tags": [          "Reward"        ],        "summary": "Deactivate a reward",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows deactivating a specific Reward.\n",        "operationId": "rewardPostDeactivate",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/redemption/{issuedReward}": {      "get": {        "tags": [          "Reward"        ],        "summary": "Get redeemed reward's details",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns detailed information about a specific redeemed reward.\n",        "operationId": "redemptionGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/issuedReward"          },          {            "name": "format",            "in": "query",            "description": "If set to html, the descriptions will be in HTML format. Omit for raw output.",            "required": false,            "schema": {              "type": "string",              "format": "html|raw"            }          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/StaticIssuedReward"                    },                    {                      "$ref": "#/components/schemas/MaterialIssuedReward"                    },                    {                      "$ref": "#/components/schemas/ConversionCouponIssuedReward"                    },                    {                      "$ref": "#/components/schemas/DynamicIssuedReward"                    },                    {                      "$ref": "#/components/schemas/FortuneWheelIssuedReward"                    }                  ]                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/redemption": {      "get": {        "tags": [          "Reward"        ],        "summary": "Get redeemed rewards list",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list of all redeemed rewards in the system.\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "redemptionGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "$ref": "#/components/parameters/scroll"          },          {            "name": "rewardId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "token",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "status",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "costInPoints",            "in": "query",            "required": false,            "schema": {              "type": "integer"            }          },          {            "name": "rewardType",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "redemptionDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "cancelledAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "fortuneWheelStatus:drawnAt",            "in": "query",            "description": "Fortune Wheel draw date, use the `[hasValue]` / `[notHasValue]` key to get only drawn / not drawn redemptions",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "customerId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:email",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:firstName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:lastName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:phone",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:loyaltyCardNumber",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "actionCause:transactionId",            "in": "query",            "description": "Transaction id related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "actionCause:campaignId",            "in": "query",            "description": "Campaign id related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "actionCause:customEventId",            "in": "query",            "description": "Custom event id related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "actionCause:internalEventName",            "in": "query",            "description": "Internal event name related to",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "reward:labels",            "in": "query",            "description": "Labels using pattern e.g. (key1;value1),(key2;value2),...",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "reward:categories",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "responses": {          "200": {            "description": "List of Issued Reward",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "title": "StaticIssuedRewardWithTotal",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/StaticIssuedReward"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "StaticIssuedRewardWithScroll",                      "required": [                        "items",                        "scroll"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/StaticIssuedReward"                          }                        },                        "scroll": {                          "$ref": "#/components/schemas/ScrollResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "MaterialIssuedRewardWithTotal",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/MaterialIssuedReward"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "MaterialIssuedRewardWithScroll",                      "required": [                        "items",                        "scroll"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/MaterialIssuedReward"                          }                        },                        "scroll": {                          "$ref": "#/components/schemas/ScrollResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "ConversionCouponIssuedRewardWithTotal",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/ConversionCouponIssuedReward"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "ConversionCouponIssuedRewardWithScroll",                      "required": [                        "items",                        "scroll"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/ConversionCouponIssuedReward"                          }                        },                        "scroll": {                          "$ref": "#/components/schemas/ScrollResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "DynamicIssuedRewardWithTotal",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/DynamicIssuedReward"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "DynamicIssuedRewardWithScroll",                      "required": [                        "items",                        "scroll"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/DynamicIssuedReward"                          }                        },                        "scroll": {                          "$ref": "#/components/schemas/ScrollResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "FortuneWheelIssuedRewardWithTotal",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/FortuneWheelIssuedRewardBasic"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "FortuneWheelIssuedRewardWithScroll",                      "required": [                        "items",                        "scroll"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/FortuneWheelIssuedRewardBasic"                          }                        },                        "scroll": {                          "$ref": "#/components/schemas/ScrollResponse"                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/redemption/{issuedReward}/status/history": {      "get": {        "tags": [          "Reward"        ],        "summary": "Change redeemed reward’s status change history",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a Reward redemption's status change history.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "redemptionGetStatusHistory",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/issuedReward"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/IssuedRewardStatusChange"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/reward/{reward}/photo/{photoId}": {      "get": {        "tags": [          "Reward"        ],        "summary": "Get reward's image",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a photo added to a specific Reward.\n",        "operationId": "photoGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          },          {            "name": "photoId",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "image/*": {                "schema": {                  "type": "string",                  "format": "binary"                }              }            }          },          "302": {            "description": "Redirect to presigned URL when presigned URLs are enabled."          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Reward"        ],        "summary": "Delete reward’s image",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows removing a photo added to a specific Reward.\n",        "operationId": "photoDelete",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          },          {            "name": "photoId",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/reward/{reward}/photo": {      "post": {        "tags": [          "Reward"        ],        "summary": "Add an image to the reward",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding a photo to a specific Reward.\n",        "operationId": "photoPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/reward"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "photo": {                    "$ref": "#/components/schemas/RewardPhotoFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/rewardCategory/{rewardCategory}": {      "get": {        "tags": [          "Reward category"        ],        "summary": "Get reward category details",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a specific Reward Category.\n",        "operationId": "rewardCategoryGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/rewardCategory"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "allOf": [                    {                      "properties": {                        "name": {                          "type": "string",                          "example": "Category name"                        }                      },                      "type": "object"                    },                    {                      "$ref": "#/components/schemas/RewardCategory"                    }                  ]                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Reward category"        ],        "summary": "Update a reward category",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows updating data a specific Reward Category.\n",        "operationId": "rewardCategoryPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/rewardCategory"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "reward_category": {                    "$ref": "#/components/schemas/EditRewardCategoryFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return updated reward category ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "rewardCategoryId": {                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/rewardCategory": {      "get": {        "tags": [          "Reward category"        ],        "summary": "Get reward categories list",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list of all Reward Categories.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "rewardCategoryGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "active",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of messages",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "allOf": [                          {                            "properties": {                              "name": {                                "type": "string",                                "example": "Category name"                              }                            },                            "type": "object"                          },                          {                            "$ref": "#/components/schemas/RewardCategory"                          }                        ]                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Reward category"        ],        "summary": "Add a new reward category",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding anew Reward Category.\n",        "operationId": "rewardCategoryPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "reward_category": {                    "$ref": "#/components/schemas/RewardCategoryFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return created reward category ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "rewardCategoryId": {                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/rewardCategory/{rewardCategory}/active": {      "post": {        "tags": [          "Reward category"        ],        "summary": "Activate a reward category",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows activating a specific Reward Category.\n",        "operationId": "rewardCategoryPostChangeState",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/rewardCategory"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "required": [                  "active"                ],                "properties": {                  "active": {                    "description": "If the category should be active",                    "type": "boolean"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "description": "Returned when reward category does not exist"          }        }      }    },    "/api/token/revoke": {      "get": {        "tags": [          "Authorization"        ],        "summary": "Log user out",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method can be used to log out current user.<br>\nIt will revoke all refresh tokens assigned to current user so it will not be possible\nto obtain new token based on stored refresh token.\n",        "operationId": "userGetTokenRevoke",        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/member/{member}/password": {      "post": {        "tags": [          "Member"        ],        "summary": "Add the member’s password",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows assigning a password to a specific Member.\n",        "operationId": "memberPostSetPassword",        "parameters": [          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/SetPasswordFormType"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/segment/{segment}": {      "get": {        "tags": [          "Segment"        ],        "summary": "Get segment’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all information about a specific Segment.\n",        "operationId": "segmentGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/segment"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/SegmentResponse"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Segment"        ],        "summary": "Update segment’s configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows updating data about a specific Segment.\n",        "operationId": "segmentPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/segment"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "segment": {                    "$ref": "#/components/schemas/EditSegmentFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return updated segment ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "segmentId": {                      "description": "Updated segment ID",                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Segment"        ],        "summary": "Delete a segment",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows removing a specific Segment.\n",        "operationId": "segmentDelete",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/segment"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/segment": {      "get": {        "tags": [          "Segment"        ],        "summary": "Get segments lists",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of all Segment in the system.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "segmentGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "description",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customersCount",            "in": "query",            "required": false,            "schema": {              "type": "integer"            }          },          {            "name": "averageTransactionAmount",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "averageTransactions",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "averageClv",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of segments",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/Segment"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Segment"        ],        "summary": "Add a new segment",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding a new Segment to the system.\n",        "operationId": "segmentPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "segment": {                    "$ref": "#/components/schemas/CreateSegmentFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return created segment ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "segmentId": {                      "description": "Created segment ID",                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/segment/{segment}/members": {      "get": {        "tags": [          "Segment"        ],        "summary": "Get segment’s members",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of all Members assigned to a Segment.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "segmentGetMembers",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/segment"          },          {            "name": "customerId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "firstName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "lastName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "email",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "phone",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of segmented members",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/SegmentCustomer"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/segment/{segment}/activate": {      "post": {        "tags": [          "Segment"        ],        "summary": "Activate a segment",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows activating a specific Segment.\n",        "operationId": "segmentPostActivate",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/segment"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/segment/{segment}/deactivate": {      "post": {        "tags": [          "Segment"        ],        "summary": "Deactivate a segment",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows deactivating a specific Segment.\n",        "operationId": "segmentPostDeactivate",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/segment"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/settings/activation": {      "get": {        "tags": [          "Settings"        ],        "summary": "Get activation configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns the current activation configuration. Is it required and what is This method (email or phone).\n",        "operationId": "settingsGetActivation",        "parameters": [          {            "name": "storeCode",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Return activation configuration",            "content": {              "application/json": {                "schema": {                  "properties": {                    "required": {                      "type": "boolean"                    },                    "method": {                      "type": "string"                    }                  },                  "type": "object"                }              }            }          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/settings/choices/{type}": {      "get": {        "tags": [          "Settings"        ],        "summary": "Get available options for the tenant",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of available options to choose from to save the settings depending on the selected type.\n",        "operationId": "settingsGetStoreChoices",        "parameters": [          {            "$ref": "#/components/parameters/choicesType"          },          {            "name": "storeCode",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "choices": {                      "type": "array",                      "items": {                        "type": "object",                        "additionalProperties": {                          "type": "string"                        }                      }                    }                  },                  "type": "object"                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/settings/choices/{type}": {      "get": {        "tags": [          "Settings"        ],        "summary": "Get available options",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of available options to choose from to save the settings depending on the selected type.\n",        "operationId": "settingsGetChoices",        "parameters": [          {            "$ref": "#/components/parameters/choicesType"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "choices": {                      "type": "array",                      "items": {                        "type": "object",                        "additionalProperties": {                          "type": "string"                        }                      }                    }                  },                  "type": "object"                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/tier/{tier}": {      "get": {        "tags": [          "Tier"        ],        "summary": "Get tier’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a specific Tier from the system.\n",        "operationId": "_tierGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tier"          }        ],        "responses": {          "200": {            "description": "Tier details.",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/TierResponse"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      },      "put": {        "tags": [          "Tier"        ],        "summary": "Update tier’s details",        "description": "This method allows updating a specific Tier in the system.\n",        "operationId": "tierPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tier"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "level": {                    "allOf": [                      {                        "$ref": "#/components/schemas/LevelFormType"                      },                      {                        "properties": {                          "translations": {                            "$ref": "#/components/schemas/Translations"                          }                        },                        "type": "object"                      }                    ]                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return updated tier ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "levelId": {                      "description": "Updated tier identity",                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      },      "delete": {        "tags": [          "Tier"        ],        "summary": "Delete a tier",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows removing a specific Tier from the system.\n",        "operationId": "tierDelete",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tier"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/tier/{tier}/photo": {      "get": {        "tags": [          "Tier"        ],        "summary": "Get tier's photo",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a photo added to a specific Tier.\n",        "operationId": "tierGetPhoto",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tier"          }        ],        "responses": {          "200": {            "description": "Returned when successful.",            "content": {              "image/*": {                "schema": {                  "type": "string",                  "format": "binary"                }              }            }          },          "302": {            "description": "Redirect to presigned URL when presigned URLs are enabled."          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Tier"        ],        "summary": "Add a tier’s photo",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding a photo to a specific Tier.\n",        "operationId": "tierPostPhoto",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tier"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "photo": {                    "$ref": "#/components/schemas/LevelPhotoFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Tier"        ],        "summary": "Delete tier’s photo",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows removing a photo from a specific Tier.\n",        "operationId": "tierDeletePhoto",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tier"          }        ],        "responses": {          "200": {            "description": "Returned when successful"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/tier/{tier}/export": {      "get": {        "tags": [          "Tier"        ],        "summary": "Export tier’s members list",        "description": "This method returns a file with all Members assigned to a specific Tier.\n",        "operationId": "tierGetCsvTier",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tier"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "text/csv": {                "schema": {                  "type": "string"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/tier/create": {      "post": {        "tags": [          "Tier"        ],        "summary": "Add a tier",        "description": "This method allows adding a new Tier to the system.\n",        "operationId": "tierPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "level": {                    "allOf": [                      {                        "$ref": "#/components/schemas/LevelFormType"                      },                      {                        "properties": {                          "translations": {                            "$ref": "#/components/schemas/Translations"                          }                        },                        "type": "object"                      }                    ]                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return created tier ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "levelId": {                      "description": "Created tier identity",                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        },        "deprecated": true      }    },    "/api/{storeCode}/tier/{tier}/activate": {      "post": {        "tags": [          "Tier"        ],        "summary": "Activate a tier",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows activating a specific Tier.\n",        "operationId": "tierPostActivate",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tier"          }        ],        "requestBody": {          "content": {            "application/json": {              "schema": {                "required": [                  "active"                ],                "properties": {                  "active": {                    "description": "If the tier should be active",                    "type": "boolean"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/tierSet": {      "get": {        "tags": [          "Tier"        ],        "summary": "Get tier sets list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of all created TierSets in the system.\nCurrently, it returns one available tierSet, but in the future, if the multi-tier sets created, it will return a list of all tierSets from the specific tenant (storeCode).\n",        "operationId": "_getTierSetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "description": "Filter by active filed",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "Tier set list.",            "content": {              "application/json": {                "schema": {                  "required": [                    "items",                    "total"                  ],                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/TierSetResponseList"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Tier"        ],        "summary": "Add a tier set",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding a new TierSet to the system.\n",        "operationId": "_tierSetPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "example": {                "tierSet": {                  "translations": {                    "en": {                      "name": "Gold tier set"                    }                  },                  "active": false,                  "conditions": [                    {                      "attribute": "monthsSinceJoiningProgram"                    }                  ],                  "downgrade": {                    "mode": "none"                  }                }              },              "schema": {                "$ref": "#/components/schemas/PostTierSet"              }            }          }        },        "responses": {          "200": {            "description": "Successfully created tier set .",            "content": {              "application/json": {                "schema": {                  "properties": {                    "tierSetId": {                      "description": "Created tierSet identity",                      "type": "string",                      "format": "uuid",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/transaction/{transaction}": {      "get": {        "tags": [          "Transactions"        ],        "summary": "Get transaction’s details",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns all information about a specific Transaction.\n",        "operationId": "transactionGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/transaction"          }        ],        "responses": {          "200": {            "description": "Transaction details.",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/Transaction"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Transactions"        ],        "summary": "Update transaction’s details",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows updating data about a specific Transaction.\n",        "operationId": "transactionPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/transaction"          }        ],        "requestBody": {          "content": {            "application/json": {              "schema": {                "properties": {                  "transaction": {                    "$ref": "#/components/schemas/PostTransaction"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/transaction": {      "get": {        "tags": [          "Transactions"        ],        "summary": "Get transactions list",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list of all Transaction in the system.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "transactionGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "transactionId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:customerId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:loyaltyCardNumber",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:email",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:phone",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:nip",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "header:documentType",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "header:documentNumber",            "in": "query",            "description": "Specifies the document number used in the transaction.",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "header:linkedDocumentNumber",            "in": "query",            "description": "Used only for return transactions and refers to the original ‘sell’ document.",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "header:purchasePlace",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "channelId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "header:purchasedAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "grossValue",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "matched",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "header:labels",            "in": "query",            "description": "Labels using pattern e.g. (key1;value1),(key2;value2),...",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "items:labels",            "in": "query",            "description": "Labels using pattern e.g. (key1;value1),(key2;value2),...",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "items:category",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "items:sku",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "items:maker",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "$ref": "#/components/parameters/scroll"          }        ],        "responses": {          "200": {            "description": "List of transactions",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "title": "TransactionsResponse",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/Transaction"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "TransactionsResponseWithScroll",                      "required": [                        "items",                        "scroll"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/Transaction"                          }                        },                        "scroll": {                          "$ref": "#/components/schemas/ScrollResponse"                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Transactions"        ],        "summary": "Add a transaction",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows creating a new Transaction.\n",        "operationId": "_transactionPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/PostTransaction"              }            }          }        },        "responses": {          "200": {            "description": "Return registered transaction id.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "transactionId": {                      "description": "Registered transaction identity",                      "type": "string",                      "format": "uuid",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/transaction/{transaction}/labels": {      "put": {        "tags": [          "Transactions"        ],        "summary": "Update transaction’s custom attribute",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows editing of Transaction labels.\n",        "operationId": "labelPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/transaction"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/AddLabelsFormType"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Transactions"        ],        "summary": "Delete transaction’s custom attribute",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows removing a Transaction labels.\n",        "operationId": "lebelDelete",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/transaction"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/RemoveLabelsFormType"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/transaction/assign": {      "post": {        "tags": [          "Transactions"        ],        "summary": "Match the transaction",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows importing assignments to Transaction.\n",        "operationId": "transactionPostMemberAssign",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "example": {                "assign": {                  "transactionDocumentNumber": "TXN-00001",                  "customerId": "d290f1ee-6c54-4b01-90e6-d701748f0851"                }              },              "schema": {                "properties": {                  "assign": {                    "$ref": "#/components/schemas/ManuallyAssignCustomerToTransactionFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return transaction ID and assigned member ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "transactionId": {                      "type": "string",                      "example": "7c9e6679-7425-40de-944b-e07fc1f90ae7"                    },                    "customerId": {                      "type": "string",                      "example": "d290f1ee-6c54-4b01-90e6-d701748f0851"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/admin/login_check": {      "post": {        "tags": [          "Authorization"        ],        "summary": "Get admin token",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows to login and get a JWT token for the admin\n",        "operationId": "adminLoginCheck",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "username": {                    "type": "string",                    "example": "admin"                  },                  "password": {                    "type": "string",                    "example": "password"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "$ref": "#/components/responses/TokenAndRefreshToken"          },          "401": {            "$ref": "#/components/responses/BadCredentials"          }        },        "security": []      }    },    "/api/{storeCode}/member/login_check": {      "post": {        "tags": [          "Authorization"        ],        "summary": "Get member token",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows to login and get a JWT token for the member\n",        "operationId": "memberLoginCheck",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "username": {                    "type": "string",                    "example": "member"                  },                  "password": {                    "type": "string",                    "example": "password"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "$ref": "#/components/responses/TokenAndRefreshToken"          },          "401": {            "$ref": "#/components/responses/BadCredentials"          }        },        "deprecated": true,        "security": []      }    },    "/api/token/refresh": {      "post": {        "tags": [          "Authorization"        ],        "summary": "Refresh admin token",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "tokenRefresh",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "refresh_token": {                    "type": "string",                    "example": "0558f8bb29948c4e54c443f..."                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "$ref": "#/components/responses/TokenAndRefreshToken"          },          "401": {            "$ref": "#/components/responses/BadCredentials"          }        },        "security": []      }    },    "/api/{storeCode}/token/refresh": {      "post": {        "tags": [          "Authorization"        ],        "summary": "Refresh member token",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "tokenRefreshMember",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "refresh_token": {                    "type": "string",                    "example": "0558f8bb29948c4e54c443f..."                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "$ref": "#/components/responses/TokenAndRefreshToken"          },          "401": {            "$ref": "#/components/responses/BadCredentials"          }        },        "deprecated": true,        "security": []      }    },    "/api/{storeCode}/settings": {      "get": {        "tags": [          "Settings"        ],        "summary": "Return settings",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all system settings.\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "settingsGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "public",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "settings": {                      "type": "array",                      "items": {                        "type": "object",                        "additionalProperties": {                          "type": "string"                        }                      }                    }                  },                  "type": "object"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Settings"        ],        "summary": "Configure settings",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows configuring system settings.\n",        "operationId": "settingsPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "example": {                "settings": {                  "activeMember": {                    "transactionInXDays": 30                  }                }              },              "schema": {                "properties": {                  "settings": {                    "properties": {                      "programName": {                        "type": "string",                        "deprecated": true                      },                      "programUrl": {                        "type": "string",                        "deprecated": true                      },                      "allowCustomersProfileEdits": {                        "type": "boolean"                      },                      "expirePointsNotificationDays": {                        "type": "integer"                      },                      "expireCouponsNotificationDays": {                        "type": "integer"                      },                      "expireLevelsNotificationDays": {                        "type": "integer"                      },                      "customersIdentificationConfigurations": {                        "type": "array",                        "items": {                          "$ref": "#/components/schemas/CustomersIdentificationConfiguration"                        }                      },                      "tierAssignType": {                        "type": "string",                        "enum": [                          "points",                          "transactions"                        ]                      },                      "tierWalletCode": {                        "type": "string"                      },                      "excludeDeliveryCostsFromTierAssignment": {                        "type": "boolean"                      },                      "excludedDeliverySKUs": {                        "type": "array",                        "items": {                          "type": "string"                        },                        "deprecated": true                      },                      "excludedLevelSKUs": {                        "type": "array",                        "items": {                          "type": "string"                        },                        "deprecated": true                      },                      "excludedLevelCategories": {                        "type": "array",                        "items": {                          "type": "string"                        }                      },                      "levelDowngradeMode": {                        "type": "string",                        "enum": [                          "none",                          "automatic",                          "after_x_days"                        ]                      },                      "timezoneStrategy": {                        "type": "string",                        "enum": [                          "none",                          "default",                          "localtime"                        ]                      },                      "levelDowngradeDays": {                        "type": "integer"                      },                      "levelDowngradeBase": {                        "type": "string",                        "enum": [                          "none",                          "active_points",                          "earned_points",                          "earned_points_since_last_level_change"                        ]                      },                      "levelResetPointsOnDowngrade": {                        "type": "boolean"                      },                      "accountActivationRequired": {                        "type": "boolean"                      },                      "identificationMethod": {                        "type": "string",                        "enum": [                          "email",                          "phone",                          "loyaltyCardNumber"                        ]                      },                      "timezone": {                        "type": "string",                        "example": "Europe/Warsaw"                      },                      "rewardWalletCode": {                        "type": "string"                      },                      "activeMember": {                        "properties": {                          "transactionInXDays": {                            "description": "Required if the customEventsInXDays field is not filled.",                            "type": "integer"                          },                          "customEventsInXDays": {                            "description": "Required if the transactionInXDays field is not filled.",                            "required": [                              "days",                              "allEvents"                            ],                            "properties": {                              "days": {                                "type": "integer"                              },                              "allEvents": {                                "type": "boolean"                              },                              "eventTypes": {                                "type": "array",                                "items": {                                  "type": "string"                                }                              }                            },                            "type": "object"                          },                          "operator": {                            "description": "Required if the customEventsInXDays and transactionInXDays fields are filled.",                            "type": "string",                            "enum": [                              "and",                              "or"                            ]                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Granted settings",            "content": {              "application/json": {                "schema": {                  "properties": {                    "settings": {                      "type": "array",                      "items": {                        "type": "object",                        "additionalProperties": {                          "type": "string"                        }                      }                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "patch": {        "tags": [          "Settings"        ],        "summary": "Update settings",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows configuring system settings partially.\n",        "operationId": "settingsPatch",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "example": {                "settings": {                  "activeMember": {                    "transactionInXDays": 30                  }                }              },              "schema": {                "properties": {                  "settings": {                    "properties": {                      "programName": {                        "type": "string",                        "deprecated": true                      },                      "programUrl": {                        "type": "string",                        "deprecated": true                      },                      "allowCustomersProfileEdits": {                        "type": "boolean"                      },                      "expirePointsNotificationDays": {                        "type": "integer"                      },                      "expireCouponsNotificationDays": {                        "type": "integer"                      },                      "expireLevelsNotificationDays": {                        "type": "integer"                      },                      "customersIdentificationConfigurations": {                        "type": "array",                        "items": {                          "$ref": "#/components/schemas/CustomersIdentificationConfiguration"                        }                      },                      "tierAssignType": {                        "type": "string",                        "enum": [                          "points",                          "transactions"                        ]                      },                      "tierWalletCode": {                        "type": "string"                      },                      "excludeDeliveryCostsFromTierAssignment": {                        "type": "boolean"                      },                      "excludedDeliverySKUs": {                        "type": "array",                        "items": {                          "type": "string"                        },                        "deprecated": true                      },                      "excludedLevelSKUs": {                        "type": "array",                        "items": {                          "type": "string"                        },                        "deprecated": true                      },                      "excludedLevelCategories": {                        "type": "array",                        "items": {                          "type": "string"                        }                      },                      "levelDowngradeMode": {                        "type": "string",                        "enum": [                          "none",                          "automatic",                          "after_x_days"                        ]                      },                      "timezoneStrategy": {                        "type": "string",                        "enum": [                          "none",                          "default",                          "localtime"                        ]                      },                      "levelDowngradeDays": {                        "type": "integer"                      },                      "levelDowngradeBase": {                        "type": "string",                        "enum": [                          "none",                          "active_points",                          "earned_points",                          "earned_points_since_last_level_change"                        ]                      },                      "levelResetPointsOnDowngrade": {                        "type": "boolean"                      },                      "accountActivationRequired": {                        "type": "boolean"                      },                      "identificationMethod": {                        "type": "string",                        "enum": [                          "email",                          "phone",                          "loyaltyCardNumber"                        ]                      },                      "timezone": {                        "type": "string",                        "example": "Europe/Warsaw"                      },                      "rewardWalletCode": {                        "type": "string"                      },                      "activeMember": {                        "properties": {                          "transactionInXDays": {                            "description": "Required if the customEventsInXDays field is not filled.",                            "type": "integer"                          },                          "customEventsInXDays": {                            "description": "Required if the transactionInXDays field is not filled.",                            "required": [                              "days",                              "allEvents"                            ],                            "properties": {                              "days": {                                "type": "integer"                              },                              "allEvents": {                                "type": "boolean"                              },                              "eventTypes": {                                "type": "array",                                "items": {                                  "type": "string"                                }                              }                            },                            "type": "object"                          },                          "operator": {                            "description": "Required if the customEventsInXDays and transactionInXDays fields are filled.",                            "type": "string",                            "enum": [                              "and",                              "or"                            ]                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Returned when successful"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/achievement": {      "get": {        "tags": [          "Achievement"        ],        "summary": "Get achievements list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "achievementGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of achievements",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/AchievementBasicData"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        },        "deprecated": true      },      "post": {        "tags": [          "Achievement"        ],        "summary": "Add an achievement",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding a new achievement to the system.\n",        "operationId": "achievementPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "achievement": {                    "allOf": [                      {                        "$ref": "#/components/schemas/CreateAchievementFormType"                      },                      {                        "properties": {                          "rules": {                            "type": "array",                            "items": {                              "allOf": [                                {                                  "properties": {                                    "completeRule": {                                      "allOf": [                                        {                                          "properties": {                                            "period": {                                              "allOf": [                                                {                                                  "properties": {                                                    "type": {                                                      "$ref": "#/components/schemas/PeriodTypeFormType"                                                    },                                                    "consecutive": {                                                      "type": "integer"                                                    }                                                  },                                                  "type": "object"                                                }                                              ]                                            }                                          },                                          "type": "object"                                        }                                      ]                                    },                                    "aggregation": {                                      "allOf": [                                        {                                          "properties": {                                            "rule": {                                              "type": "string"                                            },                                            "type": {                                              "type": "string"                                            }                                          },                                          "type": "object"                                        }                                      ]                                    },                                    "conditions": {                                      "type": "array",                                      "items": {                                        "$ref": "#/components/schemas/ConditionType"                                      }                                    },                                    "translations": {                                      "properties": {                                        "en": {                                          "properties": {                                            "name": {                                              "type": "string"                                            },                                            "description": {                                              "type": "string"                                            }                                          },                                          "type": "object"                                        }                                      },                                      "type": "object"                                    },                                    "event": {                                      "type": "string"                                    },                                    "uniqueReferee": {                                      "type": "boolean"                                    }                                  },                                  "type": "object"                                }                              ]                            }                          }                        },                        "type": "object"                      }                    ]                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return created achievement ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "achievementId": {                      "type": "string",                      "format": "uuid",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        },        "deprecated": true      }    },    "/api/{storeCode}/member/{member}/achievement": {      "get": {        "tags": [          "Achievement"        ],        "summary": "Get member's achievements status",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Integration</label><br><br>\n",        "operationId": "achievementProgressMember",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "achievementId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "completionCount",            "in": "query",            "required": false,            "schema": {              "type": "integer"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of active achievements progress for member",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/MemberAchievement"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/webhook/subscription": {      "get": {        "tags": [          "Webhook subscription"        ],        "summary": "Get webhook subscriptions list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "webhookSubscriptionGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "url",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "legacy",            "in": "query",            "required": false,            "deprecated": true,            "schema": {              "type": "boolean"            }          },          {            "name": "eventName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of webhook subscriptions",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/WebhookSubscription"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Webhook subscription"        ],        "summary": "Subscribe to a webhook",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding a new webhook subscription to the system.\nWhen `hmacEnabled` is set to `true`, the response includes a one-time plaintext HMAC secret key\n(`whsec_` prefix). The key is never shown again — store it securely.\n",        "operationId": "_webhookSubscriptionPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "$ref": "#/components/schemas/PostRestWebhookSubscriptionRequestBody"                  },                  {                    "$ref": "#/components/schemas/PostQueueWebhookSubscriptionRequestBody"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "Return created webhook subscription ID. When HMAC is enabled, also returns the one-time plaintext secret key.",            "content": {              "application/json": {                "schema": {}              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/member/{member}/wallet": {      "get": {        "tags": [          "Wallet"        ],        "summary": "Get member’s wallets details",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "memberWalletGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "walletTypeId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of wallets",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/Wallet"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/analytics/campaign/single-view/{campaignId}": {      "get": {        "tags": [          "Data Analytics"        ],        "summary": "Retrieve campaign overview",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "dataAnalyticsGetCampaignSingleView",        "parameters": [          {            "name": "dataType",            "in": "query",            "required": true,            "schema": {              "type": "string",              "enum": [                "totalEngagement",                "engagedMembers"              ]            }          },          {            "name": "aggregationType",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "day",                "week",                "month",                "year"              ]            }          },          {            "name": "intervalStartDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date"            }          },          {            "name": "intervalEndDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date"            }          },          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "campaignId",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"            }          }        ],        "responses": {          "200": {            "description": "Data for general overview dashboard",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "allOf": [                    {                      "$ref": "#/components/schemas/SingleView"                    },                    {                      "properties": {                        "aggregationType": {                          "type": "string",                          "enum": [                            "day",                            "week",                            "month",                            "year"                          ]                        },                        "dataType": {                          "type": "string",                          "enum": [                            "totalEngagement",                            "engagedMembers"                          ]                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/export/{export}": {      "get": {        "tags": [          "Export"        ],        "summary": "Get export details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "exportGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/export"          }        ],        "responses": {          "200": {            "description": "Export details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/Export"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/export/{export}/download": {      "get": {        "tags": [          "Export"        ],        "summary": "Download an export",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "exportGetDownload",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/export"          }        ],        "responses": {          "200": {            "description": "CSV File",            "content": {              "text/csv": {                "schema": {                  "type": "string"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/export": {      "get": {        "tags": [          "Export"        ],        "summary": "Get exports lists",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "exportGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "exportId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "type",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "campaignCode",                "member",                "memberTier",                "memberSegment",                "rewardFulfillment"              ]            }          },          {            "name": "status",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "pending",                "done",                "failed",                "error"              ]            }          },          {            "name": "message",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of exports",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/ExportBasicData"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/export/{type}": {      "post": {        "tags": [          "Export"        ],        "summary": "Create an export",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "postExport",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "type",            "in": "path",            "description": "Export type",            "required": true,            "schema": {              "type": "string",              "enum": [                "campaignCode",                "member",                "memberTier",                "memberSegment",                "rewardFulfillment"              ]            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "$ref": "#/components/schemas/ExportCampaignCodeTypeRequestBody"                  },                  {                    "$ref": "#/components/schemas/ExportMemberTypeRequestBody"                  },                  {                    "$ref": "#/components/schemas/ExportMemberTierTypeRequestBody"                  },                  {                    "$ref": "#/components/schemas/ExportMemberSegmentTypeRequestBody"                  },                  {                    "$ref": "#/components/schemas/ExportRewardFulfillmentTypeRequestBody"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/ExportId"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/tierSet/{tierSet}": {      "get": {        "tags": [          "Tier"        ],        "summary": "Return tier set member progress.",        "description": "This method returns detailed member progress information for a specific tier set",        "operationId": "_tierSetMemberProgress",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "$ref": "#/components/parameters/tierSet"          }        ],        "responses": {          "200": {            "description": "Tier set member progress.",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/TierSetMemberProgress"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/webhook/subscription/{webhookSubscription}": {      "get": {        "tags": [          "Webhook subscription"        ],        "summary": "Get a webhook subscription details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "webhookSubscriptionGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/webhookSubscription"          }        ],        "responses": {          "200": {            "description": "Webhook subscription details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/WebhookSubscriptionDetails"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Webhook subscription"        ],        "summary": "Update subscription to a webhook",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows updating an existing webhook subscription.\nWhen `hmacEnabled` is set to `true` on a subscription that does not already have HMAC,\nthe response includes a one-time plaintext HMAC secret key (`whsec_` prefix).\nThe key is never shown again — store it securely.\nWhen `hmacEnabled` is omitted, the HMAC state is not changed (backward compatible).\n",        "operationId": "_webhookSubscriptionPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "webhookSubscription",            "in": "path",            "description": "Webhook Subscription ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "$ref": "#/components/schemas/PutRestWebhookSubscriptionRequestBody"                  },                  {                    "$ref": "#/components/schemas/PutQueueWebhookSubscriptionRequestBody"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "HMAC was enabled on the subscription. Returns the one-time plaintext secret key. This key will never be shown again.",            "headers": {              "Cache-Control": {                "schema": {                  "type": "string",                  "example": "no-store, no-cache"                }              },              "Pragma": {                "schema": {                  "type": "string",                  "example": "no-cache"                }              }            },            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/PutWebhookSubscriptionHmacEnabledResponse"                }              }            }          },          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Webhook subscription"        ],        "summary": "Delete subscription to a webhook",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "webhookSubscriptionDelete",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/webhookSubscription"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/webhook/event": {      "get": {        "tags": [          "Webhook subscription"        ],        "summary": "Get webhook event types",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "webhookEventGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "200": {            "description": "List of webhook events",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "type": "string"                      }                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/bulkAction/{type}": {      "post": {        "tags": [          "Bulk Action"        ],        "summary": "Create bulk action",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_postBulkAction",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "type",            "in": "path",            "description": "Bulk Action Type",            "required": true,            "schema": {              "type": "string",              "enum": [                "cancelTransfers",                "activateTransfers",                "expireTransfers",                "changeExpirationTransfers"              ]            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "$ref": "#/components/schemas/cancelTransfersTypeRequestBody"                  },                  {                    "$ref": "#/components/schemas/activateTransfersTypeRequestBody"                  },                  {                    "$ref": "#/components/schemas/expireTransfersTypeRequestBody"                  },                  {                    "$ref": "#/components/schemas/changeExpirationTransfersTypeRequestBody"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "required": [                    "bulkActionId"                  ],                  "properties": {                    "bulkActionId": {                      "type": "string",                      "format": "uuid"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/bulkAction": {      "get": {        "tags": [          "Bulk Action"        ],        "summary": "Get bulk actions",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_getBulkActions",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "type",            "in": "query",            "description": "Bulk Action Type",            "required": false,            "schema": {              "type": "string",              "enum": [                "cancelTransfers",                "activateTransfers",                "expireTransfers",                "changeExpirationTransfers"              ]            }          },          {            "name": "requestedAt",            "in": "query",            "description": "Date and time when the action was requested by admin",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/bulkAction"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/bulkAction/{bulkActionId}/item": {      "get": {        "tags": [          "Bulk Action"        ],        "summary": "Get bulk action items",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_getBulkActionItems",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "bulkActionId",            "in": "path",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "objectToProcessId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "updatedAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "status",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "queued",                "inprogress",                "completed",                "failed",                "error"              ]            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/bulkActionItem"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/custom-field-schema": {      "get": {        "tags": [          "Custom Field Schema"        ],        "summary": "Get list of custom field schemas",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nReturns a paginated list of custom field schemas with optional search and filters\n",        "operationId": "_customFieldSchemaList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "name",            "in": "query",            "description": "Filter by name",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "description",            "in": "query",            "description": "Filter by description",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "required",            "in": "query",            "description": "Filter by required status",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "active",            "in": "query",            "description": "Filter by active status",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "type",            "in": "query",            "description": "Filter by field type",            "required": false,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Successful response with list of custom field schemas",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CustomFieldSchemaListResponse"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Custom Field Schema"        ],        "summary": "Create a new custom field schema",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nCreates a new custom field schema for members\n",        "operationId": "_customFieldSchemaCreate",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "memberCustomFieldSchema"                ],                "properties": {                  "memberCustomFieldSchema": {                    "$ref": "#/components/schemas/CreateCustomFieldSchemaRequest"                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "200": {            "description": "Custom field schema created successfully",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CreateCustomFieldSchemaResponse"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/custom-field-schema/{customFieldSchemaId}": {      "get": {        "tags": [          "Custom Field Schema"        ],        "summary": "Get a custom field schema",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nReturns a single custom field schema by its ID\n",        "operationId": "_customFieldSchemaGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "customFieldSchemaId",            "in": "path",            "description": "Custom field schema ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "responses": {          "200": {            "description": "Custom field schema details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CustomFieldSchemaResponse"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/custom-field-schema/{customFieldSchema}": {      "put": {        "tags": [          "Custom Field Schema"        ],        "summary": "Update a custom field schema",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nUpdates an existing custom field schema\n",        "operationId": "_customFieldSchemaUpdate",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "customFieldSchema",            "in": "path",            "description": "Custom field schema ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "memberCustomFieldSchema"                ],                "properties": {                  "memberCustomFieldSchema": {                    "$ref": "#/components/schemas/UpdateCustomFieldSchemaRequest"                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/custom-field-groups/entity-types": {      "get": {        "operationId": "_customFieldGroupEntityTypes",        "tags": [          "Custom Field Group"        ],        "summary": "List supported entity types",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nReturns the list of entity types enabled for this store via feature flags.\nThe list is store-scoped and flag-gated — do not cache it across tenants or\nacross flag changes. It reflects the values currently accepted in the\n`entityType` path parameter of other Custom Field Group endpoints for this store.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "responses": {          "200": {            "description": "Supported entity types",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CustomFieldEntityTypesResponse"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/custom-field-groups/{entityType}": {      "get": {        "operationId": "_customFieldGroupList",        "tags": [          "Custom Field Group"        ],        "summary": "List custom field groups",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nReturns all custom field groups for the given entity type.\nResults are ordered by sortOrder ascending.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "name": "customFieldGroupId",            "in": "query",            "required": false,            "description": "Filter by group UUID",            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "name",            "in": "query",            "required": false,            "description": "Filter by group name (partial match)",            "schema": {              "type": "string"            }          },          {            "name": "key",            "in": "query",            "required": false,            "description": "Filter by group key (partial match)",            "schema": {              "type": "string"            }          },          {            "name": "includeDeleted",            "in": "query",            "required": false,            "description": "Whether to include soft-deleted groups. Defaults to `false`.",            "schema": {              "type": "boolean",              "default": false            }          }        ],        "responses": {          "200": {            "description": "List of custom field groups",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "required": [                    "items",                    "total"                  ],                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/CustomFieldGroupResponse"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  }                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "operationId": "_customFieldGroupCreate",        "tags": [          "Custom Field Group"        ],        "summary": "Create a custom field group",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nCreates a new custom field group for the given entity type.\nThe groupKey is immutable after creation.\nThe total number of active field definitions per store and entity type combination\nis capped by a configurable aggregate limit (across all groups); the number of groups\nis not limited on its own.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "type": "object",                "required": [                  "customFieldGroup"                ],                "properties": {                  "customFieldGroup": {                    "$ref": "#/components/schemas/CreateCustomFieldGroupRequest"                  }                }              }            }          }        },        "responses": {          "201": {            "description": "Custom field group created successfully",            "content": {              "application/json": {                "schema": {                  "type": "object",                  "required": [                    "groupKey"                  ],                  "properties": {                    "groupKey": {                      "type": "string",                      "description": "Key of the created custom field group"                    }                  }                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "patch": {        "operationId": "_customFieldGroupBulkMerge",        "tags": [          "Custom Field Group"        ],        "summary": "Bulk create or update custom field groups",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nCreates or updates multiple custom field groups in a single atomic operation.\nGroups are matched by `groupKey` — existing groups are updated, unknown keys are created.\nGroups not present in the request are left untouched (merge semantics on the collection).\nAll items are validated before any are persisted. If any item fails, nothing is saved.\nField definitions within each touched group follow PUT semantics: definitions omitted from\nthe request are deactivated. The `fieldType` of an existing definition is immutable.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "type": "object",                "required": [                  "customFieldGroups"                ],                "additionalProperties": false,                "properties": {                  "customFieldGroups": {                    "type": "array",                    "items": {                      "$ref": "#/components/schemas/UpsertCustomFieldGroupRequest"                    }                  }                }              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/custom-field-groups/{entityType}/{groupKey}": {      "get": {        "operationId": "_customFieldGroupGet",        "tags": [          "Custom Field Group"        ],        "summary": "Get a custom field group",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nReturns a single custom field group with its field definitions.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          },          {            "name": "groupKey",            "in": "path",            "required": true,            "description": "Group key",            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Custom field group details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CustomFieldGroupResponse"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "operationId": "_customFieldGroupReplace",        "tags": [          "Custom Field Group"        ],        "summary": "Replace a custom field group",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nReplaces all mutable fields of a custom field group.\nThe groupKey and entityType are immutable and cannot be changed.\nExisting field definitions not included in the request are removed (if not immutable).\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          },          {            "name": "groupKey",            "in": "path",            "required": true,            "description": "Group key",            "schema": {              "type": "string"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "type": "object",                "required": [                  "customFieldGroup"                ],                "properties": {                  "customFieldGroup": {                    "$ref": "#/components/schemas/UpdateCustomFieldGroupRequest"                  }                }              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "patch": {        "operationId": "_customFieldGroupUpdate",        "tags": [          "Custom Field Group"        ],        "summary": "Partially update a custom field group",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nUpdates only the provided fields of a custom field group.\nOmitted fields are left unchanged.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          },          {            "name": "groupKey",            "in": "path",            "required": true,            "description": "Group key",            "schema": {              "type": "string"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "type": "object",                "required": [                  "customFieldGroup"                ],                "properties": {                  "customFieldGroup": {                    "$ref": "#/components/schemas/PatchCustomFieldGroupRequest"                  }                }              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "operationId": "_customFieldGroupDelete",        "tags": [          "Custom Field Group"        ],        "summary": "Delete a custom field group",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nSoft-deletes a custom field group. The record is not permanently removed.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          },          {            "name": "groupKey",            "in": "path",            "required": true,            "description": "Group key",            "schema": {              "type": "string"            }          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/custom-fields/{entityType}/{entityId}": {      "patch": {        "operationId": "_customFieldValuePatchBulk",        "tags": [          "Custom Field Value"        ],        "summary": "Set multiple custom field values",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nSets values for multiple custom fields across one or more groups in a single request.\nPassing `null` as a value clears the field.\nThe request body is a map of groupKey → map of fieldKey → value.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          },          {            "name": "entityId",            "in": "path",            "required": true,            "description": "ID of the entity to update custom fields for",            "schema": {              "type": "string"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/BulkCustomFieldValuesRequest"              },              "example": {                "personal_info": {                  "birth_year": 1990,                  "newsletter": true                },                "preferences": {                  "language": "en"                }              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "anyOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/custom-fields/{entityType}/{entityId}/{groupKey}": {      "delete": {        "operationId": "_customFieldValueRemoveGroup",        "tags": [          "Custom Field Value"        ],        "summary": "Remove all custom field values in a group",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nRemoves all stored custom field values for the given group on the entity.\nThe operation is idempotent: a `204` is returned whenever the entity and\ngroup resolve, regardless of how many values were actually stored. A `404`\nis returned when the entity does not exist or the group key does not\nresolve to an existing group definition. A `400` is returned when the\nentity exists but does not match the given entity type.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          },          {            "name": "entityId",            "in": "path",            "required": true,            "description": "ID of the entity to remove custom field values from",            "schema": {              "type": "string"            }          },          {            "name": "groupKey",            "in": "path",            "required": true,            "description": "Group key whose values are removed",            "schema": {              "type": "string"            }          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "anyOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/custom-fields/{entityType}/{entityId}/{groupKey}/{fieldKey}": {      "patch": {        "operationId": "_customFieldValuePatchSingle",        "tags": [          "Custom Field Value"        ],        "summary": "Set a single custom field value",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nSets or clears the value of a single custom field.\nPassing `null` as the value clears the field.\n",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "entityType",            "in": "path",            "required": true,            "description": "Entity type",            "schema": {              "$ref": "#/components/schemas/CustomFieldEntityType"            }          },          {            "name": "entityId",            "in": "path",            "required": true,            "description": "ID of the entity to update",            "schema": {              "type": "string"            }          },          {            "name": "groupKey",            "in": "path",            "required": true,            "description": "Group key containing the field",            "schema": {              "type": "string"            }          },          {            "name": "fieldKey",            "in": "path",            "required": true,            "description": "Field key to update",            "schema": {              "type": "string"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/SingleCustomFieldValueRequest"              }            }          }        },        "responses": {          "204": {            "description": "Value set successfully"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "anyOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/achievement/{achievement}": {      "get": {        "tags": [          "Achievement"        ],        "summary": "Get achievement’s configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_achievementGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/achievement"          }        ],        "responses": {          "200": {            "description": "Achievement details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/Achievement"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      },      "put": {        "tags": [          "Achievement"        ],        "summary": "Update achievement’s configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "achievementPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/achievement"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "achievement": {                    "allOf": [                      {                        "$ref": "#/components/schemas/UpdateAchievementFormType"                      },                      {                        "properties": {                          "rules": {                            "type": "array",                            "items": {                              "allOf": [                                {                                  "properties": {                                    "completeRule": {                                      "allOf": [                                        {                                          "properties": {                                            "period": {                                              "allOf": [                                                {                                                  "properties": {                                                    "type": {                                                      "$ref": "#/components/schemas/PeriodTypeFormType"                                                    },                                                    "consecutive": {                                                      "type": "integer"                                                    }                                                  },                                                  "type": "object"                                                }                                              ]                                            }                                          },                                          "type": "object"                                        }                                      ]                                    },                                    "aggregation": {                                      "allOf": [                                        {                                          "properties": {                                            "rule": {                                              "type": "string"                                            },                                            "type": {                                              "type": "string"                                            }                                          },                                          "type": "object"                                        }                                      ]                                    },                                    "conditions": {                                      "type": "array",                                      "items": {                                        "$ref": "#/components/schemas/ConditionType"                                      }                                    },                                    "translations": {                                      "properties": {                                        "en": {                                          "properties": {                                            "name": {                                              "type": "string"                                            },                                            "description": {                                              "type": "string"                                            }                                          },                                          "type": "object"                                        }                                      },                                      "type": "object"                                    },                                    "event": {                                      "type": "string"                                    },                                    "uniqueReferee": {                                      "type": "boolean"                                    }                                  },                                  "type": "object"                                }                              ]                            }                          }                        },                        "type": "object"                      }                    ]                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      },      "patch": {        "tags": [          "Achievement"        ],        "summary": "Update achievement’s configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "achievementPatch",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/achievement"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "achievement": {                    "$ref": "#/components/schemas/PatchAchievementFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/achievement/trigger/member/{member}": {      "get": {        "tags": [          "Achievement"        ],        "summary": "Get member's achievements triggers list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Integration</label><br><br>\nThis endpoint provides a log of all events that contributed to the progress of a member's achievement.\n\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "_achievementMemberTriggers",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "achievementId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "ruleId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "triggerId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "campaignId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of achievements triggers for a member",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "required": [                          "ruleId",                          "triggerId",                          "createdAt"                        ],                        "properties": {                          "achievementId": {                            "type": "string",                            "format": "uuid"                          },                          "achievementName": {                            "type": "string"                          },                          "ruleId": {                            "type": "string",                            "format": "uuid"                          },                          "ruleName": {                            "type": "string"                          },                          "triggerId": {                            "type": "string",                            "format": "uuid"                          },                          "createdAt": {                            "type": "string",                            "format": "date-time"                          },                          "campaignId": {                            "type": "string",                            "format": "uuid"                          },                          "campaignName": {                            "type": "string"                          }                        },                        "type": "object",                        "additionalProperties": false                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        },        "deprecated": true      }    },    "/api/admin/{admin}/api-key": {      "get": {        "tags": [          "Admin"        ],        "summary": "Gives a list of api keys",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Management</label><br><br>\n",        "operationId": "_apiKeyGetList",        "parameters": [          {            "$ref": "#/components/parameters/admin"          },          {            "name": "apiKeyId",            "in": "query",            "description": "API Key ID",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "name",            "in": "query",            "description": "Name",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "token",            "in": "query",            "description": "Token",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "expirationDate",            "in": "query",            "description": "Expiration date",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "API key list.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "required": [                          "apiKeyId",                          "token",                          "adminId",                          "name",                          "legacy"                        ],                        "properties": {                          "apiKeyId": {                            "type": "string",                            "format": "uuid"                          },                          "token": {                            "type": "string"                          },                          "adminId": {                            "type": "string",                            "format": "uuid"                          },                          "name": {                            "type": "string"                          },                          "legacy": {                            "type": "boolean"                          },                          "expirationDate": {                            "type": "string",                            "format": "date-time"                          }                        },                        "type": "object"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Admin"        ],        "summary": "Add a new API key",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows creating a new Api key.\n",        "operationId": "_apiKeyPost",        "parameters": [          {            "$ref": "#/components/parameters/admin"          }        ],        "requestBody": {          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/ApiKeyRequest"              }            }          }        },        "responses": {          "200": {            "description": "Return created API key.",            "content": {              "application/json": {                "schema": {                  "required": [                    "apiKeyId",                    "token",                    "adminId",                    "name",                    "legacy"                  ],                  "properties": {                    "apiKeyId": {                      "type": "string",                      "format": "uuid"                    },                    "token": {                      "type": "string"                    },                    "adminId": {                      "type": "string",                      "format": "uuid"                    },                    "name": {                      "type": "string"                    },                    "legacy": {                      "type": "boolean"                    },                    "expirationDate": {                      "type": "string",                      "format": "date-time"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/admin/{admin}/api-key/{apikey}": {      "put": {        "tags": [          "Admin"        ],        "summary": "Edit API key",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows edit a Api key.\n",        "operationId": "_apiKeyPut",        "parameters": [          {            "$ref": "#/components/parameters/admin"          },          {            "$ref": "#/components/parameters/apikey"          }        ],        "requestBody": {          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/ApiKeyRequest"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Admin"        ],        "summary": "Delete API key",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows you to delete api key.\n",        "operationId": "_apiKeyDelete",        "parameters": [          {            "$ref": "#/components/parameters/admin"          },          {            "$ref": "#/components/parameters/apikey"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/system-log/export": {      "get": {        "tags": [          "Audit"        ],        "summary": "Get list of exports for system logs",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_getExportsSystemLogs",        "parameters": [          {            "name": "exportId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "$ref": "#/components/schemas/DateTimeCriteriaField"            }          },          {            "name": "status",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "done",                "failed",                "processing",                "pending"              ]            }          },          {            "name": "message",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of exports for system logs",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/SystemLogExportResponse"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Audit"        ],        "summary": "Create an export for system logs",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_postExportSystemLogs",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/ExportSystemLogTypeRequestBody"              }            }          }        },        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/ExportId"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/system-log/export/{export}": {      "get": {        "tags": [          "Audit"        ],        "summary": "Get an export for system logs",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_getExportSystemLogs",        "parameters": [          {            "$ref": "#/components/parameters/export"          }        ],        "responses": {          "200": {            "description": "Export for system logs",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/SystemLogExport"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/system-log/export/{export}/download": {      "get": {        "tags": [          "Audit"        ],        "summary": "Download an export for system logs",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_getDownloadExportSystemLogs",        "parameters": [          {            "$ref": "#/components/parameters/export"          }        ],        "responses": {          "200": {            "description": "CSV File"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/billable-report": {      "get": {        "tags": [          "Billable Report"        ],        "summary": "Get billable reports list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a list of billable members, transactions and events per last 12 months and sum of those period.<br>\nIf `tenantId` is provided, it will return the billable report for that tenant otherwise it will return the billable report for all tenants.\n",        "operationId": "_billableReportGetList",        "parameters": [          {            "name": "tenantId",            "in": "query",            "description": "Store ID",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "responses": {          "200": {            "description": "Billable report.",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/BillableReportResponse"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/campaign": {      "get": {        "tags": [          "Campaign"        ],        "summary": "Get campaigns list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns detailed information about all Campaigns created in the system.\\n\\n\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \\n\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "campaignGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "type",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "enum": [                "direct",                "referral"              ]            }          },          {            "name": "trigger",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "enum": [                "transaction",                "return_transaction",                "custom_event",                "internal_event",                "time",                "achievement",                "custom_event_unique_code",                "challenge"              ]            }          },          {            "name": "event",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "campaignId",            "in": "query",            "description": "Campaign ID",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "name",            "in": "query",            "description": "Campaign name",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "description": "Active",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "available",            "in": "query",            "description": "Available",            "required": false,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "startsAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "endsAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "labels",            "in": "query",            "description": "Filter with Campaign custom attributes.\n\nExample: `labels=(key;value)`\n",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "format",            "in": "query",            "description": "If set to html, the descriptions will be in HTML format. Omit for raw output.",            "required": false,            "style": "deepObject",            "schema": {              "type": "string",              "format": "html|raw"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of campaigns.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "title": "Campaign",                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/CampaignResponse"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "MultiReferralCampaign",                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/MultiReferralCampaignResponse"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "UniqueCodeCampaign",                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/UniqueCodeCampaignResponse"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "TimeTriggerCampaign",                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/TimeTriggerCampaignResponse"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "LeaderboardCampaign",                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/LeaderboardCampaignResponse"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    },                    {                      "title": "ChallengeCampaign",                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/ChallengeCampaignResponse"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Campaign"        ],        "summary": "Add a new campaign",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows creating a new Campaign.<br><br>\n<strong>Custom-fields semantics on POST:</strong> <ul>\n  <li><code>customFields</code> omitted, <code>null</code>, or <code>{}</code> →\n    the campaign is created with no custom-field values; required-field validation\n    still runs and the request fails with 400 if any active campaign custom-field\n    group contains a required field.</li>\n  <li><code>customFields: { groupKey: { fieldKey: value, ... }, ... }</code> →\n    the provided values are persisted on the new campaign; required-field validation\n    runs against the payload.</li>\n</ul> The feature flag <code>CUSTOM_FIELD_CAMPAIGN</code> must be enabled; when disabled the <code>customFields</code> key is silently ignored.\n",        "operationId": "_campaignPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "$ref": "#/components/schemas/CampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/AchievementCampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/UniqueCodeCampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/MultiReferralCampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/LeaderboardCampaignRequestBody"                  },                  {                    "$ref": "#/components/schemas/ChallengeCampaignRequestBody"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "Return created campaign ID.",            "content": {              "application/json": {                "schema": {                  "required": [                    "campaignId"                  ],                  "properties": {                    "campaignId": {                      "type": "string",                      "format": "uuid"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/campaign": {      "get": {        "tags": [          "Campaign"        ],        "summary": "Get a list of available campaigns for the member.",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns all active Campaigns for Member.\nThe logged in member can only see their own available campaigns.\nEndpoint returns all active campaigns, for campaigns that have not reached the limit it adds `\"limitReached\": false`,\nand for campaigns that have reached the limit `\"limitReached\": true`.\nIf there is a dynamic effect in the campaign, the endpoint may return that the\ncampaign limit is not reached, although the effect may exceed the limit and points will not be awarded \nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "_campaignAvailableMember",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "type",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "trigger",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "event",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "campaignId",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "showAll",            "in": "query",            "description": "This parameter allows to show all campaign even not active",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            }          },          {            "name": "name",            "in": "query",            "description": "Campaign name",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "startsAt",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "endsAt",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "labels",            "in": "query",            "description": "Filter with Campaign custom attributes.\n\nExample: `labels=(key;value)`\n",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "format",            "in": "query",            "description": "If set to html, the descriptions will be in HTML format. Omit for raw output.",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "html|raw"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of available member campaigns.",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "title": "AvailableCampaign",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/AvailableCampaign"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object",                      "additionalProperties": false                    },                    {                      "title": "MemberAvailableCampaign",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/MemberAvailableCampaign"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object",                      "additionalProperties": false                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/member/{member}/campaign/visible": {      "get": {        "tags": [          "Campaign"        ],        "summary": "Get a list of visible campaigns for the member",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\n",        "operationId": "campaignVisibleMember",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/member"          },          {            "name": "campaignId",            "in": "query",            "description": "Campaign ID",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "name",            "in": "query",            "description": "Campaign name",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "trigger",            "in": "query",            "description": "Campaign trigger",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "startsAt",            "in": "query",            "description": "Campaign start date",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "endsAt",            "in": "query",            "description": "Campaign end date",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "active",            "in": "query",            "description": "Campaign active status",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of visible member campaigns.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/VisibleCampaign"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/campaign/{campaign}/codes": {      "get": {        "tags": [          "Campaign"        ],        "summary": "Get redemption codes list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "campaignCodesGetList",        "parameters": [          {            "name": "status",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "code",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "codeId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "usedAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "name": "storeCode",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          },          {            "name": "campaign",            "in": "path",            "required": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Codes",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/CampaignCode"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse2"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/campaign/{campaign}/codes/generate": {      "post": {        "tags": [          "Campaign"        ],        "summary": "Generate redemption codes",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "campaignCodesPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/campaign"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/PostGenerateCodes"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/campaign/simulate": {      "post": {        "tags": [          "Campaign"        ],        "summary": "Simulate campaigns result",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns detailed information about all Campaigns created in the system.\n",        "operationId": "_campaignPostSimulate",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "oneOf": [                  {                    "title": "CampaignTransaction",                    "properties": {                      "simulate": {                        "required": [                          "transaction"                        ],                        "allOf": [                          {                            "$ref": "#/components/schemas/SimulateFormType"                          },                          {                            "properties": {                              "transaction": {                                "$ref": "#/components/schemas/SimulatedTransaction"                              }                            },                            "type": "object"                          }                        ],                        "additionalProperties": false                      }                    },                    "type": "object"                  },                  {                    "title": "CampaignCustomEvent",                    "required": [                      "simulate"                    ],                    "properties": {                      "simulate": {                        "required": [                          "custom_event"                        ],                        "allOf": [                          {                            "$ref": "#/components/schemas/SimulateFormType"                          },                          {                            "properties": {                              "custom_event": {                                "$ref": "#/components/schemas/SimulatedCustomEvent"                              }                            },                            "type": "object"                          }                        ],                        "additionalProperties": false                      }                    },                    "type": "object",                    "additionalProperties": false                  },                  {                    "title": "CampaignInternalEvent",                    "properties": {                      "simulate": {                        "required": [                          "internal_event"                        ],                        "allOf": [                          {                            "$ref": "#/components/schemas/SimulateFormType"                          },                          {                            "properties": {                              "internal_event": {                                "$ref": "#/components/schemas/SimulatedInternalEvent"                              }                            },                            "type": "object"                          }                        ],                        "additionalProperties": false                      }                    },                    "type": "object"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/SimulateResult"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/campaign/{campaign}/leaderboard": {      "get": {        "tags": [          "Campaign"        ],        "summary": "Get campaign leaderboard",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns the leaderboard for a specific campaign, showing members ranked by their scores.<br><br>\n",        "operationId": "campaignLeaderboardGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/campaign"          },          {            "name": "type",            "in": "query",            "description": "The type of cycle for which the ranking is to be returned.",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "group",            "in": "query",            "description": "Scope the ranking to a single group of a grouped leaderboard. Required for grouped leaderboards — calling the endpoint without `group` on a grouped leaderboard returns an empty list (`items: []`, `total.all: 0`). Ignored for non-grouped leaderboards. Only the EQUAL operator is accepted; operators like `[neq]` are rejected with HTTP 400. Maximum length: 255.\n",            "required": false,            "schema": {              "type": "string",              "maxLength": 255,              "example": "Warsaw"            }          }        ],        "responses": {          "200": {            "description": "Campaign leaderboard with member rankings.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "properties": {                          "member": {                            "properties": {                              "customerId": {                                "type": "string",                                "format": "uuid",                                "example": "90fb7967-34cb-4440-8786-651dd861d874"                              },                              "firstName": {                                "type": "string"                              },                              "lastName": {                                "type": "string"                              },                              "email": {                                "type": "string",                                "format": "email",                                "example": "zella.wisoky1@yahoo.com"                              },                              "phone": {                                "type": "string",                                "example": "501911936"                              },                              "loyaltyCardNumber": {                                "type": "string",                                "example": "3581"                              }                            },                            "type": "object"                          },                          "ranking": {                            "properties": {                              "score": {                                "description": "Member's score in the leaderboard",                                "type": "number",                                "format": "float",                                "example": 123.1                              },                              "recalculatedAt": {                                "description": "When the position was last recalculated",                                "type": "string",                                "format": "date-time",                                "example": "2010-01-01T01:01:01Z"                              },                              "position": {                                "description": "Current position in the leaderboard",                                "type": "integer",                                "example": 1                              },                              "changedPositionAt": {                                "description": "When the position changed or initial date",                                "type": "string",                                "format": "date-time",                                "example": "2010-01-01T01:01:01Z"                              },                              "progress": {                                "properties": {                                  "general": {                                    "description": "Position change since the beginning of the leaderboard",                                    "type": "integer",                                    "example": 4                                  },                                  "recalculated": {                                    "description": "Position change since the last recalculation",                                    "type": "integer",                                    "example": 0                                  },                                  "period": {                                    "description": "Position change since the last reset",                                    "type": "integer",                                    "example": 2                                  }                                },                                "type": "object"                              }                            },                            "type": "object"                          }                        },                        "type": "object"                      }                    },                    "total": {                      "properties": {                        "all": {                          "description": "Total number of members in the leaderboard",                          "type": "integer",                          "example": 1                        },                        "filtered": {                          "description": "Number of members after applying filters",                          "type": "integer",                          "example": 1                        },                        "estimated": {                          "description": "Whether the total count is estimated",                          "type": "boolean",                          "example": true                        }                      },                      "type": "object"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/campaign/{campaign}/leaderboard/group": {      "get": {        "tags": [          "Campaign"        ],        "summary": "List distinct group values for a grouped leaderboard",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nReturns the distinct group values present on the leaderboard's currently running iteration. Use these values to populate the `group` query parameter of the leaderboard ranking endpoint.<br><br>\nReturns an empty list when: - the campaign's leaderboard is not grouped, - no iteration is currently running (the leaderboard hasn't started or just\n  completed),\n- the running iteration has no ranking rows yet.<br><br>\nReturns 404 when the campaign does not exist for the given store, is not a leaderboard campaign, or belongs to a different tenant.\n",        "operationId": "campaignLeaderboardGroupGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/campaign"          },          {            "name": "name[startsWith]",            "in": "query",            "description": "Case-insensitive, left-anchored prefix filter on the group value (matches `value%`). Only the `startsWith` operator is supported — a disallowed operator such as `name[like]` returns HTTP 400. The short form `name=<prefix>` is treated identically to `name[startsWith]=<prefix>`.\n",            "required": false,            "schema": {              "type": "string",              "example": "war"            }          },          {            "name": "_page",            "in": "query",            "description": "1-based page index.",            "required": false,            "schema": {              "type": "integer",              "minimum": 1,              "default": 1            }          },          {            "name": "_itemsOnPage",            "in": "query",            "description": "Page size.",            "required": false,            "schema": {              "type": "integer",              "minimum": 1,              "default": 10            }          },          {            "name": "_orderBy[groupValue]",            "in": "query",            "description": "Sort direction for the `groupValue` column. Only `asc` and `desc` are accepted.",            "required": false,            "schema": {              "type": "string",              "enum": [                "asc",                "desc"              ],              "default": "asc"            }          }        ],        "responses": {          "200": {            "description": "Distinct group values for the running iteration.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "type": "string",                        "example": "Warsaw"                      }                    },                    "total": {                      "properties": {                        "all": {                          "description": "Total number of distinct group values, ignoring the name filter.",                          "type": "integer",                          "example": 4                        },                        "filtered": {                          "description": "Number of distinct group values after applying the name filter.",                          "type": "integer",                          "example": 1                        },                        "estimated": {                          "description": "Whether the total count is estimated.",                          "type": "boolean",                          "example": false                        }                      },                      "type": "object"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/campaign/{campaign}/leaderboard/member/{member}": {      "get": {        "tags": [          "Campaign"        ],        "summary": "Get member's ranking in a specific campaign",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns detailed information about a member's ranking in a specific campaign, including surrounding members.<br><br>\n",        "operationId": "campaignMemberLeaderboardGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/campaign"          },          {            "name": "member",            "in": "path",            "description": "Member identifier (UUID)",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "type",            "in": "query",            "description": "The type of cycle for which the ranking is to be returned.",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "Member's ranking details with surrounding members.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "groupValue": {                      "description": "Group label the member is ranked under for grouped leaderboards (e.g. the city or custom attribute value). Empty string for non-grouped leaderboards. Members with no resolvable group value on a grouped leaderboard are not found here (404).\n",                      "type": "string",                      "example": "Warsaw"                    },                    "score": {                      "description": "Member's score in the campaign",                      "type": "number",                      "format": "float",                      "example": 123.1                    },                    "recalculatedAt": {                      "description": "When the position was last recalculated",                      "type": "string",                      "format": "date-time",                      "example": "2010-01-01T01:01:01Z"                    },                    "position": {                      "description": "Current position in the leaderboard",                      "type": "integer",                      "example": 1                    },                    "changedPositionAt": {                      "description": "When the position changed or initial date",                      "type": "string",                      "format": "date-time",                      "example": "2010-01-01T01:01:01Z"                    },                    "progress": {                      "properties": {                        "general": {                          "description": "Position change since the beginning of the leaderboard",                          "type": "integer",                          "example": 4                        },                        "recalculated": {                          "description": "Position change since the last recalculation",                          "type": "integer",                          "example": 0                        },                        "period": {                          "description": "Position change since the last reset",                          "type": "integer",                          "example": 2                        }                      },                      "type": "object"                    },                    "surrounding": {                      "properties": {                        "higher": {                          "description": "Members ranked higher than the current member",                          "type": "array",                          "items": {                            "properties": {                              "member": {                                "properties": {                                  "customerId": {                                    "type": "string",                                    "format": "uuid",                                    "example": "90fb7967-34cb-4440-8786-651dd861d874"                                  },                                  "firstName": {                                    "type": "string"                                  },                                  "lastName": {                                    "type": "string"                                  },                                  "email": {                                    "type": "string",                                    "format": "email",                                    "example": "zella.wisoky1@yahoo.com"                                  },                                  "phone": {                                    "type": "string",                                    "example": "501911936"                                  },                                  "loyaltyCardNumber": {                                    "type": "string",                                    "example": "3581"                                  }                                },                                "type": "object"                              },                              "ranking": {                                "properties": {                                  "score": {                                    "description": "Member's score in the campaign",                                    "type": "number",                                    "format": "float",                                    "example": 123.1                                  },                                  "recalculatedAt": {                                    "description": "When the position was last recalculated",                                    "type": "string",                                    "format": "date-time",                                    "example": "2010-01-01T01:01:01Z"                                  },                                  "position": {                                    "description": "Current position in the leaderboard",                                    "type": "integer",                                    "example": 1                                  },                                  "changedPositionAt": {                                    "description": "When the position changed or initial date",                                    "type": "string",                                    "format": "date-time",                                    "example": "2010-01-01T01:01:01Z"                                  },                                  "progress": {                                    "properties": {                                      "general": {                                        "description": "Position change since the beginning of the leaderboard",                                        "type": "integer",                                        "example": 4                                      },                                      "recalculated": {                                        "description": "Position change since the last recalculation",                                        "type": "integer",                                        "example": 0                                      },                                      "period": {                                        "description": "Position change since the last reset",                                        "type": "integer",                                        "example": 2                                      }                                    },                                    "type": "object"                                  }                                },                                "type": "object"                              }                            },                            "type": "object"                          }                        },                        "lower": {                          "description": "Members ranked lower than the current member",                          "type": "array",                          "items": {                            "properties": {                              "member": {                                "properties": {                                  "customerId": {                                    "type": "string",                                    "format": "uuid",                                    "example": "90fb7967-34cb-4440-8786-651dd861d874"                                  },                                  "firstName": {                                    "type": "string"                                  },                                  "lastName": {                                    "type": "string"                                  },                                  "email": {                                    "type": "string",                                    "format": "email",                                    "example": "zella.wisoky1@yahoo.com"                                  },                                  "phone": {                                    "type": "string",                                    "example": "501911936"                                  },                                  "loyaltyCardNumber": {                                    "type": "string",                                    "example": "3581"                                  }                                },                                "type": "object"                              },                              "ranking": {                                "properties": {                                  "score": {                                    "description": "Member's score in the campaign",                                    "type": "number",                                    "format": "float",                                    "example": 123.1                                  },                                  "recalculatedAt": {                                    "description": "When the position was last recalculated",                                    "type": "string",                                    "format": "date-time",                                    "example": "2010-01-01T01:01:01Z"                                  },                                  "position": {                                    "description": "Current position in the leaderboard",                                    "type": "integer",                                    "example": 1                                  },                                  "changedPositionAt": {                                    "description": "When the position changed or initial date",                                    "type": "string",                                    "format": "date-time",                                    "example": "2010-01-01T01:01:01Z"                                  },                                  "progress": {                                    "properties": {                                      "general": {                                        "description": "Position change since the beginning of the leaderboard",                                        "type": "integer",                                        "example": 4                                      },                                      "recalculated": {                                        "description": "Position change since the last recalculation",                                        "type": "integer",                                        "example": 0                                      },                                      "period": {                                        "description": "Position change since the last reset",                                        "type": "integer",                                        "example": 2                                      }                                    },                                    "type": "object"                                  }                                },                                "type": "object"                              }                            },                            "type": "object"                          }                        }                      },                      "type": "object"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/challenge": {      "get": {        "tags": [          "Campaign"        ],        "summary": "Get member's challenge status",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Integration</label><br><br>\n",        "operationId": "challengeProgressMember",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "campaignId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "completionCount",            "in": "query",            "required": false,            "schema": {              "type": "integer"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of active challenge progress for member",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/MemberChallenge"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/challenge/trigger/member/{member}": {      "get": {        "tags": [          "Campaign"        ],        "summary": "Get member's challenge triggers list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Integration</label><br><br>\nThis endpoint provides a log of all events that contributed to the progress of a member's challenge.\n\nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "_challengeMemberTriggers",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "campaignId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "milestoneId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "triggerId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of challenge triggers for a member",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "required": [                          "milestoneId",                          "triggerId",                          "createdAt"                        ],                        "properties": {                          "milestoneId": {                            "type": "string",                            "format": "uuid"                          },                          "milestoneName": {                            "type": "string",                            "nullable": true                          },                          "triggerId": {                            "type": "string",                            "format": "uuid"                          },                          "createdAt": {                            "type": "string",                            "format": "date-time"                          },                          "campaignId": {                            "type": "string",                            "format": "uuid",                            "nullable": true                          },                          "campaignName": {                            "type": "string",                            "nullable": true                          }                        },                        "type": "object",                        "additionalProperties": false                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/customEvent": {      "get": {        "tags": [          "Custom Event"        ],        "summary": "Get custom events list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a complete list of the Custom Events that exist in the system.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "customEventGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "customerId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "type",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "eventName",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "eventId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customEventId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:email",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:phone",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "customerData:loyaltyCardNumber",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "eventDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "$ref": "#/components/parameters/scroll"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "title": "CustomEventsResponse",                      "required": [                        "items",                        "total"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/CustomEvent"                          }                        },                        "total": {                          "$ref": "#/components/schemas/SearchableTotalResponse"                        }                      },                      "type": "object",                      "additionalProperties": false                    },                    {                      "title": "CustomEventsResponseWithScroll",                      "required": [                        "items",                        "scroll"                      ],                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/CustomEvent"                          }                        },                        "scroll": {                          "$ref": "#/components/schemas/ScrollResponse"                        }                      },                      "type": "object",                      "additionalProperties": false                    }                  ]                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Custom Event"        ],        "summary": "Add a custom event",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method allows creating a new Custom Event in the system.\n",        "operationId": "customEventPost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/CustomEventRequestBody"              }            }          }        },        "responses": {          "200": {            "description": "Custom event created successfully",            "content": {              "application/json": {                "schema": {                  "properties": {                    "customEventId": {                      "description": "Custom Event Id",                      "type": "string",                      "format": "uuid",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/customEvent/{customEvent}": {      "get": {        "tags": [          "Custom Event"        ],        "summary": "Get custom event’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns detailed information about specific Custom Event in the system.\n",        "operationId": "customEventGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/customEvent"          }        ],        "responses": {          "200": {            "description": "Returned when successful",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/CustomEvent"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/groupOfValues": {      "get": {        "tags": [          "Group Of Values"        ],        "summary": "Get collections list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "groupOfValuesGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "$ref": "#/components/parameters/scroll"          }        ],        "responses": {          "200": {            "description": "List of groupOfValues",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/GroupOfValuesResponse"                }              },              "application/vnd.pagination+json": {                "schema": {                  "$ref": "#/components/schemas/GroupOfValuesResponse"                }              },              "application/vnd.scroll+json": {                "schema": {                  "$ref": "#/components/schemas/GroupOfValuesResponseWithScroll"                }              }            }          },          "403": {            "description": "Access Denied"          }        }      },      "post": {        "tags": [          "Group Of Values"        ],        "summary": "Create collection",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "createGroup",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/CreateGroupRequest"              }            }          }        },        "responses": {          "200": {            "description": "Group created successfully",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/GroupOfValuesId"                }              }            }          },          "400": {            "description": "Invalid input"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "description": "Access Denied"          }        }      }    },    "/api/{storeCode}/groupOfValues/{groupOfValueId}": {      "get": {        "tags": [          "Group Of Values"        ],        "summary": "Get single collection",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "getGroup",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "groupOfValueId",            "in": "path",            "description": "Group of values ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "responses": {          "200": {            "description": "Collection details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/GroupOfValues"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "description": "Access Denied"          },          "404": {            "description": "Collection not found"          }        }      },      "put": {        "tags": [          "Group Of Values"        ],        "summary": "Update collection",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "updateGroup",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "groupOfValueId",            "in": "path",            "description": "Group of values ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/UpdateGroupRequest"              }            }          }        },        "responses": {          "204": {            "description": "Collection updated successfully"          },          "400": {            "description": "Invalid input"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "description": "Access Denied"          },          "404": {            "description": "Collection not found"          }        }      }    },    "/api/{storeCode}/groupOfValues/value": {      "post": {        "tags": [          "Group Of Values"        ],        "summary": "Add value to collection",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "createValue",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/CreateValueRequest"              }            }          }        },        "responses": {          "200": {            "description": "Value created successfully",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/ValueId"                }              }            }          },          "400": {            "description": "Invalid input"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "description": "Access Denied"          }        }      }    },    "/api/{storeCode}/groupOfValues/value/{valueId}": {      "get": {        "tags": [          "Group Of Values"        ],        "summary": "Get single value",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "getValue",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "valueId",            "in": "path",            "description": "Value ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "responses": {          "200": {            "description": "Value details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/GroupValue"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "description": "Access Denied"          },          "404": {            "description": "Value not found"          }        }      },      "put": {        "tags": [          "Group Of Values"        ],        "summary": "Update value",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "updateValue",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "valueId",            "in": "path",            "description": "Value ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/UpdateValueRequest"              }            }          }        },        "responses": {          "204": {            "description": "Value updated successfully"          },          "400": {            "description": "Invalid input"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "description": "Access Denied"          },          "404": {            "description": "Value not found"          }        }      },      "delete": {        "tags": [          "Group Of Values"        ],        "summary": "Delete value",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "deleteValue",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "valueId",            "in": "path",            "description": "Value ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "responses": {          "204": {            "description": "Value deleted successfully"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "description": "Access Denied"          },          "404": {            "description": "Value not found"          }        }      }    },    "/api/{storeCode}/groupOfValues/{groupOfValues}/values": {      "get": {        "tags": [          "Group Of Values"        ],        "summary": "Get values for specific group",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "valuesGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "groupOfValues",            "in": "path",            "description": "Collection ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "valueId",            "in": "query",            "description": "Value ID",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "description",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "value",            "in": "query",            "description": "Filter by value text. Supports the list operators in/notIn/eq/neq/like/startsWith, e.g. value[in]=Warsaw,Krakow returns only the listed values that still exist in the collection.\n",            "required": false,            "schema": {              "type": "string"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of values",            "content": {              "application/json": {                "schema": {                  "required": [                    "items",                    "total"                  ],                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/GroupValue"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "description": "Access Denied"          },          "404": {            "description": "Group not found"          }        }      }    },    "/api/healthcheck": {      "get": {        "tags": [          "HealthCheck"        ],        "summary": "Check system status",        "description": "<label style=\"background-color: #E7E7E7;padding:5px;\">System</label><br><br>\nThis method returns the status of API.\n",        "operationId": "healthCheckGet",        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "503": {            "$ref": "#/components/responses/ServiceUnavailable"          }        }      }    },    "/api/{storeCode}/import": {      "get": {        "tags": [          "Import"        ],        "summary": "Get imports list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns all imports.  \n\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "_importGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "importId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "type",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "member",                "groupValue",                "segmentMembers",                "memberCustomAttributes",                "unitTransferAdding",                "unitTransferSpending",                "transaction",                "rewardCoupon",                "campaignCode"              ]            }          },          {            "name": "uploadedDate",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of imports",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/Import"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/import/{import}": {      "get": {        "tags": [          "Import"        ],        "summary": "Get import details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_importItemGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "type",            "in": "query",            "required": false,            "schema": {              "type": "string",              "enum": [                "member",                "groupValue",                "segmentMembers",                "memberCustomAttributes",                "unitTransferAdding",                "unitTransferSpending",                "transaction",                "rewardCoupon",                "campaignCode"              ]            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "updatedAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "entityId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "name": "import",            "in": "path",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "responses": {          "200": {            "description": "List of imports",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/ImportItem"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/import/{type}": {      "post": {        "tags": [          "Import"        ],        "summary": "Import file",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "postImport",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "type",            "in": "path",            "required": true,            "schema": {              "type": "string",              "enum": [                "member",                "groupValue",                "segmentMembers",                "memberCustomAttributes",                "unitTransferAdding",                "unitTransferSpending",                "transaction",                "campaignCode",                "rewardCoupon"              ]            }          }        ],        "requestBody": {          "description": "",          "content": {            "multipart/form-data": {              "schema": {                "oneOf": [                  {                    "title": "Import Members",                    "properties": {                      "import": {                        "required": [                          "file"                        ],                        "properties": {                          "file": {                            "description": "See <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                            "type": "object"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  },                  {                    "title": "Import Group values",                    "properties": {                      "import": {                        "required": [                          "additionalData",                          "file"                        ],                        "properties": {                          "additionalData": {                            "required": [                              "groupOfValuesId"                            ],                            "properties": {                              "groupOfValuesId": {                                "type": "string"                              }                            },                            "type": "object"                          },                          "file": {                            "description": "See <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                            "type": "object"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  },                  {                    "title": "Import Campaign codes",                    "properties": {                      "import": {                        "required": [                          "additionalData",                          "file"                        ],                        "properties": {                          "additionalData": {                            "required": [                              "campaignId"                            ],                            "properties": {                              "campaignId": {                                "type": "string"                              }                            },                            "type": "object"                          },                          "file": {                            "description": "See <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                            "type": "object"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  },                  {                    "title": "Import Reward Coupons",                    "properties": {                      "import": {                        "required": [                          "additionalData",                          "file"                        ],                        "properties": {                          "additionalData": {                            "required": [                              "rewardId"                            ],                            "properties": {                              "rewardId": {                                "type": "string",                                "format": "uuid"                              }                            },                            "type": "object"                          },                          "file": {                            "description": "CSV file with reward coupons. Required columns: `rewardId` (UUID, must match `additionalData.rewardId`) and `coupon` (string, max 315 chars).\nSee <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                            "type": "string",                            "format": "binary"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  },                  {                    "title": "Import Segment Members",                    "properties": {                      "import": {                        "required": [                          "additionalData",                          "file"                        ],                        "properties": {                          "additionalData": {                            "required": [                              "segmentId",                              "identificationMethod"                            ],                            "properties": {                              "segmentId": {                                "type": "string",                                "format": "uuid"                              },                              "identificationMethod": {                                "description": "The identification method allows you to map an identifier to the appropriate member.\nTherefore, you should choose an identification method that corresponds to the type of member identifiers included in the file.\nSee <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                                "type": "string",                                "enum": [                                  "uuid",                                  "email",                                  "phone",                                  "loyaltyCardNumber"                                ]                              }                            },                            "type": "object"                          },                          "file": {                            "description": "A file with a list of member identifiers.\nAll identifiers in the imported file must be of the same type.\nAvailable identifier types are: uuid, email, phone, loyaltyCardNumber.\nSee <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                            "type": "string",                            "format": "binary"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  },                  {                    "title": "Import Member Custom Attributes",                    "properties": {                      "import": {                        "required": [                          "additionalData",                          "file"                        ],                        "properties": {                          "additionalData": {                            "required": [                              "identificationMethod"                            ],                            "properties": {                              "identificationMethod": {                                "description": "The identification method allows you to map a member identifier in the file to the appropriate member.\nTherefore, you should choose an identification method that corresponds to the type of member identifiers included in the file.\nSee <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                                "type": "string",                                "enum": [                                  "uuid",                                  "email",                                  "phone",                                  "loyaltyCardNumber"                                ]                              }                            },                            "type": "object"                          },                          "file": {                            "description": "A wide-format CSV file. The first column is the reserved `memberId` header holding the member identifier (its type must match `additionalData.identificationMethod`); every other column header is a custom attribute key and its cell the value to upsert. An empty cell removes that attribute from the member.\nSee <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                            "type": "string",                            "format": "binary"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  },                  {                    "title": "Import adding units transfers",                    "properties": {                      "import": {                        "required": [                          "file"                        ],                        "properties": {                          "file": {                            "description": "See <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                            "type": "string",                            "format": "binary"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  },                  {                    "title": "Import spending units transfers",                    "properties": {                      "import": {                        "required": [                          "file"                        ],                        "properties": {                          "file": {                            "description": "See <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                            "type": "string",                            "format": "binary"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  },                  {                    "title": "Import transactions",                    "properties": {                      "import": {                        "required": [                          "file"                        ],                        "properties": {                          "file": {                            "description": "See <a href=\"https://help.openloyalty.io/main-features/imports-exports/imports/sample-import-files\" target=\"_blank\">sample import files available in the import guide</a>\n",                            "type": "string",                            "format": "binary"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  }                ]              }            }          }        },        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "required": [                    "importId"                  ],                  "properties": {                    "importId": {                      "type": "string",                      "format": "uuid"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/achievement/{achievement}/progress": {      "patch": {        "tags": [          "Achievement"        ],        "summary": "Update achievement’s progress for member",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "achievementProgressMemberPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/achievement"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "memberProgress": {                    "allOf": [                      {                        "$ref": "#/components/schemas/UpdateMemberAchievementProgressFormType"                      },                      {                        "properties": {                          "rules": {                            "type": "array",                            "items": {                              "required": [                                "achievementRuleId",                                "currentPeriodValue"                              ],                              "properties": {                                "achievementRuleId": {                                  "type": "string",                                  "format": "uuid"                                },                                "currentPeriodValue": {                                  "type": "number",                                  "format": "float"                                },                                "completedConsecutivePeriods": {                                  "type": "integer"                                }                              },                              "type": "object"                            }                          }                        },                        "type": "object"                      }                    ]                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/member/{member}/challenge/{challenge}/progress": {      "patch": {        "tags": [          "Campaign"        ],        "summary": "Update challenge progress for member",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "challengeProgressMemberPatch",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "challenge",            "in": "path",            "description": "Challenge campaign ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "memberProgress": {                    "allOf": [                      {                        "$ref": "#/components/schemas/UpdateMemberChallengeProgressFormType"                      },                      {                        "properties": {                          "milestones": {                            "type": "array",                            "items": {                              "required": [                                "milestoneId",                                "currentPeriodValue"                              ],                              "properties": {                                "milestoneId": {                                  "type": "string",                                  "format": "uuid"                                },                                "currentPeriodValue": {                                  "type": "number",                                  "format": "float"                                },                                "completedConsecutivePeriods": {                                  "type": "integer"                                }                              },                              "type": "object"                            }                          }                        },                        "type": "object"                      }                    ]                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/badge": {      "get": {        "tags": [          "Badge"        ],        "summary": "Return member badges status",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\n",        "operationId": "_memberGetBadgesStatus",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "badgeTypeId",            "in": "query",            "description": "use `badgeType:badgeTypeId` instead",            "required": false,            "deprecated": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "badgeType:badgeTypeId",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "name",            "in": "query",            "description": "use `badgeType:name` instead",            "required": false,            "deprecated": true,            "schema": {              "type": "object",              "format": "string"            }          },          {            "name": "badgeType:name",            "in": "query",            "required": false,            "schema": {              "type": "object",              "format": "string"            }          },          {            "name": "badgeType:systemCode",            "in": "query",            "required": false,            "schema": {              "type": "object",              "format": "string"            }          },          {            "name": "badgeType:active",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of member badges",            "content": {              "application/json": {                "schema": {                  "required": [                    "items",                    "total"                  ],                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/BadgeMemberResponse"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Badge"        ],        "summary": "Add badge to member",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_memberPostBadge",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "systemCode"                ],                "properties": {                  "systemCode": {                    "type": "string"                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "required": [                    "badgeTypeId"                  ],                  "properties": {                    "badgeTypeId": {                      "type": "string",                      "format": "uuid"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/badge-type": {      "get": {        "tags": [          "Badge"        ],        "summary": "Return Badge types list",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\n",        "operationId": "_getBadgeTypeList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "badgeTypeId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "systemCode",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "object",              "format": "date-time"            }          },          {            "name": "updatedAt",            "in": "query",            "required": false,            "schema": {              "type": "object",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of badge types",            "content": {              "application/json": {                "schema": {                  "required": [                    "items",                    "total"                  ],                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/BadgeTypeResponse"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Badge"        ],        "summary": "Create badge type",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_badgeTypePost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "badgeType"                ],                "properties": {                  "badgeType": {                    "required": [                      "systemCode",                      "translations"                    ],                    "properties": {                      "systemCode": {                        "type": "string"                      },                      "active": {                        "type": "boolean"                      },                      "translations": {                        "$ref": "#/components/schemas/Translations"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "200": {            "description": "Badge type created",            "content": {              "application/json": {                "schema": {                  "required": [                    "badgeTypeId"                  ],                  "properties": {                    "badgeTypeId": {                      "type": "string",                      "format": "uuid"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/badge-type/{badgeType}": {      "get": {        "tags": [          "Badge"        ],        "summary": "Return Badge type",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_getBadgeType",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "badgeType",            "in": "path",            "description": "Badge type identifier - UUID or systemCode=SYSTEM_CODE (e.g. systemCode=gold_badge)",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|systemCode=[a-zA-Z0-9_-]+"            }          }        ],        "responses": {          "200": {            "description": "Badge type",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/BadgeTypeResponse"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Badge"        ],        "summary": "Update badge type",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_badgeTypePut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "badgeType",            "in": "path",            "description": "Badge type identifier - UUID or systemCode=SYSTEM_CODE (e.g. systemCode=gold_badge)",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|systemCode=[a-zA-Z0-9_-]+"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "badgeType"                ],                "properties": {                  "badgeType": {                    "required": [                      "translations"                    ],                    "properties": {                      "active": {                        "type": "boolean"                      },                      "translations": {                        "$ref": "#/components/schemas/Translations"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/badge-type/{badgeType}/active": {      "post": {        "tags": [          "Badge"        ],        "summary": "Change badge type activity",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_badgeTypeActivePost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "badgeType",            "in": "path",            "description": "Badge type identifier - UUID or systemCode=SYSTEM_CODE (e.g. systemCode=gold_badge)",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|systemCode=[a-zA-Z0-9_-]+"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "active"                ],                "properties": {                  "active": {                    "type": "boolean"                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/badge/{badgeType}": {      "put": {        "tags": [          "Badge"        ],        "summary": "Update completed count for member badge",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nWhen 0 is passed as `badge.completedCount`, the badge will be removed from the member.\n",        "operationId": "_memberBadgePut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/member"          },          {            "name": "badgeType",            "in": "path",            "description": "Badge type identifier - UUID or systemCode=SYSTEM_CODE (e.g. systemCode=gold_badge)",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|systemCode=[a-zA-Z0-9_-]+"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "badge"                ],                "properties": {                  "badge": {                    "required": [                      "completedCount"                    ],                    "properties": {                      "completedCount": {                        "type": "integer"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/history": {      "get": {        "tags": [          "Member"        ],        "summary": "Check member’s activity history",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns detailed information about a specific Campaign.\n",        "operationId": "_memberGetHistory",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "type",            "in": "query",            "description": "This parameter can be a simple string or a complex object. Examples:  - `type=TEST` - `type[in]=TEST&type[another]=VALUE`\n",            "required": false,            "style": "form",            "explode": true,            "schema": {              "type": "object",              "additionalProperties": {                "type": "string"              }            }          },          {            "name": "walletType:code",            "in": "query",            "description": "Code of the wallet (e.g. default).\n",            "required": false,            "style": "form",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "createdAt",            "in": "query",            "description": "Date the record was created.\n",            "required": false,            "style": "form",            "explode": true,            "schema": {              "type": "object",              "additionalProperties": {                "type": "string",                "format": "date-time"              }            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "Member history.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "discriminator": {                          "propertyName": "type",                          "mapping": {                            "AssignedTransactionToCustomer": "#/components/schemas/AssignedTransactionToCustomer",                            "CustomerWasActivated": "#/components/schemas/CustomerWasActivated",                            "CustomerWasAnonymized": "#/components/schemas/CustomerWasAnonymized",                            "CustomerWasDeactivated": "#/components/schemas/CustomerWasDeactivated",                            "CustomerWasMovedToLevel": "#/components/schemas/CustomerWasMovedToLevel",                            "CustomerWasRegistered": "#/components/schemas/CustomerWasRegistered",                            "PendingPointsWereAdded": "#/components/schemas/PendingPointsWereAdded",                            "PendingPointsWereCanceled": "#/components/schemas/PendingPointsWereCanceled",                            "PointsWereAdded": "#/components/schemas/PointsWereAdded",                            "PointsWereBlocked": "#/components/schemas/PointsWereBlocked",                            "PointsWereCanceled": "#/components/schemas/PointsWereCanceled",                            "PointsWereExpired": "#/components/schemas/PointsWereExpired",                            "PointsWereSpent": "#/components/schemas/PointsWereSpent",                            "PointsWereTransferred": "#/components/schemas/PointsWereTransferred",                            "PointsWereUnblocked": "#/components/schemas/PointsWereUnblocked",                            "PointsWereUnlocked": "#/components/schemas/PointsWereUnlocked",                            "RewardWasBought": "#/components/schemas/RewardWasBought",                            "AchievementCompleted": "#/components/schemas/AchievementCompleted",                            "AssignedCustomEventToCustomer": "#/components/schemas/AssignedCustomEventToCustomer",                            "CustomAttributeWasAdded": "#/components/schemas/CustomAttributeWasAdded",                            "CustomAttributesWereUpdated": "#/components/schemas/CustomAttributesWereUpdated",                            "CustomAttributesWereDeleted": "#/components/schemas/CustomAttributesWereDeleted",                            "MemberAchievementCompletionCountWasDecreased": "#/components/schemas/MemberAchievementCompletionCountWasDecreased",                            "MemberAchievementProgressWasChanged": "#/components/schemas/MemberAchievementProgressWasChanged",                            "MemberCustomFieldGroupDataChanged": "#/components/schemas/MemberCustomFieldGroupDataChanged",                            "MemberCustomFieldGroupDataRemoved": "#/components/schemas/MemberCustomFieldGroupDataRemoved",                            "ChallengeCompleted": "#/components/schemas/ChallengeCompleted",                            "MemberChallengeCompletionCountWasDecreased": "#/components/schemas/MemberChallengeCompletionCountWasDecreased",                            "MemberChallengeProgressWasChanged": "#/components/schemas/MemberChallengeProgressWasChanged",                            "BadgeCompleted": "#/components/schemas/BadgeCompleted",                            "MemberBadgeCompletedCountWasChanged": "#/components/schemas/MemberBadgeCompletedCountWasChanged",                            "IssuedRewardWasCancelled": "#/components/schemas/IssuedRewardWasCancelled",                            "RewardFortuneWheelWasDrawn": "#/components/schemas/RewardFortuneWheelWasDrawn"                          }                        },                        "oneOf": [                          {                            "$ref": "#/components/schemas/AssignedTransactionToCustomer"                          },                          {                            "$ref": "#/components/schemas/CustomerWasActivated"                          },                          {                            "$ref": "#/components/schemas/CustomerWasAnonymized"                          },                          {                            "$ref": "#/components/schemas/CustomerWasDeactivated"                          },                          {                            "$ref": "#/components/schemas/CustomerWasMovedToLevel"                          },                          {                            "$ref": "#/components/schemas/CustomerWasRegistered"                          },                          {                            "$ref": "#/components/schemas/PendingPointsWereAdded"                          },                          {                            "$ref": "#/components/schemas/PendingPointsWereCanceled"                          },                          {                            "$ref": "#/components/schemas/PointsWereAdded"                          },                          {                            "$ref": "#/components/schemas/PointsWereBlocked"                          },                          {                            "$ref": "#/components/schemas/PointsWereCanceled"                          },                          {                            "$ref": "#/components/schemas/PointsWereExpired"                          },                          {                            "$ref": "#/components/schemas/PointsWereSpent"                          },                          {                            "$ref": "#/components/schemas/PointsWereTransferred"                          },                          {                            "$ref": "#/components/schemas/PointsWereUnblocked"                          },                          {                            "$ref": "#/components/schemas/PointsWereUnlocked"                          },                          {                            "$ref": "#/components/schemas/RewardWasBought"                          },                          {                            "$ref": "#/components/schemas/AchievementCompleted"                          },                          {                            "$ref": "#/components/schemas/AssignedCustomEventToCustomer"                          },                          {                            "$ref": "#/components/schemas/CustomAttributeWasAdded"                          },                          {                            "$ref": "#/components/schemas/CustomAttributesWereUpdated"                          },                          {                            "$ref": "#/components/schemas/CustomAttributesWereDeleted"                          },                          {                            "$ref": "#/components/schemas/MemberAchievementCompletionCountWasDecreased"                          },                          {                            "$ref": "#/components/schemas/MemberAchievementProgressWasChanged"                          },                          {                            "$ref": "#/components/schemas/MemberCustomFieldGroupDataChanged"                          },                          {                            "$ref": "#/components/schemas/MemberCustomFieldGroupDataRemoved"                          },                          {                            "$ref": "#/components/schemas/ChallengeCompleted"                          },                          {                            "$ref": "#/components/schemas/MemberChallengeCompletionCountWasDecreased"                          },                          {                            "$ref": "#/components/schemas/MemberChallengeProgressWasChanged"                          },                          {                            "$ref": "#/components/schemas/BadgeCompleted"                          },                          {                            "$ref": "#/components/schemas/MemberBadgeCompletedCountWasChanged"                          },                          {                            "$ref": "#/components/schemas/IssuedRewardWasCancelled"                          },                          {                            "$ref": "#/components/schemas/RewardFortuneWheelWasDrawn"                          }                        ]                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/{member}/referral": {      "post": {        "tags": [          "Member"        ],        "summary": "Create member's referral",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_memberPostReferral",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "referrerId"                ],                "properties": {                  "referrerId": {                    "type": "string",                    "format": "uuid"                  }                },                "type": "object",                "additionalProperties": false              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "delete": {        "tags": [          "Member"        ],        "summary": "Delete member's referral",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_memberDeleteReferral",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/redemption/{issuedReward}/status": {      "post": {        "tags": [          "Reward"        ],        "summary": "Change redeemed reward’s status",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows changing a Reward redemption status.\n",        "operationId": "redemptionPostStatus",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/issuedReward"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/RedemptionStatusRequestBody"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/redemption/{issuedReward}/cancel": {      "post": {        "tags": [          "Reward"        ],        "summary": "Cancel redeemed reward",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows cancelling a Reward redemption.\n",        "operationId": "redemptionPostCancel",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/issuedReward"          }        ],        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/redemption/{issuedReward}/draw": {      "post": {        "tags": [          "Reward"        ],        "summary": "Draw a reward from the fortune wheel",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method executes the draw of the reward from the fortune wheel and returns the result.\n",        "operationId": "_redemptionPostDraw",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/issuedReward"          }        ],        "responses": {          "200": {            "description": "Draw result details",            "content": {              "application/json": {                "schema": {                  "properties": {                    "fortuneWheelStatus": {                      "$ref": "#/components/schemas/FortuneWheelStatus"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          },          "409": {            "$ref": "#/components/responses/Conflict"          }        }      }    },    "/api/{storeCode}/member/{member}/reward": {      "get": {        "tags": [          "Reward"        ],        "summary": "Get available rewards to a member list",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list of all Rewards existing in the system.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.\nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "_rewardGetMemberReward",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_`{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "rewardId",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "reward",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "enum": [                "static_coupon",                "material",                "dynamic_coupon",                "conversion_coupon"              ]            }          },          {            "name": "active",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "createdAt",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "public",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "fulfillmentTracking",            "in": "query",            "required": false,            "deprecated": true,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "featured",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "name",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "shortDescription",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "brandName",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "brandDescription",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "levels",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "segments",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "categories",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "labels",            "in": "query",            "description": "Labels using pattern e.g. (key1;value1),(key2;value2),...",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "costInPoints",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "integer"            }          },          {            "name": "limit",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "integer"            }          },          {            "name": "available",            "in": "query",            "description": "Filters out active rewards by active field and also by activity dates from and to.",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "visible",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "visibleFrom",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "visibleTo",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "activeFrom",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "activeTo",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "format",            "in": "query",            "description": "If set to html, the descriptions will be in HTML format. Omit for raw output.",            "required": false,            "style": "deepObject",            "schema": {              "type": "string",              "format": "html|raw"            }          }        ],        "responses": {          "200": {            "description": "Get all rewards available for logged in member.",            "content": {              "application/json": {                "schema": {                  "required": [                    "items",                    "total"                  ],                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/MemberRewardResponse"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/member/reward": {      "get": {        "tags": [          "Member"        ],        "summary": "Get all rewards available for logged in member.",        "description": "<label style=\"background-color: #BFE1F6;padding:5px;\">Integration</label><br><br>\nThis method returns a list of all rewards available for logged Member. \nIf sorting is not chosen, the rows will be returned in an unspecified order. \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "_memberRewardGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          },          {            "name": "rewardId",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "reward",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "enum": [                "static_coupon",                "material",                "dynamic_coupon",                "conversion_coupon"              ]            }          },          {            "name": "active",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "createdAt",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "public",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "fulfillmentTracking",            "in": "query",            "required": false,            "deprecated": true,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "featured",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "name",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "shortDescription",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "brandName",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "brandDescription",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "levels",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "segments",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "categories",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "labels",            "in": "query",            "description": "Labels using pattern e.g. (key1;value1),(key2;value2),...",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "costInPoints",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "integer"            }          },          {            "name": "limit",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "integer"            }          },          {            "name": "available",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "visible",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "name": "visibleFrom",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "visibleTo",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "activeFrom",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "activeTo",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "name": "format",            "in": "query",            "description": "If set to html, the descriptions will be in HTML format. Omit for raw output.",            "required": false,            "style": "deepObject",            "schema": {              "type": "string",              "format": "html|raw"            }          }        ],        "responses": {          "200": {            "description": "Get all rewards available for logged in member.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/MemberRewardResponse"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/segment/{segment}/association/{resourceName}": {      "get": {        "tags": [          "Segment"        ],        "summary": "Get resources associated with segment",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_getSegmentAssociation",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/segment"          },          {            "name": "resourceName",            "in": "path",            "description": "Resource name",            "required": true,            "schema": {              "type": "string",              "enum": [                "reward",                "achievement",                "campaign"              ]            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          }        ],        "responses": {          "200": {            "description": "",            "content": {              "application/json": {                "schema": {                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/associatedResource"                      }                    },                    "total": {                      "$ref": "#/components/schemas/total"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/store/{store}": {      "get": {        "tags": [          "Store"        ],        "summary": "Get tenant’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a specific Store (tenant).\n",        "operationId": "_storeGet",        "parameters": [          {            "$ref": "#/components/parameters/store"          }        ],        "responses": {          "200": {            "description": "Store details.",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/StoreResponse"                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Store"        ],        "summary": "Update tenant’s configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows updating a specific Store (tenant) in the system.\n",        "operationId": "storePut",        "parameters": [          {            "$ref": "#/components/parameters/store"          }        ],        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "store": {                    "$ref": "#/components/schemas/StoreFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/store": {      "get": {        "tags": [          "Store"        ],        "summary": "Get tenants list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method returns a specific Store (tenant).\n",        "operationId": "storeGetList",        "parameters": [          {            "name": "storeId",            "in": "query",            "description": "Store ID",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string",              "format": "uuid"            }          },          {            "name": "name",            "in": "query",            "description": "Store name",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "code",            "in": "query",            "description": "Code",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "currency",            "in": "query",            "description": "Currency",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "description": "Active",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "boolean"            },            "example": true          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of stores.",            "content": {              "application/json": {                "schema": {                  "allOf": [                    {                      "$ref": "#/components/schemas/ListOfItems"                    },                    {                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/StoreResponse"                          }                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "post": {        "tags": [          "Store"        ],        "summary": "Add a new tenant",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding a new Store to the system.\n",        "operationId": "storePost",        "requestBody": {          "description": "",          "content": {            "application/json": {              "schema": {                "properties": {                  "store": {                    "$ref": "#/components/schemas/StoreFormType"                  }                },                "type": "object"              }            }          }        },        "responses": {          "200": {            "description": "Return created store ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "storeId": {                      "description": "Created store identity",                      "type": "string",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/tier": {      "get": {        "tags": [          "Tier"        ],        "summary": "Get tiers list",        "description": "This method returns a list of all created Tiers in the system.  \nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "_tierGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "levelId",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "conditionValue",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "description",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "description": "Filter by active filed",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "reward:name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "reward:code",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "reward:value",            "in": "query",            "required": false,            "schema": {              "type": "number"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of tiers",            "content": {              "application/json": {                "schema": {                  "required": [                    "items",                    "total"                  ],                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/TierResponse"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        },        "deprecated": true      }    },    "/api/{storeCode}/member/{member}/tierSet": {      "get": {        "tags": [          "Tier"        ],        "summary": "Get list of tier sets which member is assigned",        "description": "Returns the list of tier sets that the specified member is assigned to.",        "operationId": "_memberTierSetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "member",            "in": "path",            "required": true,            "schema": {              "type": "string",              "pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|email=[a-zA-Z0-9!#$%&'\\.*+\\-@=?^_{|}~;]+|phone=[0-9+]+|loyaltyCardNumber=[0-9a-zA-Z\\._-]+"            }          },          {            "name": "currentTierId",            "in": "query",            "description": "Filter by current tier id field",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "tierSetId",            "in": "query",            "description": "Filter by tier set Id field",            "required": false,            "schema": {              "type": "string"            }          }        ],        "responses": {          "200": {            "description": "List of member tier sets.",            "content": {              "application/json": {                "schema": {                  "required": [                    "items",                    "total"                  ],                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/MemberTierSet"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/tierSet/{tierSet}": {      "get": {        "tags": [          "Tier"        ],        "summary": "Get tier set’s details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_tierSetGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tierSet"          }        ],        "responses": {          "200": {            "description": "Tier set details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/TierSetResponse"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Tier"        ],        "summary": "Update a tier set",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_tierSetPut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tierSet"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "example": {                "tierSet": {                  "translations": {                    "en": {                      "name": "Gold tier set"                    }                  },                  "active": false,                  "conditions": [                    {                      "attribute": "monthsSinceJoiningProgram"                    }                  ],                  "downgrade": {                    "mode": "none"                  }                }              },              "schema": {                "$ref": "#/components/schemas/PutTierSet"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/tierSet/{tierSet}/tiers": {      "get": {        "tags": [          "Tier"        ],        "summary": "Get tiers list from a tier set",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_getTierSetTiers",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tierSet"          },          {            "name": "name",            "in": "query",            "required": false,            "schema": {              "type": "string"            }          },          {            "name": "active",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "Tiers list",            "content": {              "application/json": {                "schema": {                  "required": [                    "items",                    "total"                  ],                  "properties": {                    "items": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/TierSetTiersResponse"                      }                    },                    "total": {                      "$ref": "#/components/schemas/SearchableTotalResponse"                    }                  },                  "type": "object"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "put": {        "tags": [          "Tier"        ],        "summary": "Update existing tier list with conditions",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nMethod allows to edit existing tier list with conditions.\n",        "operationId": "_tierPutList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/tierSet"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "required": [                  "tiers"                ],                "properties": {                  "tiers": {                    "$ref": "#/components/schemas/TiersListPut"                  }                },                "type": "object"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "$ref": "#/components/responses/Unauthorized"          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/wallet/{wallet}": {      "get": {        "tags": [          "Wallet"        ],        "summary": "Check wallet details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "walletGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/wallet"          }        ],        "responses": {          "200": {            "description": "Wallet details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/Wallet"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/walletType": {      "get": {        "tags": [          "Wallet"        ],        "summary": "Get wallets list",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nIf sorting is not chosen, the rows will be returned in an unspecified order.  \nTo sort a result, use an `_orderBy` parameter in query.\n",        "operationId": "_walletTypeGetList",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "name",            "in": "query",            "required": false,            "style": "deepObject",            "explode": true,            "schema": {              "type": "object",              "additionalProperties": {                "type": "string"              }            }          },          {            "name": "active",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "isDefault",            "in": "query",            "required": false,            "schema": {              "type": "boolean"            }          },          {            "name": "createdAt",            "in": "query",            "required": false,            "schema": {              "type": "string",              "format": "date-time"            }          },          {            "$ref": "#/components/parameters/page"          },          {            "$ref": "#/components/parameters/itemsOnPage"          },          {            "$ref": "#/components/parameters/orderBy"          }        ],        "responses": {          "200": {            "description": "List of walletTypes",            "content": {              "application/json": {                "schema": {                  "allOf": [                    {                      "$ref": "#/components/schemas/ListOfItems"                    },                    {                      "properties": {                        "items": {                          "type": "array",                          "items": {                            "$ref": "#/components/schemas/WalletType"                          }                        }                      },                      "type": "object"                    }                  ]                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      },      "post": {        "tags": [          "Wallet"        ],        "summary": "Add a wallet",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nThis method allows adding a new wallet to the system.\n",        "operationId": "_walletTypePost",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "example": {                "walletType": {                  "translations": {                    "en": {                      "name": "My Wallet"                    }                  },                  "unitSingularName": "point",                  "unitPluralName": "points",                  "active": false,                  "unitDaysExpiryAfter": "all_time_active",                  "allTimeNotLocked": true,                  "allowNegativeBalance": false,                  "code": "my_wallet"                }              },              "schema": {                "$ref": "#/components/schemas/PostWalletTypeRequestBody"              }            }          }        },        "responses": {          "200": {            "description": "Return created walletType ID.",            "content": {              "application/json": {                "schema": {                  "properties": {                    "walletTypeId": {                      "type": "string",                      "format": "uuid",                      "example": "00000000-0000-0000-0000-000000000000"                    }                  },                  "type": "object"                }              }            }          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          }        }      }    },    "/api/{storeCode}/walletType/{walletType}": {      "get": {        "tags": [          "Wallet"        ],        "summary": "Check wallet type details",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_walletTypeGet",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/walletType"          }        ],        "responses": {          "200": {            "description": "WalletType details",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/WalletTypeDetails"                }              }            }          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      },      "put": {        "tags": [          "Wallet"        ],        "summary": "Update wallet’s configuration",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\n",        "operationId": "_walletTypePut",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "$ref": "#/components/parameters/walletType"          }        ],        "requestBody": {          "required": true,          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/PutWalletTypeRequestBody"              }            }          }        },        "responses": {          "204": {            "$ref": "#/components/responses/NoContent"          },          "400": {            "$ref": "#/components/responses/BadRequest"          },          "401": {            "description": "Unauthorized",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          }        }      }    },    "/api/{storeCode}/webhook/subscription/{webhookSubscriptionId}/rotate-secret": {      "post": {        "tags": [          "Webhook subscription"        ],        "summary": "Rotate HMAC secret key",        "description": "<label style=\"background-color: #D4EDBC;padding:5px;\">Management</label><br><br>\nRotates the HMAC secret key for a webhook subscription. Returns the new plaintext key exactly once.\nThe old key is immediately invalidated. Rate limited to once every 5 minutes.\n",        "operationId": "_webhookSubscriptionRotateHmacSecret",        "parameters": [          {            "$ref": "#/components/parameters/storeCode"          },          {            "name": "webhookSubscriptionId",            "in": "path",            "description": "Webhook Subscription ID",            "required": true,            "schema": {              "type": "string",              "format": "uuid"            }          }        ],        "requestBody": {          "description": "Optional rotation reason",          "content": {            "application/json": {              "schema": {                "$ref": "#/components/schemas/RotateHmacSecretRequestBody"              }            }          }        },        "responses": {          "200": {            "description": "HMAC secret key rotated successfully. The new key is shown once.",            "headers": {              "Cache-Control": {                "schema": {                  "type": "string",                  "example": "no-store, no-cache"                }              },              "Pragma": {                "schema": {                  "type": "string",                  "example": "no-cache"                }              }            },            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/RotateHmacSecretResponse"                }              }            }          },          "400": {            "description": "HMAC signing is not enabled for this webhook subscription",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/ErrorResponse"                }              }            }          },          "401": {            "description": "",            "content": {              "application/json": {                "schema": {                  "oneOf": [                    {                      "$ref": "#/components/schemas/ExpiredToken"                    },                    {                      "$ref": "#/components/schemas/InvalidToken"                    },                    {                      "$ref": "#/components/schemas/Unauthorized"                    }                  ]                }              }            }          },          "403": {            "$ref": "#/components/responses/AccessDenied"          },          "404": {            "$ref": "#/components/responses/NotFound"          },          "429": {            "description": "Secret rotation is limited to once every 5 minutes",            "content": {              "application/json": {                "schema": {                  "$ref": "#/components/schemas/ErrorResponse"                }              }            }          }        }      }    }  },  "x-webhooks": {    "AchievementCreated": {      "post": {        "summary": "Achievement Created",        "operationId": "AchievementCreated",        "deprecated": true,        "tags": [          "Webhook event"        ],        "description": "Achievement Created",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "achievement": {                        "$ref": "#/components/schemas/WebhookAchievement"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "AchievementUpdated": {      "post": {        "summary": "Achievement Updated",        "operationId": "AchievementUpdated",        "deprecated": true,        "tags": [          "Webhook event"        ],        "description": "Achievement Updated",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "achievement": {                        "$ref": "#/components/schemas/WebhookAchievement"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CampaignCreated": {      "post": {        "summary": "Campaign Created",        "operationId": "CampaignCreated",        "tags": [          "Webhook event"        ],        "description": "Campaign Created",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "campaign": {                        "$ref": "#/components/schemas/WebhookCampaign"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CampaignUpdated": {      "post": {        "summary": "Campaign Updated",        "operationId": "CampaignUpdated",        "tags": [          "Webhook event"        ],        "description": "Campaign Updated",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "campaign": {                        "$ref": "#/components/schemas/WebhookCampaign"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "AvailablePointsAmountChanged": {      "post": {        "summary": "Available Points Amount Changed",        "operationId": "AvailablePointsAmountChanged",        "tags": [          "Webhook event"        ],        "description": "The number of available units on the member's account has changed",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "accountId": {                        "type": "string",                        "deprecated": true,                        "description": "same as data.wallet.walletId",                        "format": "uuid"                      },                      "amount": {                        "type": "number",                        "format": "float"                      },                      "amountChange": {                        "type": "number",                        "format": "float"                      },                      "amountChangeType": {                        "type": "string"                      },                      "transferId": {                        "type": "string",                        "format": "uuid",                        "example": "00000000-0000-0000-0000-000000000000"                      },                      "wallet": {                        "type": "object",                        "properties": {                          "walletId": {                            "type": "string",                            "description": "same as data.accountId"                          },                          "walletType": {                            "$ref": "#/components/schemas/WalletType"                          }                        }                      },                      "actionCause": {                        "nullable": true,                        "type": "object",                        "oneOf": [                          {                            "$ref": "#/components/schemas/ActionCause"                          }                        ]                      },                      "transferCreatedAt": {                        "type": "string",                        "format": "date-time",                        "description": "ISO 8601 timestamp (microsecond precision) of when the transfer was created. Use this field to deterministically sort multiple balance-change events triggered by the same transaction.",                        "example": "2026-03-13T14:23:45.123456Z"                      },                      "transferUpdatedAt": {                        "type": "string",                        "format": "date-time",                        "nullable": true,                        "description": "ISO 8601 timestamp (microsecond precision) of the moment the underlying state change occurred (e.g. unlock, cancel, expire). Null for replayed legacy messages serialized before high-precision tracking was introduced.",                        "example": "2026-03-13T14:23:45.123456Z"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CouponWillExpire": {      "post": {        "summary": "Coupon Will Expire",        "operationId": "CouponWillExpire",        "tags": [          "Webhook event"        ],        "description": "Member coupon is about to expire",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "issuedCoupon": {                        "type": "object",                        "properties": {                          "valueType": {                            "type": "string"                          },                          "code": {                            "type": "string"                          },                          "value": {                            "type": "number",                            "format": "float"                          },                          "activeFrom": {                            "type": "string",                            "format": "date-time"                          },                          "activeTo": {                            "type": "string",                            "format": "date-time"                          },                          "usedAt": {                            "type": "string",                            "format": "date-time"                          }                        }                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerBoughtReward": {      "post": {        "summary": "Customer Bought Reward",        "operationId": "CustomerBoughtReward",        "tags": [          "Webhook event"        ],        "description": "Member has redeemed a reward",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "coupon": {                        "type": "object",                        "properties": {                          "code": {                            "type": "string"                          },                          "value": {                            "type": "number",                            "format": "float"                          },                          "status": {                            "type": "string"                          },                          "activeFrom": {                            "type": "string",                            "format": "date-time"                          },                          "activeTo": {                            "type": "string",                            "format": "date-time"                          },                          "usedAt": {                            "type": "string",                            "format": "date-time"                          }                        }                      },                      "reward": {                        "type": "object",                        "properties": {                          "rewardId": {                            "type": "string",                            "format": "uuid",                            "example": "00000000-0000-0000-0000-000000000000"                          },                          "rewardName": {                            "type": "string"                          },                          "rewardType": {                            "type": "string"                          }                        }                      },                      "rewardRedemption": {                        "type": "object",                        "properties": {                          "redeemedRewardId": {                            "type": "string",                            "format": "uuid",                            "example": "00000000-0000-0000-0000-000000000000"                          }                        }                      },                      "costInPoints": {                        "type": "number",                        "format": "float"                      },                      "actionCause": {                        "type": "object",                        "nullable": true,                        "properties": {                          "customerId": {                            "type": "string",                            "format": "uuid",                            "nullable": true                          },                          "campaignId": {                            "type": "string",                            "format": "uuid",                            "nullable": true                          },                          "transactionId": {                            "type": "string",                            "format": "uuid",                            "nullable": true                          },                          "customEventId": {                            "type": "string",                            "format": "uuid",                            "nullable": true                          },                          "internalEventName": {                            "type": "string",                            "nullable": true                          }                        }                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerDeactivated": {      "post": {        "summary": "Customer Deactivated",        "operationId": "CustomerDeactivated",        "tags": [          "Webhook event"        ],        "description": "Member account has been deactivated",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerEmailWasChanged": {      "post": {        "summary": "Customer Email Was Changed",        "operationId": "CustomerEmailWasChanged",        "tags": [          "Webhook event"        ],        "description": "Member email address has been updated",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "code": {                        "type": "string"                      },                      "codeNumber": {                        "type": "integer"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerLevelChanged": {      "post": {        "summary": "Customer Level Changed",        "operationId": "CustomerLevelChanged",        "tags": [          "Webhook event"        ],        "description": "Member tier has changed",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "level": {                        "type": "object",                        "properties": {                          "levelId": {                            "type": "string"                          },                          "name": {                            "type": "string"                          },                          "levelMoveUp": {                            "type": "boolean",                            "example": true                          },                          "levelMoveDown": {                            "type": "boolean",                            "example": false                          }                        }                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerPhoneNumberWasChanged": {      "post": {        "summary": "Customer Phone Number Was Changed",        "operationId": "CustomerPhoneNumberWasChanged",        "tags": [          "Webhook event"        ],        "description": "Member phone number has been updated",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "code": {                        "type": "string"                      },                      "codeNumber": {                        "type": "integer"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerRequestedPasswordReset": {      "post": {        "summary": "Customer Requested Password Reset",        "operationId": "CustomerRequestedPasswordReset",        "tags": [          "Webhook event"        ],        "description": "A member has requested a password reset",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "code": {                        "type": "string"                      },                      "codeNumber": {                        "type": "integer"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerRequestedSendActivationCode": {      "post": {        "summary": "Customer Requested Send Activation Code",        "operationId": "CustomerRequestedSendActivationCode",        "tags": [          "Webhook event"        ],        "description": "Member has requested an activation code",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "code": {                        "type": "string"                      },                      "codeNumber": {                        "type": "integer"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerUpdated": {      "post": {        "summary": "Customer Updated",        "operationId": "CustomerUpdated",        "tags": [          "Webhook event"        ],        "description": "Member profile information has been updated",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerWasRegisteredWithoutActivation": {      "post": {        "summary": "Customer Was Registered Without Activation",        "operationId": "CustomerWasRegisteredWithoutActivation",        "tags": [          "Webhook event"        ],        "description": "New member has been registered without activation",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "code": {                        "type": "string"                      },                      "codeNumber": {                        "type": "integer"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "TransactionAssignedToCustomer": {      "post": {        "summary": "Transaction Assigned To Customer",        "operationId": "TransactionAssignedToCustomer",        "tags": [          "Webhook event"        ],        "description": "Transaction has been matched with a member",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "transactionId": {                        "type": "string",                        "format": "uuid"                      },                      "grossValue": {                        "type": "number",                        "format": "float"                      },                      "customer": {                        "$ref": "#/components/schemas/WebhookCustomer"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "LevelWillExpire": {      "post": {        "summary": "Level Will Expire",        "operationId": "LevelWillExpire",        "tags": [          "Webhook event"        ],        "description": "Member tier is about to downgrade",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customerId": {                        "type": "string",                        "format": "uuid"                      },                      "customerEmail": {                        "type": "string"                      },                      "customerPhone": {                        "type": "string"                      },                      "customerLoyaltyCardNumber": {                        "type": "string"                      },                      "customerFirstName": {                        "type": "string"                      },                      "customerLastName": {                        "type": "string"                      },                      "levelId": {                        "type": "string",                        "format": "uuid"                      },                      "levelName": {                        "type": "string"                      },                      "futureLevelId": {                        "type": "string",                        "format": "uuid"                      },                      "futureLevelName": {                        "type": "string"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "PointsWillExpire": {      "post": {        "summary": "Points Will Expire",        "operationId": "PointsWillExpire",        "tags": [          "Webhook event"        ],        "description": "Units on a member account are about to expire",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "accountId": {                        "type": "string",                        "format": "uuid"                      },                      "points": {                        "type": "number",                        "format": "float"                      },                      "remainingUnits": {                        "type": "number",                        "format": "float"                      },                      "pointsWillExpire": {                        "type": "string",                        "format": "date-time"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CustomerRegistered": {      "post": {        "summary": "Customer Registered",        "operationId": "CustomerRegistered",        "tags": [          "Webhook event"        ],        "description": "New member has registered",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "customerId": {                        "type": "string",                        "format": "uuid"                      },                      "customerData": {                        "type": "object",                        "properties": {                          "referralToken": {                            "type": "string"                          },                          "firstName": {                            "type": "string"                          },                          "lastName": {                            "type": "string"                          },                          "email": {                            "type": "string"                          },                          "phone": {                            "type": "string"                          },                          "gender": {                            "type": "string"                          },                          "birthDate": {                            "type": "string",                            "format": "date-time"                          },                          "registeredAt": {                            "type": "string",                            "format": "date-time"                          },                          "address": {                            "$ref": "#/components/schemas/CustomerAddressFormType"                          },                          "company": {                            "type": "object",                            "properties": {                              "name": {                                "type": "string"                              },                              "nip": {                                "type": "string"                              }                            }                          },                          "loyaltyCardNumber": {                            "type": "string"                          },                          "customAttributes": {                            "type": "array",                            "items": {                              "type": "object",                              "properties": {                                "key": {                                  "type": "string"                                },                                "value": {                                  "type": "string"                                }                              }                            }                          },                          "agreement1": {                            "type": "boolean"                          },                          "agreement2": {                            "type": "boolean"                          },                          "agreement3": {                            "type": "boolean"                          }                        }                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "TransactionRegistered": {      "post": {        "summary": "Transaction Registered",        "operationId": "TransactionRegistered",        "tags": [          "Webhook event"        ],        "description": "Transaction has been registered",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "transactionId": {                        "type": "string",                        "format": "uuid"                      },                      "documentNumber": {                        "type": "string"                      },                      "purchasedAt": {                        "type": "string",                        "format": "date-time"                      },                      "documentType": {                        "type": "string"                      },                      "customerData": {                        "type": "object",                        "properties": {                          "email": {                            "type": "string"                          },                          "name": {                            "type": "string"                          },                          "nip": {                            "type": "string"                          },                          "phone": {                            "type": "string"                          },                          "loyaltyCardNumber": {                            "type": "string"                          },                          "address": {                            "$ref": "#/components/schemas/CustomerAddressFormType"                          }                        }                      },                      "items": {                        "type": "array",                        "items": {                          "type": "object",                          "properties": {                            "sku": {                              "type": "object",                              "properties": {                                "code": {                                  "type": "string"                                }                              }                            },                            "name": {                              "type": "string"                            },                            "quantity": {                              "type": "integer"                            },                            "grossValue": {                              "type": "number",                              "format": "float"                            },                            "category": {                              "type": "string"                            },                            "maker": {                              "type": "string"                            },                            "labels": {                              "type": "array",                              "items": {                                "type": "object",                                "properties": {                                  "key": {                                    "type": "string"                                  },                                  "value": {                                    "type": "string"                                  }                                }                              }                            }                          }                        }                      },                      "channelId": {                        "type": "string",                        "format": "uuid"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "RewardRedemptionStatusChanged": {      "post": {        "summary": "Reward Redemption Status Changed",        "operationId": "RewardRedemptionStatusChanged",        "tags": [          "Webhook event"        ],        "description": "Reward redemption status has changed",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "issuedReward": {                        "type": "object",                        "properties": {                          "issuedRewardId": {                            "type": "string"                          },                          "token": {                            "type": "string"                          },                          "name": {                            "type": "string"                          },                          "customerId": {                            "type": "string"                          },                          "status": {                            "type": "string"                          },                          "costInPoints": {                            "type": "number",                            "format": "float"                          },                          "tax": {                            "type": "number",                            "format": "float"                          },                          "taxPriceValue": {                            "type": "number",                            "format": "float"                          },                          "price": {                            "type": "number",                            "format": "float"                          },                          "redemptionDate": {                            "type": "string",                            "format": "date-time"                          },                          "customerData": {                            "type": "object",                            "properties": {                              "email": {                                "type": "string"                              },                              "firstName": {                                "type": "string"                              },                              "lastName": {                                "type": "string"                              },                              "companyName": {                                "type": "string"                              },                              "nip": {                                "type": "string"                              },                              "phone": {                                "type": "string"                              },                              "loyaltyCardNumber": {                                "type": "string"                              },                              "address": {                                "$ref": "#/components/schemas/CustomerAddressFormType"                              }                            }                          },                          "rewardType": {                            "type": "string"                          },                          "rewardId": {                            "type": "string"                          },                          "issuedCoupon": {                            "type": "object",                            "properties": {                              "code": {                                "type": "string"                              },                              "value": {                                "type": "number",                                "format": "float"                              },                              "activeFrom": {                                "type": "string",                                "format": "date-time"                              },                              "activeTo": {                                "type": "string",                                "format": "date-time"                              }                            }                          }                        }                      },                      "newStatus": {                        "type": "string"                      },                      "newComment": {                        "type": "string"                      },                      "newDate": {                        "type": "string",                        "format": "date-time"                      },                      "oldStatus": {                        "type": "string"                      },                      "oldComment": {                        "type": "string"                      },                      "oldDate": {                        "type": "string",                        "format": "date-time"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "RewardCreated": {      "post": {        "summary": "Reward Created",        "operationId": "RewardCreated",        "tags": [          "Webhook event"        ],        "description": "Reward Created",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "reward": {                        "$ref": "#/components/schemas/WebhookReward"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "RewardUpdated": {      "post": {        "summary": "Reward Updated",        "operationId": "RewardUpdated",        "tags": [          "Webhook event"        ],        "description": "Reward Updated",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "reward": {                        "$ref": "#/components/schemas/WebhookReward"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "CampaignEffectWasApplied": {      "post": {        "summary": "Campaign Effect Was Applied",        "operationId": "CampaignEffectWasApplied",        "tags": [          "Webhook event"        ],        "description": "Campaign effect has been applied to a member account",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "member": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "campaign": {                        "$ref": "#/components/schemas/WebhookCampaign"                      },                      "effectsGiven": {                        "type": "array",                        "items": {                          "$ref": "#/components/schemas/WebhookCampaignEffect"                        }                      },                      "redemptionCode": {                        "type": "string"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "MemberAchievementProgressWasChanged": {      "post": {        "summary": "Member Achievement Progress Was Changed",        "operationId": "MemberAchievementProgressWasChanged",        "deprecated": true,        "tags": [          "Webhook event"        ],        "description": "Member achievement progress has changed",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "member": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "achievement": {                        "type": "object",                        "properties": {                          "achievementId": {                            "type": "string"                          },                          "achievementName": {                            "type": "string"                          },                          "limitReached": {                            "type": "boolean"                          },                          "manuallyEdited": {                            "type": "boolean"                          },                          "memberProgress": {                            "type": "object",                            "properties": {                              "completedCount": {                                "type": "integer"                              },                              "reset": {                                "type": "boolean"                              },                              "rules": {                                "type": "array",                                "items": {                                  "type": "object",                                  "properties": {                                    "achievementRuleId": {                                      "type": "string"                                    },                                    "periodGoal": {                                      "type": "number",                                      "format": "float"                                    },                                    "currentPeriodValue": {                                      "type": "number",                                      "format": "float"                                    },                                    "periodType": {                                      "type": "string"                                    },                                    "consecutivePeriods": {                                      "type": "integer",                                      "nullable": true                                    },                                    "completedConsecutivePeriods": {                                      "type": "integer"                                    },                                    "type": {                                      "type": "string"                                    },                                    "trigger": {                                      "type": "string",                                      "enum": [                                        "transaction",                                        "custom_event"                                      ]                                    },                                    "translations": {                                      "$ref": "#/components/schemas/Translations"                                    }                                  }                                }                              }                            }                          },                          "previousMemberProgress": {                            "type": "object",                            "properties": {                              "completedCount": {                                "type": "integer"                              },                              "rules": {                                "type": "array",                                "items": {                                  "type": "object",                                  "properties": {                                    "achievementRuleId": {                                      "type": "string"                                    },                                    "periodGoal": {                                      "type": "number",                                      "format": "float"                                    },                                    "currentPeriodValue": {                                      "type": "number",                                      "format": "float"                                    },                                    "periodType": {                                      "type": "string"                                    },                                    "consecutivePeriods": {                                      "type": "integer",                                      "nullable": true                                    },                                    "completedConsecutivePeriods": {                                      "type": "integer"                                    },                                    "type": {                                      "type": "string"                                    },                                    "trigger": {                                      "type": "string",                                      "enum": [                                        "transaction",                                        "custom_event"                                      ]                                    },                                    "translations": {                                      "$ref": "#/components/schemas/Translations"                                    }                                  }                                }                              }                            }                          }                        }                      },                      "triggerType": {                        "type": "string",                        "deprecated": true,                        "enum": [                          "transaction",                          "custom_event"                        ]                      },                      "trigger": {                        "type": "object",                        "required": [                          "triggerId",                          "type",                          "createdAt"                        ],                        "properties": {                          "triggerId": {                            "type": "string",                            "format": "uuid"                          },                          "type": {                            "type": "string",                            "enum": [                              "transaction",                              "custom_event"                            ]                          },                          "createdAt": {                            "type": "string",                            "format": "date-time"                          },                          "purchasedAt": {                            "type": "string",                            "format": "date-time"                          },                          "documentNumber": {                            "type": "string"                          },                          "eventDate": {                            "type": "string",                            "format": "date-time"                          },                          "eventId": {                            "type": "string"                          }                        },                        "oneOf": [                          {                            "properties": {                              "type": {                                "type": "string",                                "enum": [                                  "transaction"                                ]                              }                            },                            "required": [                              "purchasedAt",                              "documentNumber"                            ]                          },                          {                            "properties": {                              "type": {                                "type": "string",                                "enum": [                                  "custom_event"                                ]                              }                            },                            "required": [                              "eventDate",                              "eventId"                            ]                          }                        ]                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "MemberChallengeProgressWasChanged": {      "post": {        "summary": "Member Challenge Progress Was Changed",        "operationId": "MemberChallengeProgressWasChanged",        "tags": [          "Webhook event"        ],        "description": "Member challenge progress has changed",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "member": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "challenge": {                        "type": "object",                        "properties": {                          "campaignId": {                            "type": "string"                          },                          "campaignName": {                            "type": "string"                          },                          "limitReached": {                            "type": "boolean"                          },                          "manuallyEdited": {                            "type": "boolean"                          },                          "memberProgress": {                            "type": "object",                            "properties": {                              "completedCount": {                                "type": "integer"                              },                              "reset": {                                "type": "boolean"                              },                              "milestones": {                                "type": "array",                                "items": {                                  "type": "object",                                  "properties": {                                    "milestoneId": {                                      "type": "string"                                    },                                    "periodGoal": {                                      "type": "number",                                      "format": "float"                                    },                                    "currentPeriodValue": {                                      "type": "number",                                      "format": "float"                                    },                                    "periodType": {                                      "type": "string"                                    },                                    "consecutivePeriods": {                                      "type": "integer",                                      "nullable": true                                    },                                    "completedConsecutivePeriods": {                                      "type": "integer"                                    },                                    "type": {                                      "type": "string"                                    },                                    "trigger": {                                      "type": "string",                                      "enum": [                                        "transaction",                                        "custom_event"                                      ]                                    },                                    "translations": {                                      "$ref": "#/components/schemas/Translations"                                    }                                  }                                }                              }                            }                          },                          "previousMemberProgress": {                            "type": "object",                            "properties": {                              "completedCount": {                                "type": "integer"                              },                              "milestones": {                                "type": "array",                                "items": {                                  "type": "object",                                  "properties": {                                    "milestoneId": {                                      "type": "string"                                    },                                    "periodGoal": {                                      "type": "number",                                      "format": "float"                                    },                                    "currentPeriodValue": {                                      "type": "number",                                      "format": "float"                                    },                                    "periodType": {                                      "type": "string"                                    },                                    "consecutivePeriods": {                                      "type": "integer",                                      "nullable": true                                    },                                    "completedConsecutivePeriods": {                                      "type": "integer"                                    },                                    "type": {                                      "type": "string"                                    },                                    "trigger": {                                      "type": "string",                                      "enum": [                                        "transaction",                                        "custom_event"                                      ]                                    },                                    "translations": {                                      "$ref": "#/components/schemas/Translations"                                    }                                  }                                }                              }                            }                          }                        }                      },                      "triggerType": {                        "type": "string",                        "deprecated": true,                        "enum": [                          "transaction",                          "custom_event"                        ]                      },                      "trigger": {                        "type": "object",                        "required": [                          "triggerId",                          "type",                          "createdAt"                        ],                        "properties": {                          "triggerId": {                            "type": "string",                            "format": "uuid"                          },                          "type": {                            "type": "string",                            "enum": [                              "transaction",                              "custom_event"                            ]                          },                          "createdAt": {                            "type": "string",                            "format": "date-time"                          },                          "purchasedAt": {                            "type": "string",                            "format": "date-time"                          },                          "documentNumber": {                            "type": "string"                          },                          "eventDate": {                            "type": "string",                            "format": "date-time"                          },                          "eventId": {                            "type": "string"                          }                        },                        "oneOf": [                          {                            "properties": {                              "type": {                                "type": "string",                                "enum": [                                  "transaction"                                ]                              }                            },                            "required": [                              "purchasedAt",                              "documentNumber"                            ]                          },                          {                            "properties": {                              "type": {                                "type": "string",                                "enum": [                                  "custom_event"                                ]                              }                            },                            "required": [                              "eventDate",                              "eventId"                            ]                          }                        ]                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "UnitsTransferWasAdded": {      "post": {        "summary": "Units Transfer Was Added",        "operationId": "UnitsTransferWasAdded",        "tags": [          "Webhook event"        ],        "description": "Units transfer has been added",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "member": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "wallet": {                        "type": "object",                        "properties": {                          "walletId": {                            "type": "string",                            "format": "uuid",                            "description": "same as data.accountId"                          },                          "walletType": {                            "$ref": "#/components/schemas/WalletType"                          }                        }                      },                      "createdAt": {                        "type": "string",                        "format": "date-time"                      },                      "expiresAt": {                        "type": "string",                        "format": "date-time"                      },                      "units": {                        "type": "number",                        "format": "float"                      },                      "comment": {                        "type": "string"                      },                      "type": {                        "type": "string",                        "enum": [                          "adding",                          "spending",                          "p2p_adding",                          "p2p_spending",                          "blocked",                          "expired"                        ]                      },                      "pending": {                        "type": "boolean"                      },                      "lockedUntil": {                        "type": "string",                        "format": "date-time"                      },                      "transferId": {                        "type": "string",                        "format": "uuid"                      },                      "relatedTransferId": {                        "type": "string",                        "format": "uuid",                        "description": "Only for transfers with type 'expired'"                      },                      "actionCause": {                        "nullable": true,                        "type": "object",                        "oneOf": [                          {                            "$ref": "#/components/schemas/ActionCause"                          }                        ]                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "AchievementsWereProcessed": {      "post": {        "summary": "Achievements Were Processed",        "operationId": "AchievementsWereProcessed",        "deprecated": true,        "tags": [          "Webhook event"        ],        "description": "Provides information about all achievement progress changes for all members that were triggered by a specific trigger",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "array",                    "items": {                      "type": "object",                      "properties": {                        "member": {                          "$ref": "#/components/schemas/WebhookCustomer"                        },                        "achievement": {                          "type": "object",                          "properties": {                            "achievementId": {                              "type": "string"                            },                            "achievementName": {                              "type": "string"                            },                            "limitReached": {                              "type": "boolean"                            },                            "manuallyEdited": {                              "type": "boolean"                            },                            "memberProgress": {                              "type": "object",                              "properties": {                                "completedCount": {                                  "type": "integer"                                },                                "reset": {                                  "type": "boolean"                                },                                "rules": {                                  "type": "array",                                  "items": {                                    "type": "object",                                    "properties": {                                      "achievementRuleId": {                                        "type": "string"                                      },                                      "periodGoal": {                                        "type": "number",                                        "format": "float"                                      },                                      "currentPeriodValue": {                                        "type": "number",                                        "format": "float"                                      },                                      "periodType": {                                        "type": "string"                                      },                                      "consecutivePeriods": {                                        "type": "integer",                                        "nullable": true                                      },                                      "completedConsecutivePeriods": {                                        "type": "integer"                                      },                                      "type": {                                        "type": "string"                                      },                                      "trigger": {                                        "type": "string",                                        "enum": [                                          "transaction",                                          "custom_event"                                        ]                                      },                                      "translations": {                                        "$ref": "#/components/schemas/Translations"                                      }                                    }                                  }                                }                              }                            }                          }                        },                        "triggerType": {                          "type": "string",                          "deprecated": true,                          "enum": [                            "transaction",                            "custom_event"                          ]                        },                        "trigger": {                          "type": "object",                          "properties": {                            "triggerId": {                              "type": "string",                              "format": "uuid"                            },                            "type": {                              "type": "string",                              "enum": [                                "transaction",                                "custom_event"                              ]                            }                          }                        }                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "SegmentMembershipDropped": {      "post": {        "summary": "Segment Membership Dropped",        "operationId": "SegmentMembershipDropped",        "tags": [          "Webhook event"        ],        "description": "Segment Membership Dropped",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "segment": {                        "$ref": "#/components/schemas/WebhookSegment"                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "ChallengesWereProcessed": {      "post": {        "summary": "Challenges Were Processed",        "operationId": "ChallengesWereProcessed",        "tags": [          "Webhook event"        ],        "description": "Provides information about all challenge progress changes for all members that were triggered by a specific trigger",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "array",                    "items": {                      "type": "object",                      "properties": {                        "memberId": {                          "type": "string",                          "format": "uuid"                        },                        "campaignName": {                          "type": "string"                        },                        "limitReached": {                          "type": "boolean"                        },                        "manuallyEdited": {                          "type": "boolean"                        },                        "memberProgress": {                          "type": "object",                          "properties": {                            "completedCount": {                              "type": "integer"                            },                            "milestones": {                              "type": "array",                              "items": {                                "type": "object",                                "properties": {                                  "milestoneId": {                                    "type": "string",                                    "format": "uuid"                                  },                                  "periodGoal": {                                    "type": "number"                                  },                                  "currentPeriodValue": {                                    "type": "number"                                  },                                  "periodType": {                                    "type": "string"                                  },                                  "type": {                                    "type": "string"                                  },                                  "trigger": {                                    "type": "string",                                    "enum": [                                      "transaction",                                      "custom_event"                                    ]                                  },                                  "translations": {                                    "$ref": "#/components/schemas/Translations"                                  }                                }                              }                            },                            "reset": {                              "type": "boolean"                            }                          }                        },                        "triggerId": {                          "type": "string",                          "format": "uuid",                          "nullable": true                        },                        "triggerType": {                          "type": "string",                          "nullable": true,                          "enum": [                            "transaction",                            "custom_event"                          ]                        }                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    },    "WalletBalanceUpdated": {      "post": {        "summary": "Wallet Balance Updated",        "operationId": "WalletBalanceUpdated",        "tags": [          "Webhook event"        ],        "description": "A member's wallet balance changed — units were added, spent, expired, activated, cancelled, blocked, or unblocked",        "requestBody": {          "content": {            "application/json": {              "schema": {                "type": "object",                "properties": {                  "messageId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook"                  },                  "requestId": {                    "type": "string",                    "format": "uuid",                    "description": "Unique identifier for each webhook send attempt"                  },                  "eventName": {                    "type": "string"                  },                  "storeCode": {                    "type": "string"                  },                  "createdAt": {                    "type": "string",                    "format": "date-time"                  },                  "data": {                    "type": "object",                    "properties": {                      "member": {                        "$ref": "#/components/schemas/WebhookCustomer"                      },                      "wallet": {                        "type": "object",                        "properties": {                          "walletId": {                            "type": "string",                            "format": "uuid",                            "description": "The member's account (wallet) identifier"                          },                          "walletCode": {                            "type": "string",                            "description": "Code of the wallet type (e.g. POINTS)"                          },                          "balance": {                            "type": "object",                            "properties": {                              "reason": {                                "type": "string",                                "description": "What kind of operation triggered the balance change",                                "enum": [                                  "added",                                  "spent",                                  "expired",                                  "activated",                                  "cancelled",                                  "blocked",                                  "unblocked"                                ]                              },                              "changedAt": {                                "type": "string",                                "format": "date-time",                                "description": "ISO 8601 timestamp (microsecond precision) of when the balance changed",                                "example": "2026-03-13T14:23:45.123456Z"                              },                              "before": {                                "$ref": "#/components/schemas/WebhookWalletBalance"                              },                              "after": {                                "$ref": "#/components/schemas/WebhookWalletBalance"                              }                            }                          }                        }                      }                    }                  }                }              }            }          }        },        "responses": {          "2XX": {            "description": "Return any 2XX status to indicate that the data was received successfully"          }        }      }    }  },  "components": {    "securitySchemes": {      "token": {        "type": "apiKey",        "name": "X-AUTH-TOKEN",        "in": "header"      },      "Bearer": {        "type": "http",        "description": "Open Loyalty has the JWT authorization.\nTo learn what a JSON Web Token is and how it works, check out Introduction to JSON Web Tokens <https://jwt.io/introduction/>\n\n### Obtain an access token\n\nSend a request with the parameters username and password\n\n#### Definition\n\n`POST /api/admin/login_check` [Go to definition](#operation/adminLoginCheck)\\\n`POST /api/{storeCode}/member/login_check` [Go to definition](#operation/memberLoginCheck)\n\n#### Example\n\n```bash\ncurl {HOST}/api/admin/login_check\n    -H 'Content-Type: application/json;charset=UTF-8'\n    -H 'Accept: application/json, text/plain, */*'\n    --data-binary '{\"username\":\"admin\",\"password\":\"password\"}'\n```\n\n#### Example Response\n\n```json\n{\n    \"token\":\"eyJhbGciOiJSUzI1NiIsInR5cCI6...\",\n    \"refresh_token\":\"0558f8bb29948c4e54c443f...\"\n}\n```\n\n### Using JSON Web Token\n\nAdd authorization header to each request\\\n`Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6...`\\\nYou can now access any API method you want under the /api prefix.\n\n#### Example\n```bash\ncurl {HOST}/api/{storeCode}/analytics/members\n    -H 'Accept: application/json'\n    -H 'Content-type: application/x-www-form-urlencoded'\n    -H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6...'\n```\n\n### Refresh JSON Web Token\nYou can refresh token using refresh_token that was given during login.\\\nThere are two endpoints\\\nTo refresh admin token `POST /api/token/refresh` [Go to definition](#operation/tokenRefresh)\\\nTo refresh member token `POST /api/{storeCode}/token/refresh` [Go to definition](#operation/tokenRefreshMember)\n",        "bearerFormat": "JWT",        "scheme": "bearer"      }    },    "parameters": {      "role": {        "name": "role",        "in": "path",        "description": "Acl role",        "required": true,        "schema": {          "type": "integer"        }      },      "page": {        "name": "_page",        "in": "query",        "description": "Number of page with results, starts from 1",        "required": false,        "schema": {          "type": "integer",          "default": 1,          "minimum": 1        },        "example": 1      },      "itemsOnPage": {        "name": "_itemsOnPage",        "in": "query",        "description": "Items on one page",        "required": false,        "schema": {          "type": "integer",          "default": 10,          "maximum": 50,          "minimum": 1        },        "example": 25      },      "orderBy": {        "name": "_orderBy",        "in": "query",        "description": "Sorting order. If sorting is not chosen, the rows will be returned in an unspecified order. Sort order: * `asc` - Ascending, from A to Z * `desc` - Descending, from Z to A",        "required": false,        "style": "deepObject",        "explode": true,        "schema": {          "type": "object",          "additionalProperties": {            "type": "string",            "enum": [              "asc",              "desc"            ]          }        }      },      "admin": {        "name": "admin",        "in": "path",        "description": "Admin ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "storeCode": {        "name": "storeCode",        "in": "path",        "description": "Store code",        "required": true,        "schema": {          "type": "string"        }      },      "campaign": {        "name": "campaign",        "in": "path",        "description": "Campaign ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "channel": {        "name": "channel",        "in": "path",        "description": "Channel ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "customEventSchema": {        "name": "customEventSchema",        "in": "path",        "description": "Custom Event Schema",        "required": true,        "schema": {          "type": "string"        }      },      "eventType": {        "name": "eventType",        "in": "path",        "description": "Event type",        "required": true,        "schema": {          "type": "string"        }      },      "scroll": {        "name": "_scroll",        "in": "query",        "description": "To use scroll pagination, add the `_scroll` parameter to your query:\n  ?_scroll\n\nTo retrieve the next page, take the `scroll` value from the previous response and use it in the next request:\n  ?_scroll=eyJjcmVhdGVkQXQiOiIyMDI1LTA3LTAxIDEzOjU2OjI5LjAyMTcwMyIsImlkIjoiNTM5N2RiYzYtZGVkMi00MTQ0LTlhMjQtOTRjYmI5YWVjNDBjIn0=\n\nNotes:\n  - Scroll pagination does not support sorting with `_orderBy`.\n  - Items are returned in ascending order by the `createdAt` field by default.\n",        "required": false,        "schema": {          "type": "string"        },        "example": ""      },      "transfer": {        "name": "transfer",        "in": "path",        "description": "Points transfer ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "reward": {        "name": "reward",        "in": "path",        "description": "Reward ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "issuedReward": {        "name": "issuedReward",        "in": "path",        "description": "IssuedReward ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "rewardCategory": {        "name": "rewardCategory",        "in": "path",        "description": "Reward category ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "segment": {        "name": "segment",        "in": "path",        "description": "Segment ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "choicesType": {        "name": "type",        "in": "path",        "description": "Choices type",        "required": true,        "schema": {          "type": "string",          "enum": [            "currency",            "country",            "availableFrontendTranslations",            "availablePointExpireAfter",            "identificationMethods",            "issuedRewardStatus",            "language",            "timezone"          ]        }      },      "tier": {        "name": "tier",        "in": "path",        "description": "Tier ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "transaction": {        "name": "transaction",        "in": "path",        "description": "Transaction ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "export": {        "name": "export",        "in": "path",        "description": "Export ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "tierSet": {        "name": "tierSet",        "in": "path",        "description": "TierSet ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "webhookSubscription": {        "name": "webhookSubscription",        "in": "path",        "description": "Webhook subscription ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "achievement": {        "name": "achievement",        "in": "path",        "description": "Achievement ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "apikey": {        "name": "apikey",        "in": "path",        "description": "API key ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "member": {        "name": "member",        "in": "path",        "description": "Member ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "customEvent": {        "name": "customEvent",        "in": "path",        "description": "Custom Event ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "store": {        "name": "store",        "in": "path",        "description": "Store ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      },      "wallet": {        "name": "wallet",        "in": "path",        "description": "Wallet ID",        "required": true,        "schema": {          "type": "string"        }      },      "walletType": {        "name": "walletType",        "in": "path",        "description": "WalletType ID",        "required": true,        "schema": {          "type": "string",          "format": "uuid"        }      }    },    "schemas": {      "Role": {        "properties": {          "role": {            "type": "string"          },          "stores": {            "type": "array",            "items": {              "type": "string"            }          },          "id": {            "type": "integer",            "example": 0          },          "name": {            "type": "string"          },          "master": {            "type": "boolean"          },          "default": {            "type": "boolean"          },          "permissions": {            "type": "array",            "items": {              "properties": {                "id": {                  "type": "integer"                },                "resource": {                  "type": "string"                },                "access": {                  "type": "string"                },                "filterQuery": {                  "type": "string"                },                "role": {                  "type": "object"                }              },              "type": "object"            }          }        },        "type": "object"      },      "ExpiredToken": {        "required": [          "code",          "message"        ],        "properties": {          "code": {            "type": "string",            "example": "401"          },          "message": {            "type": "string",            "example": "Expired JWT Token."          }        },        "type": "object"      },      "InvalidToken": {        "required": [          "code",          "message"        ],        "properties": {          "code": {            "type": "string",            "example": "401"          },          "message": {            "type": "string",            "example": "Invalid JWT Token"          }        },        "type": "object"      },      "Unauthorized": {        "required": [          "code",          "message"        ],        "properties": {          "code": {            "type": "integer",            "example": 401          },          "message": {            "type": "string",            "example": "Authentication Required"          }        },        "type": "object"      },      "PermissionFormType": {        "required": [          "resource",          "access"        ],        "properties": {          "resource": {            "type": "string",            "enum": [              "LEVEL",              "TRANSACTION",              "ADMIN",              "ACL",              "ANALYTICS",              "CHANNEL",              "POINT_TRANSFER",              "SEGMENT",              "SETTINGS",              "TECH_SETTINGS",              "CUSTOMER",              "REWARDS",              "AUDIT",              "EVENT",              "EVENTS",              "LANGUAGE",              "TRANSLATIONS",              "STORES",              "CAMPAIGN",              "REWARDS_CATEGORIES",              "ISSUED_REWARDS",              "CUSTOM_EVENT",              "WALLET",              "WEBHOOK_SUBSCRIPTION",              "DATA_ANALYTICS",              "DATA_ANALYTICS_CAMPAIGN",              "IMPORT",              "EXPORT",              "GROUP_OF_VALUES",              "BILLABLE_REPORTS",              "BULK_ACTIONS",              "GLOBAL_MANAGEMENT",              "BADGE"            ]          },          "access": {            "type": "string",            "enum": [              "VIEW",              "MODIFY"            ]          },          "filterQuery": {            "type": "string"          }        },        "type": "object"      },      "RoleFormType": {        "required": [          "name"        ],        "properties": {          "name": {            "type": "string"          },          "default": {            "type": "boolean"          },          "permissions": {            "type": "array",            "items": {              "$ref": "#/components/schemas/PermissionFormType"            }          },          "stores": {            "type": "array",            "items": {              "type": "string",              "example": "DEFAULT"            }          }        },        "type": "object"      },      "AclAvailableObject": {        "properties": {          "code": {            "type": "string"          },          "name": {            "type": "string"          }        },        "type": "object"      },      "SearchableTotalResponse2": {        "properties": {          "all": {            "type": "integer",            "deprecated": true          },          "filtered": {            "type": "integer",            "deprecated": true          },          "estimated": {            "description": "Field estimated is used to show that the results are estimated. It might happen when there are more than 5000 results due to performance optimization.",            "type": "boolean",            "deprecated": true          }        },        "type": "object",        "deprecated": true      },      "AdminInternal": {        "properties": {          "canChangePassword": {            "type": "boolean",            "example": true          },          "id": {            "type": "string",            "format": "uuid"          },          "username": {            "type": "string"          },          "isActive": {            "type": "boolean"          },          "createAt": {            "description": "Use createdAt instead",            "type": "string",            "format": "date-time",            "deprecated": true          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "roles": {            "type": "array",            "items": {              "properties": {                "role": {                  "type": "string"                },                "stores": {                  "type": "array",                  "items": {                    "type": "object"                  }                },                "id": {                  "type": "integer"                },                "name": {                  "type": "string"                },                "master": {                  "type": "boolean"                },                "default": {                  "type": "boolean"                },                "permissions": {                  "type": "array",                  "items": {                    "type": "object"                  }                }              },              "type": "object"            }          },          "email": {            "type": "string"          },          "phone": {            "type": "string"          },          "settings": {            "properties": {              "notificationsEnabled": {                "type": "string"              }            },            "type": "object"          },          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "external": {            "type": "boolean",            "example": false          },          "dtype": {            "type": "string"          },          "remoteAuth": {            "type": "array",            "items": {              "type": "object"            }          }        },        "type": "object"      },      "AdminExternal": {        "properties": {          "canChangePassword": {            "type": "boolean",            "example": false          },          "id": {            "type": "string",            "format": "uuid"          },          "username": {            "type": "string"          },          "isActive": {            "type": "boolean"          },          "createAt": {            "description": "Use createdAt instead",            "type": "string",            "format": "date-time",            "deprecated": true          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "roles": {            "type": "array",            "items": {              "properties": {                "role": {                  "type": "string"                },                "stores": {                  "type": "array",                  "items": {                    "type": "object"                  }                },                "id": {                  "type": "integer"                },                "name": {                  "type": "string"                },                "master": {                  "type": "boolean"                },                "default": {                  "type": "boolean"                },                "permissions": {                  "type": "array",                  "items": {                    "type": "object"                  }                }              },              "type": "object"            }          },          "email": {            "type": "string"          },          "phone": {            "type": "string"          },          "settings": {            "properties": {              "notificationsEnabled": {                "type": "string"              }            },            "type": "object"          },          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "external": {            "type": "boolean",            "example": true          },          "apiKey": {            "type": "string"          },          "dtype": {            "type": "string"          },          "remoteAuth": {            "type": "array",            "items": {              "type": "object"            }          }        },        "type": "object"      },      "AdminWithApiKey": {        "properties": {          "admin": {            "required": [              "email",              "roles",              "apiKey"            ],            "properties": {              "plainPassword": {                "type": "string"              },              "external": {                "type": "boolean",                "example": false              },              "apiKey": {                "description": "Use \"apiKeyPost\" endpoint instead.",                "type": "string",                "deprecated": true              },              "isActive": {                "type": "boolean"              },              "notificationsEnabled": {                "type": "boolean"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "phone": {                "type": "string"              },              "roles": {                "type": "array",                "items": {                  "type": "integer"                }              },              "email": {                "type": "string"              }            },            "type": "object"          }        },        "type": "object"      },      "AdminWithPlainPassword": {        "properties": {          "admin": {            "required": [              "email",              "roles",              "plainPassword"            ],            "properties": {              "plainPassword": {                "type": "string"              },              "external": {                "type": "boolean",                "example": true              },              "apiKey": {                "type": "string"              },              "isActive": {                "type": "boolean"              },              "notificationsEnabled": {                "type": "boolean"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "phone": {                "type": "string"              },              "roles": {                "type": "array",                "items": {                  "type": "integer"                }              },              "email": {                "type": "string"              }            },            "type": "object"          }        },        "type": "object"      },      "AdminId": {        "properties": {          "adminId": {            "description": "Created administrator ID",            "type": "string",            "example": "00000000-0000-0000-0000-000000000000"          }        },        "type": "object"      },      "AdminExternalList": {        "properties": {          "items": {            "type": "array",            "items": {              "properties": {                "canChangePassword": {                  "type": "boolean",                  "example": false                },                "id": {                  "type": "string",                  "format": "uuid"                },                "username": {                  "type": "string"                },                "isActive": {                  "type": "boolean"                },                "createAt": {                  "description": "Use createdAt instead",                  "type": "string",                  "format": "date-time",                  "deprecated": true                },                "createdAt": {                  "type": "string",                  "format": "date-time"                },                "roles": {                  "type": "array",                  "items": {                    "properties": {                      "role": {                        "type": "string"                      },                      "stores": {                        "type": "array",                        "items": {                          "type": "object"                        }                      },                      "id": {                        "type": "integer"                      },                      "name": {                        "type": "string"                      },                      "master": {                        "type": "boolean"                      },                      "default": {                        "type": "boolean"                      },                      "permissions": {                        "type": "array",                        "items": {                          "type": "object"                        }                      }                    },                    "type": "object"                  }                },                "email": {                  "type": "string"                },                "phone": {                  "type": "string"                },                "settings": {                  "properties": {                    "notificationsEnabled": {                      "type": "string"                    }                  },                  "type": "object"                },                "firstName": {                  "type": "string"                },                "lastName": {                  "type": "string"                },                "external": {                  "type": "boolean",                  "example": true                },                "apiKey": {                  "type": "string"                },                "dtype": {                  "type": "string"                },                "remoteAuth": {                  "type": "array",                  "items": {                    "type": "object"                  }                },                "ignoreAudit": {                  "type": "boolean"                }              },              "type": "object"            }          },          "total": {            "properties": {              "all": {                "type": "integer",                "deprecated": true              },              "filtered": {                "type": "integer",                "deprecated": true              }            },            "type": "object",            "deprecated": true          }        },        "type": "object"      },      "AdminInternalList": {        "properties": {          "items": {            "type": "array",            "items": {              "properties": {                "canChangePassword": {                  "type": "boolean",                  "example": true                },                "id": {                  "type": "string",                  "format": "uuid"                },                "username": {                  "type": "string"                },                "isActive": {                  "type": "boolean"                },                "createAt": {                  "description": "Use createdAt instead",                  "type": "string",                  "format": "date-time",                  "deprecated": true                },                "createdAt": {                  "type": "string",                  "format": "date-time"                },                "roles": {                  "type": "array",                  "items": {                    "properties": {                      "role": {                        "type": "string"                      },                      "stores": {                        "type": "array",                        "items": {                          "type": "object"                        }                      },                      "id": {                        "type": "integer"                      },                      "name": {                        "type": "string"                      },                      "master": {                        "type": "boolean"                      },                      "default": {                        "type": "boolean"                      },                      "permissions": {                        "type": "array",                        "items": {                          "type": "object"                        }                      }                    },                    "type": "object"                  }                },                "email": {                  "type": "string"                },                "phone": {                  "type": "string"                },                "settings": {                  "properties": {                    "notificationsEnabled": {                      "type": "string"                    }                  },                  "type": "object"                },                "firstName": {                  "type": "string"                },                "lastName": {                  "type": "string"                },                "external": {                  "type": "boolean",                  "example": false                },                "dtype": {                  "type": "string"                },                "remoteAuth": {                  "type": "array",                  "items": {                    "type": "object"                  }                },                "ignoreAudit": {                  "type": "boolean"                }              },              "type": "object"            }          },          "total": {            "properties": {              "all": {                "type": "integer"              },              "filtered": {                "type": "integer"              }            },            "type": "object"          }        },        "type": "object"      },      "AdminPermissions": {        "properties": {          "superAdmin": {            "type": "boolean"          },          "roles": {            "type": "array",            "items": {              "type": "string"            }          },          "permissions": {            "type": "array",            "items": {              "type": "string"            }          }        },        "type": "object"      },      "UserSettingsEntry": {        "properties": {          "key": {            "type": "string"          },          "value": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "UserSettingsEntryFormType": {        "properties": {          "value": {            "type": "string"          }        },        "type": "object"      },      "PasswordResetFormType": {        "required": [          "plainPassword"        ],        "properties": {          "plainPassword": {            "type": "string",            "format": "password"          }        },        "type": "object"      },      "TierStats": {        "properties": {          "levelId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string",            "example": "Tier1"          },          "conditionValue": {            "type": "number",            "format": "float",            "example": 3.8          },          "store": {            "type": "string",            "example": "DEFAULT"          },          "customers": {            "type": "boolean",            "example": true          }        },        "type": "object"      },      "MembersStats": {        "properties": {          "in_1_days": {            "type": "integer",            "example": 2          },          "in_7_days": {            "type": "integer",            "example": 23          },          "in_30_days": {            "type": "integer",            "example": 153          },          "in_365_days": {            "type": "integer",            "example": 345          }        },        "type": "object"      },      "PointsStats": {        "properties": {          "totalPointsActive": {            "type": "number",            "format": "float",            "example": 72544.8          },          "totalPointsSpent": {            "type": "number",            "format": "float",            "example": 3425.25          },          "totalPointsAdded": {            "type": "number",            "format": "float",            "example": 47563          },          "totalPointsExpired": {            "type": "number",            "format": "float",            "example": 432.9          },          "totalPointsPending": {            "type": "number",            "format": "float",            "example": 65764.76          }        },        "type": "object"      },      "TransactionsStats": {        "properties": {          "countIntervals": {            "properties": {              "in_1_days": {                "type": "integer",                "example": 2              },              "in_7_days": {                "type": "integer",                "example": 23              },              "in_30_days": {                "type": "integer",                "example": 153              },              "in_365_days": {                "type": "integer",                "example": 345              }            },            "type": "object"          },          "total": {            "type": "integer",            "example": 531          },          "amount": {            "description": "transactions total amount",            "type": "number",            "format": "float",            "example": 453.7          },          "amountWithoutDeliveryCosts": {            "description": "transactions total amount without delivery costs",            "type": "number",            "format": "float",            "example": 389.5          },          "currency": {            "type": "string",            "example": "USD"          }        },        "type": "object"      },      "CampaignsExecutions": {        "properties": {          "campaignId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "executions": {            "type": "integer"          }        },        "type": "object"      },      "Store": {        "properties": {          "storeId": {            "type": "string",            "format": "uuid"          },          "code": {            "type": "string"          },          "currency": {            "type": "string"          },          "name": {            "type": "string"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "updatedAt": {            "type": "string",            "format": "date-time"          },          "createdBy": {            "type": "string"          },          "updatedBy": {            "type": "string"          }        },        "type": "object"      },      "AuditLog": {        "properties": {          "auditLogId": {            "type": "string"          },          "store": {            "$ref": "#/components/schemas/Store"          },          "eventType": {            "type": "string"          },          "entityType": {            "type": "string"          },          "entityId": {            "type": "string"          },          "username": {            "type": "string"          },          "userId": {            "type": "string"          },          "userType": {            "type": "string"          },          "ip": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "ArchiveFormType": {        "required": [          "beforeDate"        ],        "properties": {          "beforeDate": {            "type": "string",            "format": "date"          }        },        "type": "object"      },      "TotalLogsArchived": {        "properties": {          "totalArchived": {            "type": "integer",            "example": 32          },          "filename": {            "type": "string",            "example": "filename"          }        },        "type": "object"      },      "Condition": {        "required": [          "operator",          "value"        ],        "properties": {          "operator": {            "type": "string",            "enum": [              "eq",              "neq",              "between",              "not_between",              "starts_with",              "ends_with",              "match",              "not_match",              "gt",              "gte",              "lt",              "lte",              "is_after",              "is_before",              "in",              "not_in",              "one_of",              "not_one_of",              "in_value_group",              "not_in_value_group",              "one_of_value_group",              "not_one_of_value_group"            ]          },          "value": {            "oneOf": [              {                "description": "For operators `eq`, `neq`, `starts_with`, `ends_with`, `match`, `not_match` the value can be a string. For `match` and `not_match`, the string must be a valid regular expression.",                "type": "string"              },              {                "description": "For operators `eq`, `neq`, `gt`, `gte`, `lt`, `lte` , the value can be a number.",                "type": "number"              },              {                "description": "For operators `eq`, `neq`, the value can be a bool.",                "type": "boolean"              },              {                "title": "datetime",                "description": "For operators `eq`, `neq` `is_after`, `is_before`, the value can be a datetime.",                "type": "string",                "format": "datetime",                "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,3})?Z$"              },              {                "title": "array",                "type": "array",                "items": {                  "description": "For `in`, `not_in`, `one_of`, `not_one_of` operators, the values can be in array.",                  "oneOf": [                    {                      "type": "number"                    },                    {                      "type": "string"                    },                    {                      "title": "custom attribute",                      "properties": {                        "key": {                          "type": "string"                        },                        "value": {                          "type": "string"                        }                      },                      "type": "object"                    }                  ]                }              },              {                "title": "between",                "description": "For `between`, `not_between` operators, the value is an object with 'from' and 'to'.",                "required": [                  "from",                  "to"                ],                "properties": {                  "from": {                    "oneOf": [                      {                        "type": "number"                      },                      {                        "title": "datetime",                        "type": "string",                        "format": "datetime"                      }                    ]                  },                  "to": {                    "oneOf": [                      {                        "type": "number"                      },                      {                        "title": "datetime",                        "type": "string",                        "format": "datetime"                      }                    ]                  }                },                "type": "object"              },              {                "title": "group of values",                "required": [                  "groupValuesIds"                ],                "properties": {                  "groupValuesIds": {                    "description": "For `in_value_group`, `not_in_value_group` operators, the value is an object with `groupValuesIds` array.",                    "type": "array",                    "items": {                      "type": "string",                      "format": "uuid"                    }                  }                },                "type": "object"              },              {                "title": "one of group of values",                "description": "For `one_of_value_group`, `not_one_of_value_group` operators, the value is an object with labelKey and `groupValuesIds` array.",                "required": [                  "groupValuesIds",                  "labelKey"                ],                "properties": {                  "labelKey": {                    "type": "string"                  },                  "groupValuesIds": {                    "type": "array",                    "items": {                      "type": "string",                      "format": "uuid"                    }                  }                },                "type": "object"              }            ]          }        },        "type": "object",        "additionalProperties": false      },      "NewCondition": {        "title": "New condition",        "required": [          "value",          "condition"        ],        "properties": {          "value": {            "required": [              "field"            ],            "properties": {              "field": {                "type": "string",                "enum": [                  "customer.email",                  "customer.wallets",                  "referrer.wallets",                  "customer.badges",                  "referrer.badges",                  "transaction.items",                  "challenge.trigger",                  "challenge.completions",                  "challenge.milestoneProgresses"                ]              },              "params": {                "description": "The `wallet` object applies only to the `customer.wallets` and `referrer.wallets` fields. The `walletTypeCode` field is used to precisely specify which wallet the condition should apply to. The `field` property defines which wallet field is used to retrieve the value for the condition.",                "type": "object",                "oneOf": [                  {                    "title": "wallet",                    "required": [                      "walletTypeCode",                      "field"                    ],                    "properties": {                      "walletTypeCode": {                        "type": "string",                        "example": "default"                      },                      "field": {                        "type": "string",                        "enum": [                          "activeUnits",                          "spentUnits",                          "earnedUnits",                          "lockedUnits",                          "blockUnits",                          "expiredUnits"                        ]                      }                    },                    "type": "object",                    "additionalProperties": false                  },                  {                    "title": "badge",                    "required": [                      "badgeTypeId"                    ],                    "properties": {                      "badgeTypeId": {                        "type": "string",                        "format": "uuid"                      }                    },                    "type": "object",                    "additionalProperties": false                  },                  {                    "title": "milestoneByRelationId",                    "required": [                      "milestoneRelationId"                    ],                    "properties": {                      "milestoneRelationId": {                        "type": "string"                      }                    },                    "type": "object",                    "additionalProperties": false                  },                  {                    "title": "milestoneById",                    "required": [                      "milestoneId"                    ],                    "properties": {                      "milestoneId": {                        "type": "string",                        "format": "uuid"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                ]              },              "filterCode": {                "description": "In this field you can specify which transaction items filters you want to use in condition",                "type": "string"              },              "aggregation": {                "description": "Available only for transaction.items",                "required": [                  "type"                ],                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "sum",                      "count"                    ]                  },                  "field": {                    "type": "string"                  }                },                "type": "object",                "additionalProperties": false              }            },            "type": "object",            "additionalProperties": false          },          "condition": {            "$ref": "#/components/schemas/Condition"          }        },        "type": "object"      },      "TransactionItemsFilters": {        "required": [          "code"        ],        "properties": {          "code": {            "type": "string"          },          "name": {            "type": "string"          },          "filters": {            "type": "array",            "items": {              "required": [                "value",                "condition"              ],              "properties": {                "value": {                  "required": [                    "field"                  ],                  "properties": {                    "field": {                      "type": "string",                      "enum": [                        "sku",                        "name",                        "qty",                        "grossValue",                        "category",                        "maker",                        "labels"                      ]                    }                  },                  "type": "object",                  "additionalProperties": false                },                "condition": {                  "$ref": "#/components/schemas/Condition"                }              },              "type": "object",              "additionalProperties": false            }          }        },        "type": "object",        "additionalProperties": false      },      "Limit": {        "properties": {          "points": {            "required": [              "value"            ],            "properties": {              "interval": {                "properties": {                  "type": {                    "type": "string",                    "example": "days"                  },                  "value": {                    "type": "integer",                    "deprecated": true                  }                },                "type": "object"              },              "value": {                "type": "number",                "format": "float"              }            },            "type": "object"          },          "pointsPerMember": {            "required": [              "value"            ],            "properties": {              "interval": {                "properties": {                  "type": {                    "type": "string",                    "example": "days"                  },                  "value": {                    "type": "integer",                    "deprecated": true                  }                },                "type": "object"              },              "value": {                "type": "number",                "format": "float"              }            },            "type": "object"          },          "executionsPerMember": {            "required": [              "value"            ],            "properties": {              "interval": {                "properties": {                  "type": {                    "type": "string",                    "example": "days"                  },                  "value": {                    "type": "integer",                    "deprecated": true                  }                },                "type": "object"              },              "value": {                "type": "number",                "format": "float"              }            },            "type": "object"          }        },        "type": "object"      },      "CampaignTranslationsResponse": {        "type": "array",        "items": {          "properties": {            "name": {              "type": "string"            },            "description": {              "type": "string"            },            "id": {              "type": "integer"            },            "locale": {              "type": "string"            }          },          "type": "object"        }      },      "Visibility": {        "description": "Visibility settings for the campaign. Optional field.",        "properties": {          "target": {            "type": "string",            "enum": [              "segment",              "tier",              "none"            ]          },          "tiers": {            "description": "Visibility settings for the campaign. Optional field.",            "type": "array",            "items": {              "type": "string"            }          },          "segments": {            "description": "Visibility settings for the campaign. Optional field.",            "type": "array",            "items": {              "type": "string"            }          }        },        "type": "object",        "additionalProperties": false      },      "CampaignResponse": {        "description": "Campaign",        "properties": {          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "direct",              "referral"            ]          },          "trigger": {            "type": "string",            "enum": [              "transaction",              "return_transaction",              "custom_event",              "internal_event",              "time",              "achievement",              "custom_event_unique_code"            ]          },          "campaignId": {            "type": "string",            "format": "uuid"          },          "activity": {            "properties": {              "startsAt": {                "type": "string",                "format": "date-time"              },              "endsAt": {                "type": "string",                "format": "date-time"              }            },            "type": "object"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "displayOrder": {            "type": "number",            "example": 1          },          "rules": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "conditions": {                  "type": "array",                  "items": {                    "oneOf": [                      {                        "title": "Condition",                        "properties": {                          "operator": {                            "type": "string"                          },                          "data": {                            "type": "array",                            "items": {                              "type": "string"                            }                          },                          "attribute": {                            "type": "string"                          }                        },                        "type": "object"                      },                      {                        "$ref": "#/components/schemas/NewCondition"                      }                    ]                  }                },                "effects": {                  "type": "array",                  "items": {                    "properties": {                      "effect": {                        "type": "string"                      },                      "pointsRule": {                        "type": "string"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          },          "transactionItemsFilters": {            "type": "array",            "items": {              "$ref": "#/components/schemas/TransactionItemsFilters"            }          },          "limits": {            "$ref": "#/components/schemas/Limit"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "translations": {            "$ref": "#/components/schemas/CampaignTranslationsResponse"          },          "limitUsages": {            "properties": {              "points": {                "description": "These fields are not updated immediately after the status changes.",                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer",                        "deprecated": true                      }                    },                    "type": "object"                  }                },                "type": "object"              }            },            "type": "object"          },          "visibility": {            "$ref": "#/components/schemas/Visibility"          },          "customFields": {            "type": "object",            "nullable": true,            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          }        },        "type": "object"      },      "MultiReferralCampaignResponse": {        "properties": {          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "type": {            "type": "string",            "example": "referral"          },          "trigger": {            "type": "string"          },          "campaignId": {            "type": "string",            "format": "uuid"          },          "activity": {            "properties": {              "startsAt": {                "type": "string",                "format": "date-time"              },              "endsAt": {                "type": "string",                "format": "date-time",                "nullable": true              }            },            "type": "object"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "displayOrder": {            "type": "number",            "example": 1          },          "multiLevel": {            "type": "number",            "example": 2          },          "rules": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "conditions": {                  "type": "array",                  "items": {                    "properties": {                      "operator": {                        "type": "string"                      },                      "data": {                        "type": "array",                        "items": {                          "type": "string"                        }                      },                      "attribute": {                        "type": "string"                      }                    },                    "type": "object"                  }                },                "effects": {                  "type": "array",                  "items": {                    "properties": {                      "effect": {                        "type": "string"                      },                      "pointsRule": {                        "type": "string"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          },          "limits": {            "$ref": "#/components/schemas/Limit"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "translations": {            "$ref": "#/components/schemas/CampaignTranslationsResponse"          },          "limitUsages": {            "properties": {              "points": {                "description": "These fields are not updated immediately after the status changes.",                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer",                        "deprecated": true                      }                    },                    "type": "object"                  }                },                "type": "object"              }            },            "type": "object"          },          "visibility": {            "$ref": "#/components/schemas/Visibility"          },          "customFields": {            "type": "object",            "nullable": true,            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          }        },        "type": "object"      },      "UniqueCodeCampaignResponse": {        "properties": {          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "type": {            "type": "string",            "example": "referral"          },          "trigger": {            "type": "string",            "example": "custom_event_unique_code"          },          "campaignId": {            "type": "string",            "format": "uuid"          },          "activity": {            "properties": {              "startsAt": {                "type": "string",                "format": "date-time"              },              "endsAt": {                "type": "string",                "format": "date-time",                "nullable": true              }            },            "type": "object"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "displayOrder": {            "type": "number",            "example": 1          },          "rules": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "conditions": {                  "type": "array",                  "items": {                    "properties": {                      "operator": {                        "type": "string"                      },                      "data": {                        "type": "array",                        "items": {                          "type": "string"                        }                      },                      "attribute": {                        "type": "string"                      }                    },                    "type": "object"                  }                },                "effects": {                  "type": "array",                  "items": {                    "properties": {                      "effect": {                        "type": "string"                      },                      "pointsRule": {                        "type": "string"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          },          "limits": {            "$ref": "#/components/schemas/Limit"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "translations": {            "$ref": "#/components/schemas/CampaignTranslationsResponse"          },          "eventCodeAttribute": {            "type": "string",            "example": "qrCode"          },          "codeGenerator": {            "properties": {              "characterSet": {                "type": "string",                "example": "alphanum"              },              "length": {                "type": "integer",                "example": 12              },              "prefix": {                "type": "string",                "example": "Code"              }            },            "type": "object"          },          "limitUsages": {            "properties": {              "points": {                "description": "These fields are not updated immediately after the status changes.",                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer",                        "deprecated": true                      }                    },                    "type": "object"                  }                },                "type": "object"              }            },            "type": "object"          },          "visibility": {            "$ref": "#/components/schemas/Visibility"          },          "customFields": {            "type": "object",            "nullable": true,            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          }        },        "type": "object"      },      "Audience": {        "description": "Audience settings for the campaign. Optional field.",        "properties": {          "target": {            "type": "string",            "enum": [              "segment",              "tier"            ]          },          "tiers": {            "type": "array",            "items": {              "type": "string"            }          },          "segments": {            "type": "array",            "items": {              "type": "string"            }          }        },        "type": "object",        "nullable": true      },      "TriggerStrategy": {        "properties": {          "type": {            "type": "string",            "enum": [              "birthday",              "registration_anniversary",              "daily",              "weekly",              "monthly"            ]          },          "executionSchedule": {            "description": "Required for `weekly` and `monthly` type of campaign.",            "properties": {              "dayOfWeek": {                "description": "List of days when campaign should be executed. 0 for Sunday, 6 for Saturday.",                "type": "array",                "items": {                  "type": "integer",                  "enum": [                    0,                    1,                    2,                    3,                    4,                    5,                    6                  ]                },                "nullable": true              },              "dayOfMonth": {                "description": "List of month days when campaign should be executed. 'L' for the last day of the month.",                "type": "array",                "items": {                  "oneOf": [                    {                      "type": "integer",                      "enum": [                        1,                        2,                        3,                        4,                        5,                        6,                        7,                        8,                        9,                        10,                        11,                        12,                        13,                        14,                        15,                        16,                        17,                        18,                        19,                        20,                        21,                        22,                        23,                        24,                        25,                        26,                        27,                        28,                        29,                        30,                        31                      ]                    },                    {                      "type": "string",                      "enum": [                        "L"                      ]                    }                  ]                },                "nullable": true              }            },            "type": "object",            "nullable": true          }        },        "type": "object"      },      "TimeTriggerCampaignResponse": {        "properties": {          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "type": {            "type": "string",            "example": "direct"          },          "trigger": {            "type": "string",            "example": "time"          },          "campaignId": {            "type": "string",            "format": "uuid"          },          "activity": {            "properties": {              "startsAt": {                "type": "string",                "format": "date-time"              },              "endsAt": {                "type": "string",                "format": "date-time",                "nullable": true              }            },            "type": "object"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "displayOrder": {            "type": "number",            "example": 1          },          "multiLevel": {            "type": "number",            "example": 2          },          "rules": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "conditions": {                  "type": "array",                  "items": {                    "properties": {                      "operator": {                        "type": "string"                      },                      "data": {                        "type": "array",                        "items": {                          "type": "string"                        }                      },                      "attribute": {                        "type": "string"                      }                    },                    "type": "object"                  }                },                "effects": {                  "type": "array",                  "items": {                    "properties": {                      "effect": {                        "type": "string"                      },                      "pointsRule": {                        "type": "string"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          },          "limits": {            "$ref": "#/components/schemas/Limit"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "translations": {            "$ref": "#/components/schemas/CampaignTranslationsResponse"          },          "limitUsages": {            "properties": {              "points": {                "description": "These fields are not updated immediately after the status changes.",                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer",                        "deprecated": true                      }                    },                    "type": "object"                  }                },                "type": "object"              }            },            "type": "object"          },          "visibility": {            "$ref": "#/components/schemas/Visibility"          },          "audience": {            "$ref": "#/components/schemas/Audience"          },          "triggerStrategy": {            "$ref": "#/components/schemas/TriggerStrategy"          },          "customFields": {            "type": "object",            "nullable": true,            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          }        },        "type": "object"      },      "LeaderboardResponse": {        "properties": {          "metric": {            "required": [              "type",              "walletTypeCode"            ],            "properties": {              "type": {                "type": "string",                "enum": [                  "earned_units_cumulative"                ]              },              "walletTypeCode": {                "type": "string"              }            },            "type": "object"          },          "cycles": {            "required": [              "type"            ],            "properties": {              "type": {                "type": "string",                "enum": [                  "end_of_the_month"                ]              },              "code": {                "type": "string"              },              "recalculatedAt": {                "type": "string",                "format": "datetime"              }            },            "type": "object"          },          "groupingField": {            "description": "Present only for grouped leaderboards. `groupsCount` reflects the number of distinct group values in the running iteration (0 when no iteration is running). `groupsLimit` is the per-environment hard cap.\n",            "required": [              "type",              "key",              "groupsCount",              "groupsLimit"            ],            "properties": {              "type": {                "type": "string",                "enum": [                  "address_field",                  "custom_attribute"                ]              },              "key": {                "type": "string",                "example": "city"              },              "groupsCount": {                "type": "integer",                "minimum": 0,                "example": 12              },              "groupsLimit": {                "type": "integer",                "minimum": 1,                "example": 500              }            },            "type": "object"          }        },        "type": "object"      },      "LeaderboardCampaignResponse": {        "description": "Campaign",        "properties": {          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "direct",              "referral"            ]          },          "trigger": {            "type": "string",            "enum": [              "leaderboard"            ]          },          "campaignId": {            "type": "string",            "format": "uuid"          },          "activity": {            "properties": {              "startsAt": {                "type": "string",                "format": "date-time"              },              "endsAt": {                "type": "string",                "format": "date-time"              }            },            "type": "object"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "displayOrder": {            "type": "number",            "example": 1          },          "rules": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "conditions": {                  "type": "array",                  "items": {                    "oneOf": [                      {                        "title": "Condition",                        "properties": {                          "operator": {                            "type": "string"                          },                          "data": {                            "type": "array",                            "items": {                              "type": "string"                            }                          },                          "attribute": {                            "type": "string"                          }                        },                        "type": "object"                      },                      {                        "$ref": "#/components/schemas/NewCondition"                      }                    ]                  }                },                "effects": {                  "type": "array",                  "items": {                    "properties": {                      "effect": {                        "type": "string"                      },                      "pointsRule": {                        "type": "string"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          },          "limits": {            "$ref": "#/components/schemas/Limit"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "translations": {            "$ref": "#/components/schemas/CampaignTranslationsResponse"          },          "limitUsages": {            "properties": {              "points": {                "description": "These fields are not updated immediately after the status changes.",                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer",                        "deprecated": true                      }                    },                    "type": "object"                  }                },                "type": "object"              }            },            "type": "object"          },          "visibility": {            "$ref": "#/components/schemas/Visibility"          },          "leaderboard": {            "$ref": "#/components/schemas/LeaderboardResponse"          },          "customFields": {            "type": "object",            "nullable": true,            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          }        },        "type": "object"      },      "Period": {        "properties": {          "type": {            "type": "string"          },          "consecutive": {            "type": "integer"          },          "value": {            "type": "integer"          }        },        "type": "object"      },      "CompleteRule": {        "properties": {          "periodGoal": {            "oneOf": [              {                "type": "string"              },              {                "type": "number"              }            ]          },          "period": {            "$ref": "#/components/schemas/Period"          },          "uniqueAttribute": {            "type": "string"          }        },        "type": "object"      },      "Aggregation": {        "properties": {          "type": {            "type": "string"          },          "rule": {            "type": "string"          }        },        "type": "object"      },      "LimitInterval": {        "properties": {          "type": {            "type": "string"          },          "value": {            "type": "integer"          }        },        "type": "object"      },      "ChallengeLimit": {        "properties": {          "interval": {            "$ref": "#/components/schemas/LimitInterval"          },          "value": {            "type": "integer"          }        },        "type": "object"      },      "Milestone": {        "properties": {          "translations": {            "properties": {              "en": {                "properties": {                  "name": {                    "type": "string"                  },                  "description": {                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "milestoneId": {            "type": "string"          },          "completeRule": {            "$ref": "#/components/schemas/CompleteRule"          },          "aggregation": {            "$ref": "#/components/schemas/Aggregation"          },          "uniqueReferee": {            "type": "boolean"          },          "event": {            "type": "string"          },          "trigger": {            "type": "string"          },          "type": {            "type": "string"          },          "conditions": {            "type": "array",            "items": {              "type": "object"            }          },          "limit": {            "$ref": "#/components/schemas/ChallengeLimit"          }        },        "type": "object"      },      "AchievementActivity": {        "properties": {          "data": {            "oneOf": [              {                "type": "string"              },              {                "properties": {                  "from": {                    "type": "string"                  },                  "to": {                    "type": "string"                  }                },                "type": "object"              },              {                "type": "array",                "items": {                  "type": "string"                }              }            ]          },          "operator": {            "type": "string",            "example": "is_greater"          }        },        "type": "object"      },      "ChallengeCampaignResponse": {        "description": "Challenge Campaign",        "properties": {          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "direct",              "referral"            ]          },          "trigger": {            "type": "string",            "enum": [              "challenge"            ]          },          "campaignId": {            "type": "string",            "format": "uuid"          },          "activity": {            "properties": {              "startsAt": {                "type": "string",                "format": "date-time"              },              "endsAt": {                "type": "string",                "format": "date-time"              }            },            "type": "object"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "displayOrder": {            "type": "number",            "example": 1          },          "rules": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "conditions": {                  "type": "array",                  "items": {                    "oneOf": [                      {                        "title": "Condition",                        "properties": {                          "operator": {                            "type": "string"                          },                          "data": {                            "type": "array",                            "items": {                              "type": "string"                            }                          },                          "attribute": {                            "type": "string"                          }                        },                        "type": "object"                      },                      {                        "$ref": "#/components/schemas/NewCondition"                      }                    ]                  }                },                "effects": {                  "type": "array",                  "items": {                    "properties": {                      "effect": {                        "type": "string"                      },                      "pointsRule": {                        "type": "string"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          },          "limits": {            "$ref": "#/components/schemas/Limit"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "translations": {            "$ref": "#/components/schemas/CampaignTranslationsResponse"          },          "limitUsages": {            "properties": {              "points": {                "description": "These fields are not updated immediately after the status changes.",                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer"                      }                    },                    "type": "object"                  }                },                "type": "object"              }            },            "type": "object"          },          "visibility": {            "$ref": "#/components/schemas/Visibility"          },          "milestones": {            "type": "array",            "items": {              "$ref": "#/components/schemas/Milestone"            }          },          "challengeAvailability": {            "$ref": "#/components/schemas/AchievementActivity"          },          "challengeLimit": {            "$ref": "#/components/schemas/ChallengeLimit"          },          "customFields": {            "type": "object",            "nullable": true,            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          }        },        "type": "object"      },      "Rule": {        "type": "array",        "items": {          "required": [            "effects"          ],          "properties": {            "name": {              "type": "string"            },            "description": {              "type": "string"            },            "target": {              "description": "Allowed only when the campaign type is `referral`. Specifies which member the rule applies to: `self` (the referrer) or `referral` (the referred person).",              "type": "string",              "enum": [                "self",                "referrer"              ]            },            "effects": {              "type": "array",              "items": {                "required": [                  "effect"                ],                "properties": {                  "effect": {                    "type": "string",                    "enum": [                      "give_points",                      "give_reward",                      "deduct_unit",                      "assign_member_custom_attribute",                      "remove_member_custom_attribute",                      "grant_badge",                      "cancel_transaction_effects"                    ]                  },                  "pointsRule": {                    "description": "Only allowed for `give_points` and `deduct_unit` effect"                  },                  "walletCode": {                    "description": "Only allowed for `give_points` and `deduct_unit` effect",                    "type": "string"                  },                  "unitsLockRule": {                    "description": "The field allows you to set a custom pending for units given by campaign effects. Only allowed for `give_points` effect",                    "required": [                      "lockStrategy"                    ],                    "properties": {                      "lockStrategy": {                        "type": "string",                        "enum": [                          "expression",                          "from_wallet",                          "no_pending"                        ]                      },                      "expression": {                        "description": "This field is required for `lockStrategy = expression`",                        "type": "string"                      }                    },                    "type": "object",                    "additionalProperties": false                  },                  "unitsExpirationRule": {                    "description": "The field allows you to set a custom expiration for units given by campaign effects. Only allowed for `give_points` effect",                    "required": [                      "expirationStrategy"                    ],                    "properties": {                      "expirationStrategy": {                        "type": "string",                        "enum": [                          "expression",                          "from_wallet",                          "never_expires"                        ]                      },                      "expression": {                        "description": "This field is required for `lockStrategy = expression`",                        "type": "string"                      }                    },                    "type": "object",                    "additionalProperties": false                  },                  "rewardId": {                    "description": "Only allowed for `give_reward` effect",                    "type": "string",                    "format": "uuid"                  },                  "couponValueRule": {                    "description": "Only allowed for `give_reward` effect",                    "type": "string"                  },                  "customAttributeKey": {                    "description": "Only allowed for `assign_member_custom_attribute` effect",                    "type": "string"                  },                  "customAttributeValueRule": {                    "description": "Only allowed for `assign_member_custom_attribute` effect",                    "type": "string"                  },                  "badgeSystemCode": {                    "description": "Only allowed for `grant_badge` effect",                    "type": "string"                  }                },                "type": "object",                "additionalProperties": false              }            },            "conditions": {              "type": "array",              "items": {                "oneOf": [                  {                    "title": "Condition",                    "required": [                      "operator",                      "data"                    ],                    "properties": {                      "attribute": {                        "type": "string"                      },                      "operator": {                        "type": "string",                        "enum": [                          "expression",                          "is_equal",                          "has_at_least_one_label",                          "contains",                          "not_contains",                          "is_not_equal",                          "is_not_one_of",                          "is_one_of",                          "matches_regex",                          "is_greater",                          "is_greater_or_equal",                          "is_less",                          "is_less_or_equal",                          "ends_with",                          "starts_with",                          "is_after",                          "is_before",                          "is_between",                          "is_day_of_week",                          "is_month_of_year",                          "is_not_between",                          "is_day_of_month",                          "is_time_between",                          "is_one_of_group_values",                          "is_not_one_of_group_values",                          "not_contains_one_of",                          "contains_one_of"                        ]                      },                      "data": {}                    },                    "type": "object"                  },                  {                    "$ref": "#/components/schemas/NewCondition"                  }                ]              }            }          },          "type": "object"        }      },      "CampaignTranslations": {        "description": "This field is used to save the name and description in the language of your choice",        "required": [          "en"        ],        "properties": {          "en": {            "required": [              "name"            ],            "properties": {              "name": {                "type": "string"              },              "description": {                "type": "string"              }            },            "type": "object"          },          "pl": {            "required": [              "name"            ],            "properties": {              "name": {                "type": "string"              },              "description": {                "type": "string"              }            },            "type": "object"          }        },        "type": "object"      },      "AchievementCampaignRequestBody": {        "title": "AchievementCampaign",        "required": [          "campaign"        ],        "properties": {          "campaign": {            "required": [              "type",              "trigger",              "translations",              "activity",              "rules",              "achievementId"            ],            "properties": {              "triggerStrategy": {                "$ref": "#/components/schemas/TriggerStrategy"              },              "visibility": {                "$ref": "#/components/schemas/Visibility"              },              "audience": {                "$ref": "#/components/schemas/Audience"              },              "rules": {                "$ref": "#/components/schemas/Rule"              },              "limits": {                "$ref": "#/components/schemas/Limit"              },              "type": {                "type": "string",                "enum": [                  "direct",                  "referral"                ]              },              "trigger": {                "type": "string",                "example": "achievement"              },              "activity": {                "required": [                  "startsAt"                ],                "properties": {                  "startsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00"                  },                  "endsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00",                    "nullable": true                  }                },                "type": "object"              },              "displayOrder": {                "type": "number",                "example": 1              },              "active": {                "type": "boolean"              },              "labels": {                "type": "array",                "items": {                  "required": [                    "key",                    "value"                  ],                  "properties": {                    "key": {                      "type": "string"                    },                    "value": {                      "type": "string"                    }                  },                  "type": "object"                }              },              "translations": {                "$ref": "#/components/schemas/CampaignTranslations"              },              "achievementId": {                "type": "string",                "format": "uuid",                "deprecated": true              },              "customFields": {                "type": "object",                "nullable": true,                "description": "Custom-field values grouped by group key. PUT semantics: omitted or null → existing values kept (no-op); empty object {} → all values cleared (validation still runs); non-empty object → wholesale entity replace (every group not in the payload is also wiped). Requires the CUSTOM_FIELD_CAMPAIGN feature flag; when disabled the field is silently ignored. See the endpoint description for full semantics.",                "additionalProperties": {                  "type": "object",                  "additionalProperties": true                }              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PutUniqueCodeCampaignRequestBody": {        "title": "RedemptionCampaign",        "required": [          "campaign"        ],        "properties": {          "campaign": {            "required": [              "type",              "trigger",              "translations",              "activity",              "eventCodeAttribute",              "rules"            ],            "properties": {              "type": {                "type": "string",                "example": "referral"              },              "trigger": {                "type": "string",                "example": "custom_event_unique_code"              },              "activity": {                "required": [                  "startsAt"                ],                "properties": {                  "startsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00"                  },                  "endsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00",                    "nullable": true                  }                },                "type": "object"              },              "displayOrder": {                "type": "number",                "example": 1              },              "active": {                "type": "boolean"              },              "labels": {                "type": "array",                "items": {                  "properties": {                    "key": {                      "type": "string"                    },                    "value": {                      "type": "string"                    }                  },                  "type": "object"                }              },              "translations": {                "$ref": "#/components/schemas/CampaignTranslations"              },              "rules": {                "$ref": "#/components/schemas/Rule"              },              "limits": {                "$ref": "#/components/schemas/Limit"              },              "visibility": {                "$ref": "#/components/schemas/Visibility"              },              "audience": {                "$ref": "#/components/schemas/Audience"              },              "event": {                "type": "string"              },              "eventCodeAttribute": {                "type": "string",                "example": "qrCode"              },              "codeGenerator": {                "description": "Required for generated codes.",                "required": [                  "characterSet",                  "length"                ],                "properties": {                  "characterSet": {                    "type": "string",                    "example": "alphanum"                  },                  "length": {                    "type": "integer",                    "example": 12                  },                  "prefix": {                    "type": "string",                    "example": "Code"                  }                },                "type": "object",                "additionalProperties": false              },              "isExternalCodeSource": {                "type": "boolean"              },              "customFields": {                "type": "object",                "nullable": true,                "description": "Custom-field values grouped by group key. PUT semantics: omitted or null → existing values kept (no-op); empty object {} → all values cleared (validation still runs); non-empty object → wholesale entity replace (every group not in the payload is also wiped). Requires the CUSTOM_FIELD_CAMPAIGN feature flag; when disabled the field is silently ignored. See the endpoint description for full semantics.",                "additionalProperties": {                  "type": "object",                  "additionalProperties": true                }              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "CampaignRequestBody": {        "title": "Campaign",        "required": [          "campaign"        ],        "properties": {          "campaign": {            "required": [              "type",              "trigger",              "translations",              "activity",              "rules"            ],            "properties": {              "triggerStrategy": {                "$ref": "#/components/schemas/TriggerStrategy"              },              "visibility": {                "$ref": "#/components/schemas/Visibility"              },              "audience": {                "$ref": "#/components/schemas/Audience"              },              "rules": {                "$ref": "#/components/schemas/Rule"              },              "transactionItemsFilters": {                "description": "Field that you can use to filter transaction items, which you can then use in the condition by providing the code, only allowed for transaction trigger",                "type": "array",                "items": {                  "$ref": "#/components/schemas/TransactionItemsFilters"                }              },              "limits": {                "$ref": "#/components/schemas/Limit"              },              "type": {                "type": "string",                "enum": [                  "direct",                  "referral"                ]              },              "trigger": {                "type": "string",                "enum": [                  "transaction",                  "return_transaction",                  "custom_event",                  "internal_event",                  "time",                  "achievement",                  "custom_event_unique_code"                ]              },              "event": {                "description": "Allowed only for campaign with trigger event",                "type": "string"              },              "activity": {                "required": [                  "startsAt"                ],                "properties": {                  "startsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00"                  },                  "endsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00",                    "nullable": true                  }                },                "type": "object"              },              "displayOrder": {                "type": "number",                "example": 1              },              "active": {                "type": "boolean"              },              "labels": {                "type": "array",                "items": {                  "required": [                    "key",                    "value"                  ],                  "properties": {                    "key": {                      "type": "string"                    },                    "value": {                      "type": "string"                    }                  },                  "type": "object"                }              },              "memberFilter": {                "description": "Only allowed for time trigger",                "properties": {                  "strategy": {}                },                "type": "object"              },              "translations": {                "$ref": "#/components/schemas/CampaignTranslations"              },              "customFields": {                "type": "object",                "nullable": true,                "description": "Custom-field values grouped by group key. PUT semantics: omitted or null → existing values kept (no-op); empty object {} → all values cleared (validation still runs); non-empty object → wholesale entity replace (every group not in the payload is also wiped). Requires the CUSTOM_FIELD_CAMPAIGN feature flag; when disabled the field is silently ignored. See the endpoint description for full semantics.",                "additionalProperties": {                  "type": "object",                  "additionalProperties": true                }              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "MultiReferralCampaignRequestBody": {        "title": "MultiReferralCampaign",        "description": "When campaign is referral type, you can specify multi level",        "required": [          "campaign"        ],        "properties": {          "campaign": {            "required": [              "multiLevel",              "type",              "trigger",              "translations",              "activity",              "rules"            ],            "properties": {              "triggerStrategy": {                "$ref": "#/components/schemas/TriggerStrategy"              },              "visibility": {                "$ref": "#/components/schemas/Visibility"              },              "audience": {                "$ref": "#/components/schemas/Audience"              },              "rules": {                "$ref": "#/components/schemas/Rule"              },              "transactionItemsFilters": {                "description": "Field that you can use to filter transaction items, which you can then use in the condition by providing the code, only allowed for transaction trigger",                "type": "array",                "items": {                  "$ref": "#/components/schemas/TransactionItemsFilters"                }              },              "limits": {                "$ref": "#/components/schemas/Limit"              },              "type": {                "type": "string",                "enum": [                  "direct",                  "referral"                ]              },              "multiLevel": {                "type": "number",                "example": 2              },              "trigger": {                "type": "string",                "enum": [                  "transaction",                  "return_transaction",                  "custom_event",                  "internal_event",                  "time",                  "achievement",                  "custom_event_unique_code"                ]              },              "event": {                "type": "string"              },              "activity": {                "required": [                  "startsAt"                ],                "properties": {                  "startsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00"                  },                  "endsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00",                    "nullable": true                  }                },                "type": "object"              },              "displayOrder": {                "type": "number",                "example": 1              },              "active": {                "type": "boolean"              },              "labels": {                "type": "array",                "items": {                  "required": [                    "key",                    "value"                  ],                  "properties": {                    "key": {                      "type": "string"                    },                    "value": {                      "type": "string"                    }                  },                  "type": "object"                }              },              "memberFilter": {                "description": "Only allowed for time trigger",                "properties": {                  "strategy": {}                },                "type": "object"              },              "translations": {                "$ref": "#/components/schemas/CampaignTranslations"              },              "customFields": {                "type": "object",                "nullable": true,                "description": "Custom-field values grouped by group key. PUT semantics: omitted or null → existing values kept (no-op); empty object {} → all values cleared (validation still runs); non-empty object → wholesale entity replace (every group not in the payload is also wiped). Requires the CUSTOM_FIELD_CAMPAIGN feature flag; when disabled the field is silently ignored. See the endpoint description for full semantics.",                "additionalProperties": {                  "type": "object",                  "additionalProperties": true                }              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "Leaderboard": {        "properties": {          "metric": {            "required": [              "type",              "walletTypeCode"            ],            "properties": {              "type": {                "type": "string",                "enum": [                  "earned_units_cumulative"                ]              },              "walletTypeCode": {                "type": "string"              }            },            "type": "object"          },          "cycles": {            "description": "Optional cycle definition. Without `cycles` the leaderboard is timeless (a single open-ended iteration). Only one cycle is supported.\n",            "type": "array",            "maxItems": 1,            "items": {              "required": [                "type"              ],              "properties": {                "type": {                  "type": "string",                  "enum": [                    "end_of_the_month"                  ]                },                "code": {                  "description": "Caller-defined cycle code returned alongside leaderboard rankings. Optional — when omitted the server applies a default code.\n",                  "type": "string",                  "example": "MONTHLY"                }              },              "type": "object"            }          },          "groupingField": {            "description": "Splits the leaderboard into sub-rankings per distinct group value. Members without a resolvable group value are excluded from the grouped leaderboard. The grouping configuration is set at campaign creation and is read-only afterwards. Submitting a `groupingField` on update (PUT) that differs from the stored one — including adding or removing it — is rejected with HTTP 400 to keep historical iterations consistent. An identical `groupingField` (or none) is accepted.\n",            "required": [              "type",              "key"            ],            "properties": {              "type": {                "type": "string",                "description": "`address_field` groups by an address sub-field on the member profile; `custom_attribute` groups by a member custom attribute key.\n",                "enum": [                  "address_field",                  "custom_attribute"                ]              },              "key": {                "type": "string",                "description": "For `address_field`, one of: `city`, `country`, `province`, `postal`. For `custom_attribute`, the custom attribute key on the member profile.\n",                "example": "city"              }            },            "type": "object"          }        },        "type": "object"      },      "LeaderboardCampaignRequestBody": {        "title": "LeaderboardCampaign",        "required": [          "campaign"        ],        "properties": {          "campaign": {            "required": [              "type",              "trigger",              "translations",              "activity",              "leaderboard"            ],            "properties": {              "triggerStrategy": {                "$ref": "#/components/schemas/TriggerStrategy"              },              "visibility": {                "$ref": "#/components/schemas/Visibility"              },              "audience": {                "$ref": "#/components/schemas/Audience"              },              "rules": {                "$ref": "#/components/schemas/Rule"              },              "type": {                "type": "string",                "enum": [                  "direct",                  "referral"                ]              },              "trigger": {                "type": "string",                "example": "leaderboard"              },              "activity": {                "required": [                  "startsAt"                ],                "properties": {                  "startsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00"                  },                  "endsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00",                    "nullable": true                  }                },                "type": "object"              },              "displayOrder": {                "type": "number",                "example": 1              },              "active": {                "type": "boolean"              },              "labels": {                "type": "array",                "items": {                  "required": [                    "key",                    "value"                  ],                  "properties": {                    "key": {                      "type": "string"                    },                    "value": {                      "type": "string"                    }                  },                  "type": "object"                }              },              "translations": {                "$ref": "#/components/schemas/CampaignTranslations"              },              "leaderboard": {                "$ref": "#/components/schemas/Leaderboard"              },              "customFields": {                "type": "object",                "nullable": true,                "description": "Custom-field values grouped by group key. PUT semantics: omitted or null → existing values kept (no-op); empty object {} → all values cleared (validation still runs); non-empty object → wholesale entity replace (every group not in the payload is also wiped). Requires the CUSTOM_FIELD_CAMPAIGN feature flag; when disabled the field is silently ignored. See the endpoint description for full semantics.",                "additionalProperties": {                  "type": "object",                  "additionalProperties": true                }              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "ChallengeCampaignRequestBody": {        "title": "ChallengeCampaign",        "required": [          "campaign"        ],        "properties": {          "campaign": {            "required": [              "type",              "trigger",              "translations",              "activity",              "rules",              "milestones"            ],            "properties": {              "triggerStrategy": {                "$ref": "#/components/schemas/TriggerStrategy"              },              "visibility": {                "$ref": "#/components/schemas/Visibility"              },              "audience": {                "$ref": "#/components/schemas/Audience"              },              "rules": {                "$ref": "#/components/schemas/Rule"              },              "limits": {                "$ref": "#/components/schemas/Limit"              },              "type": {                "type": "string",                "enum": [                  "direct",                  "referral"                ]              },              "trigger": {                "type": "string",                "example": "challenge"              },              "activity": {                "required": [                  "startsAt"                ],                "properties": {                  "startsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00"                  },                  "endsAt": {                    "type": "string",                    "example": "2024-09-17 00:00+02:00",                    "nullable": true                  }                },                "type": "object"              },              "displayOrder": {                "type": "number",                "example": 1              },              "active": {                "type": "boolean"              },              "labels": {                "type": "array",                "items": {                  "required": [                    "key",                    "value"                  ],                  "properties": {                    "key": {                      "type": "string"                    },                    "value": {                      "type": "string"                    }                  },                  "type": "object"                }              },              "translations": {                "$ref": "#/components/schemas/CampaignTranslations"              },              "challengeLimit": {                "$ref": "#/components/schemas/ChallengeLimit"              },              "challengeAvailability": {                "$ref": "#/components/schemas/AchievementActivity"              },              "milestones": {                "type": "array",                "items": {                  "$ref": "#/components/schemas/Milestone"                }              },              "customFields": {                "type": "object",                "nullable": true,                "description": "Custom-field values grouped by group key. PUT semantics: omitted or null → existing values kept (no-op); empty object {} → all values cleared (validation still runs); non-empty object → wholesale entity replace (every group not in the payload is also wiped). Requires the CUSTOM_FIELD_CAMPAIGN feature flag; when disabled the field is silently ignored. See the endpoint description for full semantics.",                "additionalProperties": {                  "type": "object",                  "additionalProperties": true                }              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PartialUpdateCampaign": {        "properties": {          "campaign": {            "properties": {              "displayOrder": {                "type": "integer"              },              "active": {                "type": "boolean"              }            },            "type": "object"          }        },        "type": "object"      },      "Channel": {        "properties": {          "channelId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "identifier": {            "type": "string"          },          "description": {            "type": "string"          },          "currency": {            "type": "string"          }        },        "type": "object"      },      "EditChannelFormType": {        "required": [          "name",          "identifier"        ],        "properties": {          "name": {            "type": "string"          },          "identifier": {            "type": "string"          },          "description": {            "type": "string"          }        },        "type": "object"      },      "CreateChannelFormType": {        "required": [          "name",          "identifier"        ],        "properties": {          "name": {            "type": "string"          },          "identifier": {            "type": "string"          },          "description": {            "type": "string"          }        },        "type": "object"      },      "UserLabelFormType": {        "required": [          "key",          "value",          "key",          "value"        ],        "properties": {          "key": {            "type": "string"          },          "value": {            "type": "string"          }        },        "type": "object"      },      "EditCustomAttributeFormType": {        "required": [          "customAttributes"        ],        "properties": {          "customAttributes": {            "type": "array",            "items": {              "$ref": "#/components/schemas/UserLabelFormType"            }          }        },        "type": "object"      },      "DeleteCustomAttributeFormType": {        "required": [          "customAttributes"        ],        "properties": {          "customAttributes": {            "type": "array",            "items": {              "$ref": "#/components/schemas/UserLabelFormType"            }          }        },        "type": "object"      },      "Schema": {        "type": "object"      },      "CustomEventSchema": {        "properties": {          "eventType": {            "type": "string"          },          "name": {            "type": "string"          },          "schema": {            "$ref": "#/components/schemas/Schema"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "FieldSchemaFormType": {        "required": [          "type",          "description",          "name"        ],        "properties": {          "type": {            "type": "string",            "enum": [              "text",              "number",              "datetime",              "boolean",              "object",              "collection"            ]          },          "description": {            "type": "string"          },          "name": {            "type": "string"          }        },        "type": "object"      },      "SchemaFormType": {        "required": [          "fields"        ],        "properties": {          "fields": {            "type": "array",            "items": {              "$ref": "#/components/schemas/FieldSchemaFormType"            }          }        },        "type": "object"      },      "GeneralOverviewHeader": {        "properties": {          "registeredMembers": {            "type": "integer"          },          "activeMembers": {            "type": "integer"          },          "revenue": {            "type": "number",            "format": "float"          },          "avgSpending": {            "type": "number",            "format": "float"          },          "transactions": {            "type": "integer"          },          "avgTransactionValue": {            "type": "number",            "format": "float"          },          "avgNumberOfTransactions": {            "type": "number",            "format": "float"          },          "returnTransactions": {            "type": "integer"          },          "totalReturns": {            "type": "number",            "format": "float"          },          "avgReturnValue": {            "type": "number",            "format": "float"          },          "avgNumberOfReturnTransactions": {            "type": "number",            "format": "float"          }        },        "type": "object"      },      "GeneralOverview": {        "properties": {          "intervalStartDate": {            "type": "string",            "format": "date-time"          },          "intervalEndDate": {            "type": "string",            "format": "date-time"          },          "header": {            "$ref": "#/components/schemas/GeneralOverviewHeader"          },          "data": {            "type": "object",            "additionalProperties": true          },          "comparativePeriodData": {            "type": "object",            "deprecated": true,            "additionalProperties": true          }        },        "type": "object"      },      "UnitsOverviewHeader": {        "properties": {          "unitsIssued": {            "type": "number",            "format": "float"          },          "unitsSpent": {            "type": "number",            "format": "float"          },          "unitsExpired": {            "type": "number",            "format": "float"          },          "unitsPending": {            "type": "number",            "format": "float"          },          "unitsActive": {            "type": "number",            "format": "float"          },          "redemptionRate": {            "type": "number",            "format": "float"          },          "breakageRate": {            "type": "number",            "format": "float"          }        },        "type": "object"      },      "UnitsOverview": {        "properties": {          "intervalStartDate": {            "type": "string",            "format": "date-time"          },          "intervalEndDate": {            "type": "string",            "format": "date-time"          },          "walletTypeCode": {            "type": "string"          },          "header": {            "$ref": "#/components/schemas/UnitsOverviewHeader"          },          "data": {            "type": "object",            "additionalProperties": true          }        },        "type": "object"      },      "LocaleCode": {        "properties": {          "code": {            "type": "string"          }        },        "type": "object"      },      "TranslationEntry": {        "properties": {          "languageCode": {            "type": "string"          },          "key": {            "type": "string"          },          "value": {            "type": "string"          },          "updatedAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "Language": {        "properties": {          "localeCode": {            "$ref": "#/components/schemas/LocaleCode"          },          "name": {            "type": "string"          },          "order": {            "type": "integer"          },          "adminDefault": {            "type": "boolean"          },          "apiDefault": {            "type": "boolean"          },          "translations": {            "type": "array",            "items": {              "$ref": "#/components/schemas/TranslationEntry"            }          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "updatedAt": {            "type": "string",            "format": "date-time"          },          "createdBy": {            "type": "string"          },          "updatedBy": {            "type": "string"          }        },        "type": "object"      },      "LanguageDataFormType": {        "required": [          "name",          "apiDefault",          "adminDefault",          "order"        ],        "properties": {          "name": {            "type": "string"          },          "code": {            "type": "string"          },          "apiDefault": {            "type": "boolean"          },          "adminDefault": {            "type": "boolean"          },          "order": {            "type": "integer"          }        },        "type": "object"      },      "LanguageData": {        "properties": {          "code": {            "type": "string"          },          "name": {            "type": "string"          },          "adminDefault": {            "type": "boolean"          },          "apiDefault": {            "type": "boolean"          },          "order": {            "type": "integer"          },          "updatedAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "CreateLanguageFormType": {        "required": [          "name",          "code",          "apiDefault",          "adminDefault",          "order"        ],        "properties": {          "name": {            "type": "string"          },          "code": {            "type": "string"          },          "apiDefault": {            "type": "boolean"          },          "adminDefault": {            "type": "boolean"          },          "order": {            "type": "integer"          }        },        "type": "object"      },      "TranslationEntryDataFormType": {        "required": [          "value"        ],        "properties": {          "languageCode": {            "type": "string"          },          "key": {            "type": "string"          },          "value": {            "type": "string"          }        },        "type": "object"      },      "RedeemCouponFormType": {        "required": [          "couponCode"        ],        "properties": {          "couponCode": {            "type": "string"          }        },        "type": "object"      },      "CouponUsageResponse": {        "properties": {          "code": {            "type": "string"          },          "used": {            "type": "boolean"          },          "customerId": {            "type": "string",            "format": "uuid"          }        },        "type": "object"      },      "ReissueCouponFormType": {        "required": [          "couponCode"        ],        "properties": {          "couponCode": {            "type": "string"          }        },        "type": "object"      },      "Address": {        "properties": {          "street": {            "type": "string"          },          "address1": {            "type": "string"          },          "address2": {            "type": "string"          },          "province": {            "type": "string"          },          "city": {            "type": "string"          },          "postal": {            "type": "string"          },          "country": {            "type": "string"          }        },        "type": "object"      },      "Company": {        "properties": {          "name": {            "type": "string"          },          "nip": {            "type": "string"          }        },        "type": "object"      },      "Account": {        "properties": {          "accountId": {            "type": "string"          },          "activePoints": {            "type": "number",            "format": "float"          },          "transferredPoints": {            "type": "number",            "format": "float"          },          "lockedPoints": {            "type": "number",            "format": "float"          },          "expiredPoints": {            "type": "number",            "format": "float"          },          "spentPoints": {            "type": "number",            "format": "float"          },          "earnedPoints": {            "type": "number",            "format": "float"          },          "blockedPoints": {            "type": "number",            "format": "float"          }        },        "type": "object"      },      "Customer": {        "properties": {          "customerId": {            "type": "string",            "format": "uuid"          },          "registeredAt": {            "type": "string",            "format": "date-time"          },          "active": {            "type": "boolean"          },          "channelId": {            "type": "string",            "format": "uuid"          },          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "gender": {            "type": "string"          },          "email": {            "type": "string"          },          "phone": {            "type": "string"          },          "birthDate": {            "type": "string",            "format": "date-time"          },          "lastLevelRecalculation": {            "type": "string",            "format": "date-time"          },          "address": {            "$ref": "#/components/schemas/Address"          },          "loyaltyCardNumber": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "updatedAt": {            "type": "string",            "format": "date-time"          },          "agreement1": {            "type": "boolean"          },          "agreement2": {            "type": "boolean"          },          "agreement3": {            "type": "boolean"          },          "company": {            "$ref": "#/components/schemas/Company"          },          "transactionsCount": {            "type": "integer"          },          "returnTransactionsCount": {            "type": "integer"          },          "transactionsAmount": {            "type": "number",            "format": "float"          },          "returnTransactionsAmount": {            "type": "number",            "format": "float"          },          "transactionsAmountWithoutDeliveryCosts": {            "type": "number",            "format": "float"          },          "amountExcludedForLevel": {            "type": "number",            "format": "float"          },          "averageTransactionAmount": {            "type": "number",            "format": "float"          },          "averageReturnTransactionAmount": {            "type": "number",            "format": "float"          },          "lastTransactionDate": {            "type": "string",            "format": "date-time"          },          "firstTransactionDate": {            "type": "string",            "format": "date-time"          },          "levelAchievementDate": {            "type": "string",            "format": "date-time"          },          "anonymized": {            "type": "boolean"          },          "referralToken": {            "type": "string"          },          "defaultAccount": {            "$ref": "#/components/schemas/Account"          },          "customFieldsData": {            "description": "Custom fields data for member",            "type": "array",            "items": {              "properties": {                "customFieldSchemaId": {                  "description": "ID of the custom field schema",                  "type": "string",                  "format": "uuid"                },                "customFieldName": {                  "description": "Name of the custom field",                  "type": "string"                },                "customFieldType": {                  "description": "Type of the custom field",                  "type": "string"                },                "value": {                  "description": "Value of the custom field",                  "type": "string",                  "nullable": true                }              },              "type": "object"            },            "nullable": true          },          "customFields": {            "description": "Custom field values (CustomField module), keyed by group then field. A field's value type depends on its configured `fieldType`: `text` (string), `integer`, `float`, `boolean`, `date` (`YYYY-MM-DD`), `datetime` (`YYYY-MM-DD HH:mm:ss.SSSSSS`), `single_select` (string, one value from a predefined list), `multi_select` (array of strings, one or more values from a predefined list), or `object_array` (array of objects, each containing the scalar sub-fields defined for that field). Use the `customFields` query parameter to limit which groups are returned; if omitted, all groups are returned. Requires the `CUSTOM_FIELD_MEMBER` feature flag; omitted from the response when disabled.",            "type": "object",            "nullable": true,            "example": {              "group_1": {                "field_1": "orange",                "field_2": 48,                "field_3": 3.5,                "field_4": true,                "field_5": "1990-05-12",                "field_6": "2024-01-15 10:30:00.000000",                "field_7": null,                "field_8": "red",                "field_9": [                  "red",                  "blue"                ],                "subgroup_1": [                  {                    "field_name1": 1,                    "field_name2": 92.5,                    "field_name3": true                  }                ]              }            },            "additionalProperties": {              "type": "object",              "additionalProperties": {}            }          }        },        "type": "object"      },      "ResponseTranslations": {        "properties": {          "en": {            "properties": {              "name": {                "type": "string"              },              "description": {                "type": "string"              }            },            "type": "object"          },          "pl": {            "properties": {              "name": {                "type": "string"              },              "description": {                "type": "string"              }            },            "type": "object"          }        },        "type": "object"      },      "CurrentLevel": {        "properties": {          "levelId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "translations": {            "$ref": "#/components/schemas/ResponseTranslations"          }        },        "type": "object"      },      "CustomerAddressFormType": {        "properties": {          "street": {            "type": "string"          },          "address1": {            "type": "string"          },          "address2": {            "type": "string"          },          "postal": {            "type": "string"          },          "city": {            "type": "string"          },          "province": {            "type": "string"          },          "country": {            "description": "The country code in ISO 3166-1 alpha-2 format. This should be a two-letter uppercase string representing a valid country code. Examples:  - `US` (United States) - `PL` (Poland)",            "type": "string"          }        },        "type": "object"      },      "PutMember": {        "properties": {          "registeredAt": {            "type": "string",            "format": "date-time"          },          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "gender": {            "type": "string",            "enum": [              "male",              "female",              "not_disclosed"            ]          },          "email": {            "type": "string",            "format": "email",            "example": "example@example.com"          },          "phone": {            "type": "string"          },          "loyaltyCardNumber": {            "type": "string"          },          "birthDate": {            "type": "string",            "format": "date-time"          },          "address": {            "$ref": "#/components/schemas/CustomerAddressFormType"          },          "company": {            "properties": {              "name": {                "type": "string"              },              "nip": {                "type": "string"              }            },            "type": "object"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string",                  "minLength": 1                },                "value": {                  "type": "string",                  "minLength": 1                }              },              "type": "object"            }          },          "agreement1": {            "type": "boolean"          },          "agreement2": {            "type": "boolean"          },          "agreement3": {            "type": "boolean"          },          "levelId": {            "description": "Assign member to tier",            "type": "string",            "format": "uuid"          },          "customFieldsData": {            "description": "Custom fields data for member",            "type": "array",            "items": {              "required": [                "customFieldSchemaId",                "value"              ],              "properties": {                "customFieldSchemaId": {                  "description": "ID of the custom field schema",                  "type": "string",                  "format": "uuid"                },                "value": {                  "description": "Value for the custom field (validated against schema requirements)",                  "type": "string"                }              },              "type": "object"            },            "nullable": true          },          "customFields": {            "description": "Custom field values (CustomField module), keyed by group then field. A field's value type depends on the field's configured `fieldType`: `text` (string), `integer`, `float`, `boolean`, `date` (`YYYY-MM-DD`), `datetime` (`YYYY-MM-DD HH:mm:ss.SSSSSS`), `single_select` (string, one value from a predefined list), `multi_select` (array of strings, one or more values from a predefined list), or `object_array` (array of objects, each containing the scalar sub-fields defined for that field). **Full replace:** omitting `customFields` (or sending `null` / `{}`) leaves all existing custom fields unchanged. When a non-empty object is submitted, it replaces the member's entire custom-field state: every group and field not present in the payload is removed, a group present is replaced in full, and a field set to `null` is cleared. Requires the `CUSTOM_FIELD_MEMBER` feature flag; ignored when disabled.",            "type": "object",            "nullable": true,            "example": {              "group_1": {                "field_1": "orange",                "field_2": 48,                "field_3": 3.5,                "field_4": true,                "field_5": "1990-05-12",                "field_6": "2024-01-15 10:30:00.000000",                "field_7": null,                "field_8": "red",                "field_9": [                  "red",                  "blue"                ],                "subgroup_1": [                  {                    "field_name1": 1,                    "field_name2": 92.5,                    "field_name3": true                  }                ]              }            },            "properties": {              "group_1": {                "description": "Example custom field group illustrating each supported field type. Actual group and field names are tenant-defined.",                "type": "object",                "nullable": true,                "properties": {                  "field_1": {                    "description": "fieldType: text",                    "type": "string"                  },                  "field_2": {                    "description": "fieldType: integer",                    "type": "integer"                  },                  "field_3": {                    "description": "fieldType: float",                    "type": "number"                  },                  "field_4": {                    "description": "fieldType: boolean",                    "type": "boolean"                  },                  "field_5": {                    "description": "fieldType: date",                    "type": "string"                  },                  "field_6": {                    "description": "fieldType: datetime",                    "type": "string"                  },                  "field_7": {                    "description": "fieldType: text, cleared by setting to null",                    "type": "string",                    "nullable": true                  },                  "field_8": {                    "description": "fieldType: single_select",                    "type": "string"                  },                  "field_9": {                    "description": "fieldType: multi_select",                    "type": "array",                    "items": {                      "type": "string"                    }                  },                  "subgroup_1": {                    "description": "fieldType: object_array",                    "type": "array",                    "nullable": true,                    "items": {                      "type": "object",                      "properties": {                        "field_name1": {                          "type": "integer"                        },                        "field_name2": {                          "type": "number"                        },                        "field_name3": {                          "type": "boolean"                        }                      }                    }                  }                }              }            },            "additionalProperties": {              "type": "object",              "additionalProperties": {}            }          }        },        "type": "object"      },      "SearchableTotalResponse": {        "required": [          "all",          "filtered",          "estimated"        ],        "properties": {          "all": {            "type": "integer",            "deprecated": true          },          "filtered": {            "type": "integer",            "deprecated": true          },          "estimated": {            "description": "Field estimated is used to show that the results are estimated. It might happen when there are more than 5000 results due to performance optimization.",            "type": "boolean",            "deprecated": true          }        },        "type": "object",        "deprecated": true      },      "ScrollResponse": {        "properties": {          "next": {            "description": "Scroll identifier for pagination",            "type": "string",            "nullable": true          }        },        "type": "object",        "additionalProperties": false      },      "CustomerRegistrationFormType": {        "required": [          "email"        ],        "properties": {          "referrerToken": {            "type": "string",            "nullable": true          },          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "email": {            "description": "Required depending on identification method settings",            "type": "string"          },          "phone": {            "description": "Required depending on identification method settings",            "type": "string"          },          "loyaltyCardNumber": {            "description": "Required depending on identification method settings",            "type": "string"          },          "birthDate": {            "type": "string",            "format": "date"          },          "createdAt": {            "description": "Use \"registeredAt\" field instead.",            "type": "string",            "format": "date-time",            "deprecated": true          },          "registeredAt": {            "type": "string",            "format": "date-time"          },          "address": {            "$ref": "#/components/schemas/CustomerAddressFormType"          },          "company": {            "properties": {              "name": {                "type": "string"              },              "nip": {                "type": "string"              }            },            "type": "object"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string",                  "minLength": 1                },                "value": {                  "type": "string",                  "minLength": 1                }              },              "type": "object"            }          },          "agreement1": {            "description": "TOS Agreement",            "type": "boolean"          },          "agreement2": {            "description": "Direct Marketing Agreement",            "type": "boolean"          },          "agreement3": {            "description": "Optional Agreement",            "type": "boolean"          },          "levelId": {            "description": "Assign member to tier",            "type": "string",            "format": "uuid",            "nullable": true          },          "channelId": {            "type": "string",            "format": "uuid"          },          "customFieldsData": {            "description": "Custom fields data for member",            "type": "array",            "items": {              "required": [                "customFieldSchemaId",                "value"              ],              "properties": {                "customFieldSchemaId": {                  "description": "ID of the custom field schema",                  "type": "string",                  "format": "uuid"                },                "value": {                  "description": "Value for the custom field (validated against schema requirements)",                  "type": "string"                }              },              "type": "object"            },            "nullable": true          },          "customFields": {            "description": "Custom field values (CustomField module) to set on the new member, keyed by group then field. Requires the `CUSTOM_FIELD_MEMBER` feature flag; ignored when disabled.",            "type": "object",            "nullable": true,            "example": {              "driving": {                "score": 90              }            },            "additionalProperties": {              "type": "object",              "additionalProperties": {}            }          }        },        "type": "object"      },      "TierSet": {        "properties": {          "tierSetId": {            "type": "string"          },          "name": {            "type": "string"          },          "isMigrated": {            "type": "boolean"          }        },        "type": "object"      },      "CustomerStatus": {        "properties": {          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "customerId": {            "type": "string",            "format": "uuid"          },          "activePoints": {            "type": "number",            "format": "float"          },          "transferredPoints": {            "type": "number",            "format": "float"          },          "earnedPoints": {            "type": "number",            "format": "float"          },          "spentPoints": {            "type": "number",            "format": "float"          },          "expiredPoints": {            "type": "number",            "format": "float"          },          "lockedPoints": {            "type": "number",            "format": "float"          },          "blockedPoints": {            "type": "number",            "format": "float"          },          "levelName": {            "type": "string"          },          "levelConditionValue": {            "type": "number",            "format": "float"          },          "nextLevelName": {            "description": "This property only shows correct data for tier sets with one condition.",            "type": "string",            "deprecated": true          },          "nextLevelConditionValue": {            "description": "This property only shows correct data for tier sets with one condition.",            "type": "number",            "format": "float",            "deprecated": true          },          "transactionsAmountToNextLevelWithoutDeliveryCosts": {            "type": "number",            "format": "float"          },          "transactionsAmountWithoutDeliveryCosts": {            "type": "number",            "format": "float"          },          "transactionsAmountToNextLevel": {            "type": "number",            "format": "float"          },          "averageTransactionsAmount": {            "type": "number",            "format": "float"          },          "averageReturnTransactionsAmount": {            "type": "number",            "format": "float"          },          "transactionsCount": {            "type": "integer"          },          "returnTransactionsCount": {            "type": "integer"          },          "transactionsAmount": {            "type": "number",            "format": "float"          },          "returnTransactionsAmount": {            "type": "number",            "format": "float"          },          "pointsToNextLevel": {            "description": "This property only shows correct data for tier sets with one condition.",            "type": "number",            "format": "float",            "deprecated": true          },          "currency": {            "type": "string"          },          "levelWillExpireInDays": {            "type": "integer"          },          "pointsSinceLastLevelRecalculation": {            "type": "number",            "format": "float"          },          "pointsRequiredToRetainLevel": {            "type": "number",            "format": "float"          },          "tierSet": {            "$ref": "#/components/schemas/TierSet"          },          "pointsExpiringNextMonth": {            "type": "number",            "format": "float"          },          "pointsExpiringBreakdown": {            "type": "object",            "additionalProperties": {              "type": "number",              "format": "float"            }          },          "storeCode": {            "type": "string"          },          "firstTransactionDate": {            "type": "string",            "format": "date-time"          },          "lastTransactionDate": {            "type": "string",            "format": "date-time"          },          "levelAchievementDate": {            "type": "string",            "format": "date-time"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "registeredAt": {            "type": "string",            "format": "date-time"          },          "referralToken": {            "type": "string"          }        },        "type": "object"      },      "FormType": {        "type": "object"      },      "CustomFieldFormType": {        "required": [          "customFieldSchemaId"        ],        "properties": {          "customFieldSchemaId": {            "type": "string"          }        },        "type": "object"      },      "CustomerSelfRegistrationFormType": {        "required": [          "email",          "agreement1",          "plainPassword"        ],        "properties": {          "referrerToken": {            "type": "string"          },          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "gender": {            "type": "string",            "enum": [              "male",              "female",              "not_disclosed"            ]          },          "email": {            "type": "string"          },          "phone": {            "type": "string"          },          "loyaltyCardNumber": {            "type": "string"          },          "birthDate": {            "type": "string",            "format": "date"          },          "createdAt": {            "description": "Use \"registeredAt\" field instead.",            "type": "string",            "format": "date-time",            "deprecated": true          },          "registeredAt": {            "type": "string",            "format": "date-time"          },          "address": {            "$ref": "#/components/schemas/FormType"          },          "company": {            "$ref": "#/components/schemas/FormType"          },          "labels": {            "type": "array",            "items": {              "$ref": "#/components/schemas/UserLabelFormType"            }          },          "customFieldsData": {            "type": "array",            "items": {              "$ref": "#/components/schemas/CustomFieldFormType"            }          },          "agreement1": {            "description": "TOS Agreement (required to be true)",            "type": "boolean"          },          "agreement2": {            "description": "Direct Marketing Agreement",            "type": "boolean"          },          "agreement3": {            "description": "Optional Agreement",            "type": "boolean"          },          "plainPassword": {            "type": "string",            "format": "password"          }        },        "type": "object"      },      "ChangePasswordFormType": {        "required": [          "currentPassword",          "plainPassword"        ],        "properties": {          "currentPassword": {            "type": "string",            "format": "password"          },          "plainPassword": {            "type": "string",            "format": "password"          }        },        "type": "object"      },      "Transfer": {        "properties": {          "transferId": {            "type": "string",            "format": "uuid"          },          "type": {            "type": "string"          },          "accountId": {            "type": "string"          },          "lockedUntil": {            "type": "string",            "format": "date-time"          },          "expiresAt": {            "type": "string",            "format": "date-time"          },          "storeId": {            "type": "string",            "format": "uuid"          },          "comment": {            "type": "string"          },          "cancelled": {            "type": "boolean"          },          "pending": {            "type": "boolean"          },          "unlockedAt": {            "type": "string",            "format": "date-time"          },          "actionCause": {            "properties": {              "campaignId": {                "type": "string",                "format": "uuid"              },              "customerId": {                "type": "string",                "format": "uuid"              },              "transactionId": {                "type": "string",                "format": "uuid"              },              "customEventId": {                "type": "string",                "format": "uuid"              },              "internalEventName": {                "type": "string"              },              "performedAt": {                "type": "string",                "format": "date-time"              },              "rewardId": {                "type": "string"              },              "issuedRewardId": {                "type": "string"              }            },            "type": "object"          },          "value": {            "type": "number",            "format": "float"          },          "externalTransferId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "createdBy": {            "type": "string",            "format": "uuid"          }        },        "type": "object"      },      "WalletTypeLimit": {        "properties": {          "points": {            "description": "Global limit of units for wallet type",            "properties": {              "interval": {                "properties": {                  "type": {                    "description": "Interval of time",                    "type": "string",                    "enum": [                      "calendarHours",                      "calendarDays",                      "calendarWeeks",                      "calendarMonths",                      "calendarYears"                    ]                  },                  "value": {                    "description": "Number of next intervals",                    "type": "integer",                    "default": 1,                    "minimum": 1                  }                },                "type": "object"              },              "value": {                "description": "Limit value in units",                "type": "number",                "format": "float",                "minimum": 1              }            },            "type": "object"          },          "pointsPerMember": {            "description": "Limit of units for wallet type and member",            "required": [              "value"            ],            "properties": {              "interval": {                "properties": {                  "type": {                    "description": "Interval of time",                    "type": "string",                    "enum": [                      "calendarHours",                      "calendarDays",                      "calendarWeeks",                      "calendarMonths",                      "calendarYears"                    ]                  },                  "value": {                    "description": "Number of next intervals",                    "type": "integer",                    "default": 1,                    "minimum": 1                  }                },                "type": "object"              },              "value": {                "description": "Limit value in units",                "type": "number",                "format": "float",                "minimum": 1              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "WalletType": {        "required": [          "name",          "walletTypeId",          "code",          "unitSingularName",          "unitPluralName",          "active",          "isDefault",          "createdAt",          "limits"        ],        "properties": {          "name": {            "type": "string"          },          "walletTypeId": {            "type": "string",            "format": "uuid",            "example": "3eaea517-4336-45c0-b477-f5cc1081fcdb"          },          "code": {            "type": "string"          },          "unitSingularName": {            "type": "string"          },          "unitPluralName": {            "type": "string"          },          "active": {            "type": "boolean",            "example": true          },          "isDefault": {            "description": "Indicates if wallet type is default. Only one default wallet type can be defined in the tenant",            "type": "boolean",            "example": true          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "limits": {            "$ref": "#/components/schemas/WalletTypeLimit"          },          "allowNegativeBalance": {            "type": "boolean",            "example": true          }        },        "type": "object",        "additionalProperties": false      },      "TransferPointsByCustomerFormType": {        "required": [          "receiver",          "points"        ],        "properties": {          "receiver": {            "type": "string",            "example": "7239e6f7-e52e-466b-8c24-699709b64076"          },          "points": {            "type": "number"          },          "comment": {            "type": "string"          }        },        "type": "object"      },      "Tier": {        "properties": {          "levelId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "hasPhoto": {            "type": "boolean"          },          "storeCode": {            "type": "string"          },          "conditionValue": {            "type": "number",            "format": "float",            "deprecated": true          }        },        "type": "object"      },      "ActionCause": {        "properties": {          "campaignId": {            "type": "string",            "format": "uuid",            "nullable": true          },          "customerId": {            "type": "string",            "format": "uuid",            "nullable": true          },          "transactionId": {            "type": "string",            "format": "uuid",            "nullable": true          },          "customEventId": {            "type": "string",            "format": "uuid",            "nullable": true          },          "internalEventName": {            "type": "string",            "nullable": true          },          "performedAt": {            "description": "The date and time when the event was performed (purchase for transactions, registration for custom events). Equivalent to purchasedAt and eventDate. This value is null if actionCause does not come from a campaign.",            "type": "string",            "format": "date-time",            "nullable": true          },          "rewardId": {            "description": "The reward definition ID when the transfer is related to a reward purchase or to a reward drawn from a Fortune Wheel.",            "type": "string",            "format": "uuid",            "nullable": true          },          "issuedRewardId": {            "description": "The issued reward instance ID when the transfer is related to a reward redemption or to a reward drawn from a Fortune Wheel.",            "type": "string",            "format": "uuid",            "nullable": true          }        },        "type": "object"      },      "issuedReward": {        "properties": {          "rewardId": {            "type": "string",            "format": "uuid"          },          "issuedRewardId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "tax": {            "type": "number"          },          "taxPriceValue": {            "type": "number"          },          "price": {            "type": "number",            "format": "float"          },          "customerId": {            "type": "string",            "format": "uuid"          },          "status": {            "type": "string"          },          "redemptionDate": {            "type": "string",            "format": "date-time"          },          "issuedCoupon": {            "properties": {              "code": {                "type": "string"              },              "value": {                "type": "number",                "format": "float"              },              "activeFrom": {                "type": "string",                "format": "date-time"              },              "activeTo": {                "type": "string",                "format": "date-time"              },              "valueType": {                "type": "string",                "enum": [                  "money",                  "percentage"                ]              },              "usedAt": {                "type": "string",                "format": "date-time"              }            },            "type": "object"          },          "customerData": {            "properties": {              "email": {                "type": "string"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "phone": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              },              "address": {                "type": "object"              }            },            "type": "object"          },          "costInPoints": {            "type": "number",            "format": "float"          },          "token": {            "type": "string"          },          "rewardType": {            "type": "string",            "enum": [              "static_coupon",              "material",              "dynamic_coupon",              "conversion_coupon"            ]          },          "unitsConversion": {            "properties": {              "ratio": {                "type": "number",                "format": "float"              },              "rounding": {                "type": "string",                "enum": [                  "up",                  "down",                  "default"                ]              }            },            "type": "object"          },          "actionCause": {            "$ref": "#/components/schemas/ActionCause"          }        },        "type": "object"      },      "TransferPointsFormType": {        "required": [          "receiver",          "points",          "sender"        ],        "properties": {          "receiver": {            "type": "string",            "example": "7239e6f7-e52e-466b-8c24-699709b64076"          },          "points": {            "type": "number"          },          "comment": {            "type": "string"          },          "sender": {            "type": "string",            "example": "7239e6f7-e52e-466b-8c24-699709b64076"          }        },        "type": "object"      },      "WalletTypeBasic": {        "properties": {          "name": {            "type": "string"          },          "code": {            "type": "string"          },          "unitSingularName": {            "type": "string"          },          "unitPluralName": {            "type": "string"          }        },        "type": "object"      },      "Member": {        "required": [          "id"        ],        "properties": {          "id": {            "type": "string",            "format": "uuid"          },          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "email": {            "type": "string"          },          "phoneNumber": {            "type": "string"          },          "loyaltyCardNumber": {            "type": "string"          }        },        "type": "object"      },      "AddPointsFormType": {        "required": [          "customer",          "points"        ],        "properties": {          "customer": {            "type": "string",            "example": "7239e6f7-e52e-466b-8c24-699709b64076"          },          "points": {            "type": "number"          },          "expiresInDays": {            "type": "number"          },          "lockedUntilDays": {            "type": "number"          },          "comment": {            "type": "string"          },          "externalTransferId": {            "type": "string"          },          "walletCode": {            "type": "string"          },          "requestedAt": {            "type": "string",            "format": "date-time"          },          "labels": {            "type": "array",            "items": {              "type": "string"            },            "example": [              "Nike",              "L"            ]          }        },        "type": "object"      },      "BlockPointsFormType": {        "required": [          "customer",          "points"        ],        "properties": {          "customer": {            "type": "string",            "example": "7239e6f7-e52e-466b-8c24-699709b64076"          },          "points": {            "type": "number"          },          "comment": {            "type": "string"          },          "externalTransferId": {            "type": "string"          },          "walletCode": {            "type": "string"          },          "requestedAt": {            "type": "string",            "format": "date-time"          },          "labels": {            "type": "array",            "items": {              "type": "string"            },            "example": [              "Nike",              "L"            ]          }        },        "type": "object"      },      "SpendPointsFormType": {        "required": [          "customer",          "points"        ],        "properties": {          "customer": {            "type": "string",            "example": "7239e6f7-e52e-466b-8c24-699709b64076"          },          "points": {            "type": "number"          },          "comment": {            "type": "string"          },          "externalTransferId": {            "type": "string"          },          "walletCode": {            "type": "string"          },          "requestedAt": {            "type": "string",            "format": "date-time"          },          "labels": {            "type": "array",            "items": {              "type": "string"            },            "example": [              "Nike",              "L"            ]          }        },        "type": "object"      },      "Referral": {        "properties": {          "referralId": {            "type": "string",            "format": "uuid"          },          "referrerId": {            "type": "string",            "format": "uuid"          },          "referrerName": {            "type": "string"          },          "referrerToken": {            "type": "string"          },          "refereeId": {            "type": "string",            "format": "uuid"          },          "refereeName": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "StaticCoupon": {        "required": [          "customerId",          "quantity",          "withoutPoints"        ],        "properties": {          "customerId": {            "type": "string",            "format": "uuid"          },          "quantity": {            "type": "integer"          },          "couponValue": {            "type": "number",            "format": "float"          },          "dateValid": {            "type": "string",            "format": "date-time"          },          "withoutPoints": {            "type": "boolean"          },          "rewardWalletCode": {            "type": "string"          }        },        "type": "object"      },      "DynamicCoupon": {        "required": [          "customerId",          "quantity",          "couponValue",          "withoutPoints"        ],        "properties": {          "customerId": {            "type": "string",            "format": "uuid"          },          "quantity": {            "type": "integer"          },          "couponValue": {            "type": "number",            "format": "float"          },          "dateValid": {            "type": "string",            "format": "date-time"          },          "withoutPoints": {            "type": "boolean"          },          "rewardWalletCode": {            "type": "string"          }        },        "type": "object"      },      "ConversionCoupon": {        "required": [          "customerId"        ],        "properties": {          "customerId": {            "type": "string",            "format": "uuid"          },          "dateValid": {            "type": "string",            "format": "date-time"          },          "units": {            "type": "number",            "format": "float"          }        },        "type": "object"      },      "MaterialReward": {        "required": [          "customerId",          "quantity",          "withoutPoints"        ],        "properties": {          "customerId": {            "type": "string",            "format": "uuid"          },          "quantity": {            "type": "integer"          },          "withoutPoints": {            "type": "boolean"          },          "rewardWalletCode": {            "type": "string"          }        },        "type": "object"      },      "Coupon": {        "properties": {          "code": {            "type": "string"          },          "issued": {            "type": "boolean"          }        },        "type": "object"      },      "RewardResponse": {        "properties": {          "reward": {            "type": "string"          },          "name": {            "type": "string"          },          "levels": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "categories": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "brandIcon": {            "type": "boolean"          },          "rewardId": {            "type": "string",            "format": "uuid"          },          "target": {            "type": "string",            "enum": [              "level",              "segment"            ]          },          "active": {            "type": "boolean"          },          "costInPoints": {            "type": "number"          },          "activity": {            "properties": {              "allTime": {                "type": "boolean"              }            },            "type": "object"          },          "visibility": {            "properties": {              "allTime": {                "type": "boolean"              }            },            "type": "object"          },          "tax": {            "type": "number"          },          "taxPriceValue": {            "type": "number"          },          "price": {            "type": "number"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "photos": {            "type": "array",            "items": {              "type": "object"            }          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "usageLimit": {            "properties": {              "general": {                "type": "number"              },              "perUser": {                "type": "number"              }            },            "type": "object"          },          "notIssuedCoupons": {            "type": "number"          },          "limitUsages": {            "properties": {              "general": {                "properties": {                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      }                    },                    "type": "object"                  },                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  }                },                "type": "object"              },              "perMember": {                "properties": {                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      }                    },                    "type": "object"                  },                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  }                },                "type": "object"              }            },            "type": "object"          },          "fulfillmentTracking": {            "type": "boolean",            "deprecated": true          },          "translations": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "id": {                  "type": "integer"                },                "locale": {                  "type": "string"                }              },              "type": "object"            }          },          "couponGenerator": {            "properties": {              "length": {                "type": "number"              },              "characterSet": {                "type": "string"              }            },            "type": "object"          },          "couponValue": {            "type": "number"          },          "segmentNames": {            "type": "object",            "additionalProperties": {              "type": "string"            }          },          "levelNames": {            "type": "object",            "additionalProperties": {              "type": "string"            }          },          "categoryNames": {            "type": "object",            "additionalProperties": {              "type": "string"            }          },          "usageLeft": {            "type": "number",            "deprecated": true          },          "usageLeftForCustomer": {            "type": "number",            "deprecated": true          },          "unitsConversion": {            "properties": {              "ratio": {                "type": "number",                "format": "float"              },              "rounding": {                "type": "string",                "enum": [                  "up",                  "down",                  "default"                ]              }            },            "type": "object"          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key, exposed to admin consumers. Present only when the CUSTOM_FIELD_REWARD feature flag is enabled and the reward has stored values; omitted otherwise.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          }        },        "type": "object"      },      "FortuneWheelResponse": {        "required": [          "rules"        ],        "properties": {          "rules": {            "type": "array",            "items": {              "required": [                "name",                "effects",                "chance"              ],              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "effects": {                  "type": "array",                  "items": {                    "oneOf": [                      {                        "title": "give_reward",                        "required": [                          "effect",                          "rewardId"                        ],                        "properties": {                          "effect": {                            "type": "string",                            "enum": [                              "give_reward"                            ]                          },                          "rewardId": {                            "type": "string",                            "format": "uuid",                            "example": "6a861f8a-6906-4002-8b9c-4db407e810ea"                          },                          "couponValueRule": {                            "description": "Optional - Only required if the reward is dynamic_coupon",                            "type": "string",                            "example": "23"                          }                        },                        "type": "object",                        "additionalProperties": false                      },                      {                        "title": "give_points",                        "required": [                          "effect",                          "pointsRule"                        ],                        "properties": {                          "effect": {                            "type": "string",                            "enum": [                              "give_points"                            ]                          },                          "pointsRule": {                            "type": "string",                            "pattern": "^\\d+$",                            "example": "100"                          },                          "walletCode": {                            "type": "string",                            "example": "default"                          }                        },                        "type": "object",                        "additionalProperties": false                      }                    ]                  }                },                "chance": {                  "type": "number",                  "format": "float",                  "maximum": 1,                  "minimum": 0,                  "example": 0.5                }              },              "type": "object",              "additionalProperties": false            }          },          "limits": {            "$ref": "#/components/schemas/Limit"          }        },        "type": "object",        "additionalProperties": false      },      "SingleRewardResponse": {        "allOf": [          {            "$ref": "#/components/schemas/RewardResponse"          },          {            "properties": {              "fortuneWheel": {                "$ref": "#/components/schemas/FortuneWheelResponse"              }            },            "type": "object"          }        ]      },      "RewardLimit": {        "description": "New limits structure with intervals. Cannot be used together with usageLimit.",        "properties": {          "general": {            "required": [              "value"            ],            "properties": {              "interval": {                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "calendarHours",                      "calendarDays",                      "calendarWeeks",                      "calendarMonths",                      "calendarYears"                    ]                  }                },                "type": "object"              },              "value": {                "type": "number",                "format": "float"              }            },            "type": "object"          },          "perMember": {            "required": [              "value"            ],            "properties": {              "interval": {                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "calendarHours",                      "calendarDays",                      "calendarWeeks",                      "calendarMonths",                      "calendarYears"                    ]                  }                },                "type": "object"              },              "value": {                "type": "number",                "format": "float"              }            },            "type": "object"          }        },        "type": "object"      },      "UpdateMaterialRewardRequestBody": {        "title": "Material",        "required": [          "translations",          "activity",          "visibility"        ],        "properties": {          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "fulfillmentTracking": {            "type": "boolean"          }        },        "type": "object",        "additionalProperties": false      },      "UpdateStaticCouponRewardRequestBody": {        "title": "Static coupon",        "required": [          "translations",          "activity",          "visibility",          "couponValue"        ],        "properties": {          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "daysInactive": {            "description": "Inactive coupon period after redeem in days",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "daysValid": {            "description": "Active coupon period after redeem in days. Not valid if dateValid is defined.",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "dateValid": {            "description": "Explicit expiry date for the coupon. Must be within 1000 days from the current date.",            "type": "string",            "format": "date-time"          },          "couponGenerator": {            "description": "If defined then coupon will be generated automatically based on defined strategy. Otherwise must be import manually.",            "required": [              "length",              "characterSet"            ],            "properties": {              "length": {                "description": "Length of coupon",                "type": "number"              },              "characterSet": {                "type": "string",                "enum": [                  "alphanum",                  "alpha",                  "num"                ]              },              "prefix": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          },          "couponValueType": {            "description": "Coupon value type (if empty, money will be default).",            "type": "string",            "enum": [              "money",              "percentage"            ]          },          "couponValue": {            "description": "Coupon value * `money` - Money value greater than 0 * `percentage` - Percentage value 0 - 100\n",            "type": "number",            "format": "float",            "minimum": 0,            "exclusiveMinimum": true          }        },        "type": "object",        "additionalProperties": false      },      "UpdateDynamicCouponRewardRequestBody": {        "title": "Dynamic coupon",        "required": [          "translations",          "activity",          "visibility"        ],        "properties": {          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "daysInactive": {            "description": "Inactive coupon period after redeem in days",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "daysValid": {            "description": "Active coupon period after redeem in days. Not valid if dateValid is defined.",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "dateValid": {            "description": "Explicit expiry date for the coupon. Must be within 1000 days from the current date.",            "type": "string",            "format": "date-time"          },          "couponGenerator": {            "description": "If defined then coupon will be generated automatically based on defined strategy. Otherwise must be import manually.",            "required": [              "length",              "characterSet"            ],            "properties": {              "length": {                "description": "Length of coupon",                "type": "number"              },              "characterSet": {                "type": "string",                "enum": [                  "alphanum",                  "alpha",                  "num"                ]              },              "prefix": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "UpdateConversionCouponRewardRequestBody": {        "title": "Conversion coupon",        "required": [          "translations",          "activity",          "visibility",          "unitsConversion"        ],        "properties": {          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "daysInactive": {            "description": "Inactive coupon period after redeem in days",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "daysValid": {            "description": "Active coupon period after redeem in days. Not valid if dateValid is defined.",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "dateValid": {            "description": "Explicit expiry date for the coupon. Must be within 1000 days from the current date.",            "type": "string",            "format": "date-time"          },          "couponGenerator": {            "description": "If defined then coupon will be generated automatically based on defined strategy. Otherwise must be import manually.",            "required": [              "length",              "characterSet"            ],            "properties": {              "length": {                "description": "Length of coupon",                "type": "number"              },              "characterSet": {                "type": "string",                "enum": [                  "alphanum",                  "alpha",                  "num"                ]              },              "prefix": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          },          "unitsConversion": {            "required": [              "rounding",              "ratio"            ],            "properties": {              "rounding": {                "type": "string",                "enum": [                  "default",                  "up",                  "down"                ]              },              "ratio": {                "type": "number",                "format": "float",                "minimum": 0,                "example": 0.45              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "UpdateFortuneWheelRewardRequestBody": {        "title": "fortune_wheel",        "required": [          "translations",          "activity",          "visibility",          "fortuneWheel"        ],        "properties": {          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "fortuneWheel": {            "$ref": "#/components/schemas/FortuneWheelResponse"          }        },        "type": "object",        "additionalProperties": false      },      "CreateMaterialRewardRequestBody": {        "title": "Material",        "required": [          "translations",          "activity",          "visibility",          "reward"        ],        "properties": {          "reward": {            "type": "string",            "enum": [              "static_coupon",              "material",              "dynamic_coupon",              "conversion_coupon",              "fortune_wheel"            ]          },          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "fulfillmentTracking": {            "type": "boolean"          }        },        "type": "object",        "additionalProperties": false      },      "CreateStaticCouponRewardRequestBody": {        "title": "Static coupon",        "required": [          "translations",          "activity",          "visibility",          "couponValue",          "reward"        ],        "properties": {          "reward": {            "type": "string",            "enum": [              "static_coupon",              "material",              "dynamic_coupon",              "conversion_coupon",              "fortune_wheel"            ]          },          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "daysInactive": {            "description": "Inactive coupon period after redeem in days",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "daysValid": {            "description": "Active coupon period after redeem in days. Not valid if dateValid is defined.",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "dateValid": {            "description": "Explicit expiry date for the coupon. Must be within 1000 days from the current date.",            "type": "string",            "format": "date-time"          },          "couponGenerator": {            "description": "If defined then coupon will be generated automatically based on defined strategy. Otherwise must be import manually.",            "required": [              "length",              "characterSet"            ],            "properties": {              "length": {                "description": "Length of coupon",                "type": "number"              },              "characterSet": {                "type": "string",                "enum": [                  "alphanum",                  "alpha",                  "num"                ]              },              "prefix": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          },          "couponValueType": {            "description": "Coupon value type (if empty, money will be default).",            "type": "string",            "enum": [              "money",              "percentage"            ]          },          "couponValue": {            "description": "Coupon value * `money` - Money value greater than 0 * `percentage` - Percentage value 0 - 100\n",            "type": "number",            "format": "float",            "minimum": 0,            "exclusiveMinimum": true          }        },        "type": "object",        "additionalProperties": false      },      "CreateDynamicCouponRewardRequestBody": {        "title": "Dynamic coupon",        "required": [          "translations",          "activity",          "visibility",          "reward"        ],        "properties": {          "reward": {            "type": "string",            "enum": [              "static_coupon",              "material",              "dynamic_coupon",              "conversion_coupon",              "fortune_wheel"            ]          },          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "daysInactive": {            "description": "Inactive coupon period after redeem in days",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "daysValid": {            "description": "Active coupon period after redeem in days. Not valid if dateValid is defined.",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "dateValid": {            "description": "Explicit expiry date for the coupon. Must be within 1000 days from the current date.",            "type": "string",            "format": "date-time"          },          "couponGenerator": {            "description": "If defined then coupon will be generated automatically based on defined strategy. Otherwise must be import manually.",            "required": [              "length",              "characterSet"            ],            "properties": {              "length": {                "description": "Length of coupon",                "type": "number"              },              "characterSet": {                "type": "string",                "enum": [                  "alphanum",                  "alpha",                  "num"                ]              },              "prefix": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "CreateConversionCouponRewardRequestBody": {        "title": "Conversion coupon",        "required": [          "translations",          "activity",          "visibility",          "unitsConversion",          "reward"        ],        "properties": {          "reward": {            "type": "string",            "enum": [              "static_coupon",              "material",              "dynamic_coupon",              "conversion_coupon",              "fortune_wheel"            ]          },          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "daysInactive": {            "description": "Inactive coupon period after redeem in days",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "daysValid": {            "description": "Active coupon period after redeem in days. Not valid if dateValid is defined.",            "type": "number",            "format": "int32",            "maximum": 1000,            "minimum": 1          },          "dateValid": {            "description": "Explicit expiry date for the coupon. Must be within 1000 days from the current date.",            "type": "string",            "format": "date-time"          },          "couponGenerator": {            "description": "If defined then coupon will be generated automatically based on defined strategy. Otherwise must be import manually.",            "required": [              "length",              "characterSet"            ],            "properties": {              "length": {                "description": "Length of coupon",                "type": "number"              },              "characterSet": {                "type": "string",                "enum": [                  "alphanum",                  "alpha",                  "num"                ]              },              "prefix": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          },          "unitsConversion": {            "required": [              "rounding",              "ratio"            ],            "properties": {              "rounding": {                "type": "string",                "enum": [                  "default",                  "up",                  "down"                ]              },              "ratio": {                "type": "number",                "format": "float",                "minimum": 0,                "example": 0.45              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "CreateFortuneWheelRewardRequestBody": {        "title": "Fortune Wheel",        "required": [          "translations",          "activity",          "visibility",          "reward",          "fortuneWheel"        ],        "properties": {          "reward": {            "type": "string",            "enum": [              "fortune_wheel"            ]          },          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Reward name",                    "type": "string"                  },                  "shortDescription": {                    "description": "Reward short description",                    "type": "string"                  },                  "usageInstruction": {                    "description": "Reward usage instruction",                    "type": "string"                  },                  "conditionsDescription": {                    "description": "Reward conditions description",                    "type": "string"                  },                  "brandDescription": {                    "description": "Brand description",                    "type": "string"                  },                  "brandName": {                    "description": "Brand description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "categories": {            "description": "Categories",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "tax": {            "description": "Price tax",            "type": "number",            "format": "float",            "maximum": 100,            "minimum": 0,            "example": 23          },          "price": {            "description": "Price",            "type": "number",            "format": "float",            "minimum": 0,            "example": 200          },          "taxPriceValue": {            "description": "Tax price value",            "type": "number",            "format": "float",            "minimum": 0,            "example": 46          },          "active": {            "type": "boolean"          },          "target": {            "description": "Link to tiers or segments:\n\n\n * `level` - Property `levels` is required\n * `segment` - Property `segments` is required\n",            "type": "string",            "enum": [              "level",              "segment"            ]          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "description": "Selects specific segments of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "sourceWalletTypeCode": {            "description": "Wallet code as a source of units",            "type": "string",            "nullable": true          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Requires the CUSTOM_FIELD_REWARD feature flag; when disabled the field is silently ignored. On POST the supplied values are added; on PUT the supplied groups wholesale-replace existing custom fields for the reward.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          },          "limits": {            "$ref": "#/components/schemas/RewardLimit"          },          "usageLimit": {            "description": "Legacy usage limits structure. Cannot be used together with limits.",            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "fortuneWheel": {            "$ref": "#/components/schemas/FortuneWheelResponse"          }        },        "type": "object",        "additionalProperties": false      },      "StaticIssuedReward": {        "properties": {          "rewardId": {            "type": "string",            "format": "uuid"          },          "issuedRewardId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "tax": {            "type": "number",            "format": "float"          },          "taxPriceValue": {            "type": "number",            "format": "float"          },          "price": {            "type": "number",            "format": "float"          },          "customerId": {            "type": "string",            "format": "uuid"          },          "status": {            "type": "string"          },          "redemptionDate": {            "type": "string",            "format": "date-time"          },          "issuedCoupon": {            "properties": {              "code": {                "type": "string"              },              "value": {                "type": "number",                "format": "float"              },              "activeFrom": {                "type": "string",                "format": "date-time"              },              "activeTo": {                "type": "string",                "format": "date-time"              },              "usedAt": {                "type": "string",                "format": "date-time"              }            },            "type": "object"          },          "customerData": {            "properties": {              "email": {                "type": "string"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "phone": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              },              "address": {                "type": "object"              }            },            "type": "object"          },          "costInPoints": {            "type": "number",            "format": "float"          },          "token": {            "type": "string"          },          "rewardType": {            "type": "string",            "example": "static_coupon"          },          "actionCause": {            "$ref": "#/components/schemas/ActionCause"          },          "cancelledAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "MaterialIssuedReward": {        "properties": {          "rewardId": {            "type": "string",            "format": "uuid"          },          "issuedRewardId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "customerId": {            "type": "string",            "format": "uuid"          },          "status": {            "type": "string"          },          "redemptionDate": {            "type": "string",            "format": "date-time"          },          "customerData": {            "properties": {              "email": {                "type": "string"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "phone": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              },              "address": {                "type": "object"              }            },            "type": "object"          },          "costInPoints": {            "type": "number"          },          "token": {            "type": "string"          },          "rewardType": {            "type": "string",            "example": "material"          },          "actionCause": {            "$ref": "#/components/schemas/ActionCause"          },          "cancelledAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "ConversionCouponIssuedReward": {        "properties": {          "rewardId": {            "type": "string",            "format": "uuid"          },          "issuedRewardId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "tax": {            "type": "number",            "format": "float"          },          "taxPriceValue": {            "type": "number",            "format": "float"          },          "price": {            "type": "number",            "format": "float"          },          "customerId": {            "type": "string",            "format": "uuid"          },          "status": {            "type": "string"          },          "redemptionDate": {            "type": "string",            "format": "date-time"          },          "issuedCoupon": {            "properties": {              "code": {                "type": "string"              },              "value": {                "type": "number",                "format": "float"              },              "activeFrom": {                "type": "string",                "format": "date-time"              },              "activeTo": {                "type": "string",                "format": "date-time"              },              "usedAt": {                "type": "string",                "format": "date-time"              }            },            "type": "object"          },          "customerData": {            "properties": {              "email": {                "type": "string"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "phone": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              },              "address": {                "type": "object"              }            },            "type": "object"          },          "costInPoints": {            "type": "number",            "format": "float"          },          "token": {            "type": "string"          },          "rewardType": {            "type": "string",            "example": "conversion_coupon"          },          "unitsConversion": {            "properties": {              "ratio": {                "type": "number",                "format": "float"              },              "rounding": {                "type": "string",                "enum": [                  "up",                  "down",                  "default"                ]              }            },            "type": "object"          },          "actionCause": {            "$ref": "#/components/schemas/ActionCause"          },          "cancelledAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "DynamicIssuedReward": {        "properties": {          "rewardId": {            "type": "string",            "format": "uuid"          },          "issuedRewardId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "tax": {            "type": "number",            "format": "float"          },          "taxPriceValue": {            "type": "number",            "format": "float"          },          "price": {            "type": "number",            "format": "float"          },          "customerId": {            "type": "string",            "format": "uuid"          },          "status": {            "type": "string",            "enum": [              "issued",              "pending",              "approved",              "rejected",              "canceled",              "packing",              "awaiting_shipping",              "shipped",              "completed",              "returned"            ]          },          "redemptionDate": {            "type": "string",            "format": "date-time"          },          "issuedCoupon": {            "properties": {              "code": {                "type": "string"              },              "value": {                "type": "number",                "format": "float"              },              "activeFrom": {                "type": "string",                "format": "date-time"              },              "activeTo": {                "type": "string",                "format": "date-time"              },              "usedAt": {                "type": "string",                "format": "date-time"              }            },            "type": "object"          },          "customerData": {            "properties": {              "email": {                "type": "string"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "phone": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              },              "address": {                "type": "object"              }            },            "type": "object"          },          "costInPoints": {            "type": "number",            "format": "float"          },          "token": {            "type": "string"          },          "rewardType": {            "type": "string",            "example": "dynamic_coupon"          },          "actionCause": {            "$ref": "#/components/schemas/ActionCause"          },          "cancelledAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "EffectStatus": {        "required": [          "code"        ],        "properties": {          "code": {            "type": "string",            "enum": [              "success",              "partial_success",              "failure"            ]          },          "message": {            "type": "string"          }        },        "type": "object",        "additionalProperties": false      },      "EffectResponse": {        "oneOf": [          {            "title": "Unit Effect",            "required": [              "type",              "status"            ],            "properties": {              "type": {                "type": "string",                "enum": [                  "unit"                ]              },              "status": {                "$ref": "#/components/schemas/EffectStatus"              },              "transfer": {                "required": [                  "transferId",                  "walletCode",                  "units"                ],                "properties": {                  "transferId": {                    "type": "string",                    "format": "uuid"                  },                  "walletCode": {                    "type": "string"                  },                  "units": {                    "type": "number",                    "format": "float"                  }                },                "type": "object",                "additionalProperties": false              }            },            "type": "object",            "additionalProperties": false          },          {            "title": "Redemption Effect",            "required": [              "type",              "status"            ],            "properties": {              "type": {                "type": "string",                "enum": [                  "redemption"                ]              },              "status": {                "$ref": "#/components/schemas/EffectStatus"              },              "redemption": {                "required": [                  "issuedRewardId",                  "rewardId"                ],                "properties": {                  "issuedRewardId": {                    "type": "string",                    "format": "uuid"                  },                  "rewardId": {                    "type": "string",                    "format": "uuid"                  },                  "name": {                    "type": "string"                  }                },                "type": "object",                "additionalProperties": false              }            },            "type": "object",            "additionalProperties": false          }        ]      },      "FortuneWheelIssuedReward": {        "properties": {          "rewardId": {            "type": "string",            "format": "uuid"          },          "issuedRewardId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "customerId": {            "type": "string",            "format": "uuid"          },          "status": {            "type": "string"          },          "redemptionDate": {            "type": "string",            "format": "date-time"          },          "customerData": {            "properties": {              "email": {                "type": "string"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "phone": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              },              "address": {                "type": "object"              }            },            "type": "object"          },          "costInPoints": {            "type": "number"          },          "token": {            "type": "string"          },          "rewardType": {            "type": "string",            "example": "material"          },          "actionCause": {            "$ref": "#/components/schemas/ActionCause"          },          "cancelledAt": {            "type": "string",            "format": "date-time"          },          "fortuneWheelStatus": {            "required": [              "drawnAt",              "ruleName",              "effects"            ],            "properties": {              "drawnAt": {                "type": "string",                "format": "date-time"              },              "ruleName": {                "type": "string"              },              "effects": {                "type": "array",                "items": {                  "$ref": "#/components/schemas/EffectResponse"                }              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object"      },      "EffectResponseBasic": {        "oneOf": [          {            "title": "Unit Effect",            "required": [              "type",              "status"            ],            "properties": {              "type": {                "type": "string",                "enum": [                  "unit"                ]              },              "status": {                "$ref": "#/components/schemas/EffectStatus"              },              "transfer": {                "required": [                  "transferId"                ],                "properties": {                  "transferId": {                    "type": "string",                    "format": "uuid"                  }                },                "type": "object",                "additionalProperties": false              }            },            "type": "object",            "additionalProperties": false          },          {            "title": "Redemption Effect",            "required": [              "type",              "status"            ],            "properties": {              "type": {                "type": "string",                "enum": [                  "redemption"                ]              },              "status": {                "$ref": "#/components/schemas/EffectStatus"              },              "redemption": {                "required": [                  "issuedRewardId"                ],                "properties": {                  "issuedRewardId": {                    "type": "string",                    "format": "uuid"                  }                },                "type": "object",                "additionalProperties": false              }            },            "type": "object",            "additionalProperties": false          }        ]      },      "FortuneWheelIssuedRewardBasic": {        "properties": {          "rewardId": {            "type": "string",            "format": "uuid"          },          "issuedRewardId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "customerId": {            "type": "string",            "format": "uuid"          },          "status": {            "type": "string"          },          "redemptionDate": {            "type": "string",            "format": "date-time"          },          "customerData": {            "properties": {              "email": {                "type": "string"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "phone": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              },              "address": {                "type": "object"              }            },            "type": "object"          },          "costInPoints": {            "type": "number"          },          "token": {            "type": "string"          },          "rewardType": {            "type": "string",            "example": "material"          },          "actionCause": {            "$ref": "#/components/schemas/ActionCause"          },          "cancelledAt": {            "type": "string",            "format": "date-time"          },          "fortuneWheelStatus": {            "required": [              "drawnAt",              "ruleName",              "effects"            ],            "properties": {              "drawnAt": {                "type": "string",                "format": "date-time"              },              "ruleName": {                "type": "string"              },              "effects": {                "type": "array",                "items": {                  "$ref": "#/components/schemas/EffectResponseBasic"                }              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object"      },      "IssuedRewardStatusChange": {        "properties": {          "status": {            "type": "string"          },          "comment": {            "type": "string"          },          "updatedAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "RewardPhotoFormType": {        "required": [          "file"        ],        "properties": {          "file": {            "type": "object"          }        },        "type": "object"      },      "RewardCategory": {        "properties": {          "name": {            "type": "string"          },          "rewardCategoryId": {            "type": "string",            "format": "uuid"          },          "active": {            "type": "boolean"          },          "sortOrder": {            "type": "integer"          },          "translations": {            "type": "array",            "items": {              "$ref": "#/components/schemas/RewardCategoryTranslation"            }          }        },        "type": "object"      },      "RewardCategoryTranslation": {        "properties": {          "id": {            "type": "integer"          },          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "locale": {            "type": "string"          },          "translatable": {            "title": "Will be mapped to translatable entity by TranslatableSubscriber",            "oneOf": [              {                "$ref": "#/components/schemas/RewardCategory"              }            ]          }        },        "type": "object"      },      "LocaleTranslation": {        "type": "object"      },      "TranslationsType": {        "required": [          "en"        ],        "properties": {          "en": {            "$ref": "#/components/schemas/LocaleTranslation"          },          "es": {            "$ref": "#/components/schemas/LocaleTranslation"          }        },        "type": "object"      },      "EditRewardCategoryFormType": {        "required": [          "sortOrder",          "translations"        ],        "properties": {          "active": {            "type": "boolean"          },          "sortOrder": {            "type": "integer"          },          "translations": {            "$ref": "#/components/schemas/TranslationsType"          }        },        "type": "object"      },      "RewardCategoryFormType": {        "required": [          "sortOrder",          "translations"        ],        "properties": {          "active": {            "type": "boolean"          },          "sortOrder": {            "type": "integer"          },          "translations": {            "$ref": "#/components/schemas/TranslationsType"          }        },        "type": "object"      },      "SetPasswordFormType": {        "required": [          "plainPassword"        ],        "properties": {          "plainPassword": {            "type": "string",            "format": "password"          }        },        "type": "object"      },      "SegmentResponse": {        "properties": {          "segmentId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "customersCount": {            "type": "integer"          },          "averageTransactionAmount": {            "type": "number",            "format": "float"          },          "averageTransactions": {            "type": "number",            "format": "float"          },          "averageClv": {            "type": "number",            "format": "float"          },          "currency": {            "type": "string"          },          "calculatedAt": {            "description": "The field is added to the segment when the segment is recalculated.",            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "CriterionFormType": {        "required": [          "type"        ],        "properties": {          "type": {            "type": "string",            "enum": [              "bought_through_channel",              "transaction_count",              "average_transaction_amount",              "transaction_percent_in_channel",              "purchase_period",              "bought_labels",              "bought_makers",              "bought_categories",              "anniversary",              "last_purchase_n_days_before",              "last_transaction_between_days",              "last_custom_event_n_days_before",              "last_custom_event_between_days",              "bought_skus",              "transaction_amount",              "transaction_amount_each_day_in_period",              "transaction_amount_in_period",              "transaction_count_in_period",              "transaction_amount_each_day_in_last_n_days",              "transaction_amount_in_last_n_days",              "customer_in_level",              "customer_has_labels",              "customer_with_labels_values",              "customer_list",              "gender",              "city",              "province",              "country",              "postal",              "age",              "campaign_completion",              "customer_csv_list",              "achievement_completion_count",              "achievement_rule_progress",              "customer_in_tiers",              "member_registration_date",              "member_custom_field_value",              "member_custom_field_comparator",              "member_custom_field_arithmetic_comparator",              "member_custom_field_range",              "member_custom_field_flat_array_contains_any",              "member_custom_field_flat_array_contains_all",              "member_custom_field_nested_object_contains_any",              "member_custom_field_nested_object_contains_all",              "member_loyalty_card_number",              "challenge_campaign_completion_count",              "challenge_campaign_milestone_progress"            ]          },          "criterionId": {            "type": "string"          }        },        "type": "object"      },      "SegmentPartFormType": {        "properties": {          "criteria": {            "type": "array",            "items": {              "$ref": "#/components/schemas/CriterionFormType"            }          },          "segmentPartId": {            "type": "string"          }        },        "type": "object"      },      "EditSegmentFormType": {        "required": [          "name"        ],        "properties": {          "name": {            "type": "string"          },          "active": {            "type": "boolean"          },          "description": {            "type": "string"          },          "parts": {            "type": "array",            "items": {              "$ref": "#/components/schemas/SegmentPartFormType"            }          }        },        "type": "object"      },      "Segment": {        "properties": {          "segmentId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "active": {            "type": "boolean"          },          "customersCount": {            "type": "integer"          },          "calculatedAt": {            "type": "string",            "format": "date-time"          },          "averageTransactionAmount": {            "type": "string"          },          "averageTransactions": {            "type": "string"          },          "averageClv": {            "type": "string"          },          "parts": {            "type": "array",            "items": {              "$ref": "#/components/schemas/SegmentPart"            }          },          "createdAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "SegmentPart": {        "properties": {          "segmentPartId": {            "type": "string"          },          "segment": {            "$ref": "#/components/schemas/Segment"          }        },        "type": "object"      },      "CreateSegmentFormType": {        "required": [          "name"        ],        "properties": {          "name": {            "type": "string"          },          "active": {            "type": "boolean"          },          "description": {            "type": "string"          },          "parts": {            "type": "array",            "items": {              "$ref": "#/components/schemas/SegmentPartFormType"            }          }        },        "type": "object"      },      "SegmentCustomer": {        "properties": {          "customerId": {            "type": "string",            "format": "uuid"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "phone": {            "type": "string"          },          "email": {            "type": "string"          },          "birthDate": {            "type": "string",            "format": "date-time"          },          "gender": {            "type": "string"          },          "calculatedAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "Labels": {        "description": "A list of custom attributes used for tagging and describing resources. Each item in the list contains a key-value pair, where `key` is the name of the attribute, and `value` is the value assigned to that attribute.\n",        "type": "array",        "items": {          "required": [            "key",            "value"          ],          "properties": {            "key": {              "description": "The name of the custom attribute.",              "type": "string"            },            "value": {              "description": "The value assigned to the custom attribute.",              "type": "string"            }          },          "type": "object",          "additionalProperties": false        }      },      "TierResponse": {        "required": [          "levelId",          "name",          "hasPhoto",          "storeCode",          "active",          "rewards",          "translations",          "createdAt",          "updatedAt",          "sortOrder",          "isDefault",          "conditions"        ],        "properties": {          "levelId": {            "description": "This field show tier id",            "type": "string",            "format": "uuid"          },          "name": {            "description": "This field show tier name",            "type": "string"          },          "description": {            "description": "This field show tier description",            "type": "string"          },          "hasPhoto": {            "description": "This field show if tier have photo",            "type": "boolean"          },          "storeCode": {            "description": "The field shows what store tier it is in",            "type": "string"          },          "tierSet": {            "description": "This field shows related tier set",            "required": [              "tierSetId",              "name"            ],            "properties": {              "tierSetId": {                "description": "This field shows tier set id",                "type": "string",                "format": "uuid"              },              "name": {                "description": "This field shows tier set name",                "type": "string"              }            },            "type": "object",            "additionalProperties": false          },          "conditions": {            "description": "This field shows conditions that member must meet to be at this tier",            "type": "array",            "items": {              "required": [                "conditionId",                "attribute",                "value"              ],              "properties": {                "conditionId": {                  "type": "string",                  "format": "uuid"                },                "attribute": {                  "description": "Specifies the type of attribute. The possible values are:\n- `activeUnits`: The number of units currently active. - `totalEarnedUnits`: The total number of units earned. - `monthsSinceJoiningProgram`: The number of months since the program was joined. - `totalSpending`: The total amount of spending. - `cumulatedEarnedUnits`: The total number of units earned that will be reset when recalculation occur\n",                  "enum": [                    "activeUnits",                    "totalEarnedUnits",                    "monthsSinceJoiningProgram",                    "totalSpending",                    "cumulatedEarnedUnits"                  ]                },                "value": {                  "description": "This field shows the value that was specified for the attribute",                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "active": {            "description": "The field shows whether the tier is active",            "type": "boolean"          },          "rewards": {            "description": "Lifetime benefits associated with tier.",            "type": "array",            "items": {              "required": [                "rewardId",                "name",                "code",                "active",                "createdAt",                "updatedAt"              ],              "properties": {                "rewardId": {                  "description": "Reward ID.",                  "required": [                    "rewardId"                  ],                  "properties": {                    "rewardId": {                      "type": "string",                      "format": "uuid"                    }                  },                  "type": "object"                },                "name": {                  "description": "Benefit name.",                  "type": "string"                },                "value": {                  "description": "Benefit value.",                  "type": "number",                  "format": "float"                },                "code": {                  "description": "Benefit code.",                  "type": "string"                },                "labels": {                  "$ref": "#/components/schemas/Labels"                },                "active": {                  "description": "Benefit availability",                  "type": "boolean"                },                "startAt": {                  "description": "Benefit availability start date",                  "type": "string",                  "format": "date-time"                },                "endAt": {                  "description": "Benefit availability end date",                  "type": "string",                  "format": "date-time"                },                "createdAt": {                  "description": "Benefit created at date",                  "type": "string",                  "format": "date-time"                },                "updatedAt": {                  "description": "Benefit updated at date",                  "type": "string",                  "format": "date-time"                },                "createdBy": {                  "description": "Benefit created by",                  "type": "string",                  "format": "uuid"                },                "updatedBy": {                  "description": "Benefit updated by",                  "type": "string",                  "format": "uuid"                }              },              "type": "object",              "additionalProperties": false            }          },          "sortOrder": {            "description": "This field shows order of tiers, the higher the number, the higher the tier.",            "type": "number"          },          "isDefault": {            "description": "This field shows whether the tier is the default tier that was created automatically along with the tier set. Tier serves as the starting tier in tie set",            "type": "boolean"          },          "translations": {            "type": "array",            "items": {              "required": [                "id",                "locale"              ],              "properties": {                "id": {                  "type": "integer"                },                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "locale": {                  "type": "string"                }              },              "type": "object"            }          },          "createdAt": {            "description": "tier created at date",            "type": "string",            "format": "date-time"          },          "updatedAt": {            "description": "tier updated at date",            "type": "string",            "format": "date-time"          },          "createdBy": {            "description": "tier created by",            "type": "string",            "format": "uuid"          },          "updatedBy": {            "description": "tier updated by",            "type": "string",            "format": "uuid"          },          "conditionValue": {            "type": "number",            "format": "float",            "deprecated": true          }        },        "type": "object",        "additionalProperties": false      },      "LabelType": {        "required": [          "key",          "value"        ],        "properties": {          "key": {            "type": "string"          },          "value": {            "type": "string"          }        },        "type": "object"      },      "RewardFormType": {        "required": [          "name",          "value",          "code",          "startAt",          "endAt"        ],        "properties": {          "name": {            "type": "string"          },          "value": {            "type": "number"          },          "code": {            "type": "string"          },          "active": {            "type": "boolean"          },          "startAt": {            "type": "string",            "format": "date"          },          "endAt": {            "type": "string",            "format": "date"          },          "labels": {            "type": "array",            "items": {              "$ref": "#/components/schemas/LabelType"            }          }        },        "type": "object"      },      "LevelFormType": {        "required": [          "translations",          "conditionValue",          "rewards"        ],        "properties": {          "translations": {            "$ref": "#/components/schemas/TranslationsType"          },          "active": {            "type": "boolean"          },          "conditionValue": {            "type": "number"          },          "rewards": {            "type": "array",            "items": {              "$ref": "#/components/schemas/RewardFormType"            }          }        },        "type": "object"      },      "Translations": {        "description": "This field is used to save the name and description in the language of your choice.\nYou need to add at least one name in the default language.\n",        "required": [          "en"        ],        "properties": {          "en": {            "required": [              "name"            ],            "properties": {              "name": {                "type": "string"              },              "description": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          },          "pl": {            "required": [              "name"            ],            "properties": {              "name": {                "type": "string"              },              "description": {                "type": "string"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "LevelPhotoFormType": {        "required": [          "file"        ],        "properties": {          "file": {            "type": "object"          }        },        "type": "object"      },      "Downgrade": {        "description": "Downgrade settings",        "properties": {          "mode": {            "description": "Specifies the mode of downgrade. The possible values are:\n- `none`: Downgrade will not occur.\n- `automatic`: Downgrade will occur automatically when the conditions for being at a given tier are not met.\n- `periodic`: Downgrade will occur periodically. If this mode is selected, you must also choose a `period`.\n",            "type": "string",            "enum": [              "none",              "automatic",              "periodic"            ]          },          "period": {            "description": "Specifies the period for periodic downgrades. This is only available when the mode is set to `periodic`.\n- `registration_anniversary`: Downgrade occurs annually on the anniversary of your registration date. For example,  if you registered on 2020-10-10, the next downgrade will take place on 2025-10-10, followed by 2026-10-10, and so on.\n- `annual_recalculation_on_chosen_dates`: Allows you to specify a list of dates on which the downgrade will occur every year. For instance, if you add 03-10 and 07-15, downgrades will happen annually on March 10 and July 15.\n- `recalculation_every_month_after_tier_promotion`: Enables you to set a specific interval (in months) after the last tier promotion for the downgrade to occur. For example,  if your promotion date is 2025-10-10 and the interval is set to 2 months, your downgrade date will be 2025-12-10.\n",            "type": "string",            "enum": [              "registration_anniversary",              "annual_recalculation_on_chosen_dates",              "recalculation_every_month_after_tier_promotion",              "yearly",              "monthly",              "weekly"            ]          },          "recalculationDates": {            "description": "Specifies dates when recalculation will be annually started. This is only available when the period is set to `annual_recalculation_on_chosen_dates`.\n",            "type": "array",            "items": {              "type": "string",              "example": "03-10"            }          },          "interval": {            "description": "Specifies the number of months that must pass after the last tier promotion to start downgrade. This is only available when the period is set to `recalculation_every_month_after_tier_promotion`.\n",            "type": "integer",            "example": 2          }        },        "type": "object",        "additionalProperties": false      },      "TierSetResponseList": {        "required": [          "tierSetId",          "name",          "translations",          "active",          "conditions",          "downgrade",          "createdAt",          "updatedAt",          "isMigrated",          "tiers",          "labels",          "isDefault"        ],        "properties": {          "tierSetId": {            "description": "Tier set id",            "type": "string",            "format": "uuid"          },          "name": {            "description": "Tier set name",            "type": "string"          },          "description": {            "description": "Tier set description",            "type": "string"          },          "active": {            "description": "The field shows whether the tier set is active",            "type": "boolean"          },          "createdAt": {            "description": "Tier set created at date",            "type": "string",            "format": "date-time"          },          "updatedAt": {            "description": "Tier set updated at date",            "type": "string",            "format": "date-time"          },          "labels": {            "$ref": "#/components/schemas/Labels"          },          "conditions": {            "description": "Conditions are determined by the tier set configuration",            "type": "array",            "items": {              "required": [                "id",                "attribute"              ],              "properties": {                "id": {                  "type": "string",                  "format": "uuid"                },                "attribute": {                  "description": "Specifies the type of attribute. The possible values are:\n- `activeUnits`: The number of units currently active. - `totalEarnedUnits`: The total number of units earned. - `monthsSinceJoiningProgram`: The number of months since the program was joined. - `totalSpending`: The total amount of spending. - `cumulatedEarnedUnits`: The total number of units earned that will be reset when recalculation occur\n",                  "type": "string",                  "enum": [                    "activeUnits",                    "totalEarnedUnits",                    "monthsSinceJoiningProgram",                    "totalSpending",                    "cumulatedEarnedUnits"                  ]                },                "walletType": {                  "description": "This field occurs for attributes related to units",                  "type": "string",                  "example": "default"                }              },              "type": "object",              "additionalProperties": false            }          },          "tiers": {            "description": "This field return tiers belong to tier set",            "type": "array",            "items": {              "required": [                "levelId",                "name",                "active"              ],              "properties": {                "levelId": {                  "type": "string",                  "format": "uuid"                },                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "active": {                  "description": "The field shows whether the tier is active"                }              },              "type": "object",              "additionalProperties": false            }          },          "translations": {            "$ref": "#/components/schemas/Translations"          },          "isMigrated": {            "description": "This field shows whether the tier set has been migrated from the old tier system",            "type": "boolean"          },          "isDefault": {            "description": "This field shows which tier set was added first, which means that the tier set is default",            "type": "boolean"          },          "downgrade": {            "$ref": "#/components/schemas/Downgrade"          }        },        "type": "object",        "additionalProperties": false      },      "PostTierSet": {        "required": [          "tierSet"        ],        "properties": {          "tierSet": {            "required": [              "translations",              "conditions"            ],            "properties": {              "translations": {                "$ref": "#/components/schemas/Translations"              },              "active": {                "description": "The field determines whether the tier set will be active",                "type": "boolean"              },              "labels": {                "$ref": "#/components/schemas/Labels"              },              "conditions": {                "description": "Conditions settings",                "type": "array",                "items": {                  "required": [                    "attribute"                  ],                  "properties": {                    "attribute": {                      "description": "Specifies the type of attribute. The possible values are:\n- `activeUnits`: The number of units currently active. - `totalEarnedUnits`: The total number of units earned. - `monthsSinceJoiningProgram`: The number of months since the program was joined. - `totalSpending`: The total amount of spending. - `cumulatedEarnedUnits`: The total number of units earned that will be reset when recalculation occur\n",                      "type": "string",                      "enum": [                        "activeUnits",                        "totalEarnedUnits",                        "monthsSinceJoiningProgram",                        "totalSpending",                        "cumulatedEarnedUnits"                      ]                    },                    "walletType": {                      "description": "This field is only required for attributes related to units",                      "type": "string",                      "example": "default"                    }                  },                  "type": "object",                  "additionalProperties": false                },                "example": [                  {                    "attribute": "activeUnits",                    "walletType": "default"                  },                  {                    "attribute": "totalEarnedUnits",                    "walletType": "default"                  },                  {                    "attribute": "monthsSinceJoiningProgram"                  }                ]              },              "downgrade": {                "$ref": "#/components/schemas/Downgrade"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "Transaction": {        "properties": {          "grossValue": {            "type": "number",            "format": "float",            "example": 3          },          "metrics": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "value": {                  "type": "number",                  "format": "float",                  "example": 1                },                "calculatedAt": {                  "format": "date-time"                }              },              "type": "object"            }          },          "transactionId": {            "type": "string",            "format": "uuid"          },          "customerId": {            "type": "string",            "format": "uuid"          },          "customerData": {            "properties": {              "customerId": {                "type": "string",                "format": "uuid"              },              "email": {                "type": "string",                "format": "email",                "example": "example@example.com"              },              "name": {                "type": "string"              },              "nip": {                "type": "string"              },              "phone": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              },              "address": {                "$ref": "#/components/schemas/CustomerAddressFormType"              }            },            "type": "object"          },          "items": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "quantity": {                  "description": "The quantity of the product. This field is required if 'highPrecisionQuantity' is not provided. It is recommended to use 'highPrecisionQuantity', as 'quantity' is deprecated.",                  "type": "integer",                  "deprecated": true                },                "highPrecisionQuantity": {                  "description": "The precise quantity of the product, with a maximum of 3 decimal places. This field is required if 'quantity' is not provided.",                  "type": "number",                  "format": "float",                  "example": 1.125                },                "grossValue": {                  "type": "number",                  "format": "float",                  "example": 1                },                "category": {                  "type": "string"                },                "labels": {                  "type": "array",                  "items": {                    "properties": {                      "key": {                        "type": "string",                        "minLength": 1                      },                      "value": {                        "type": "string",                        "minLength": 1                      }                    },                    "type": "object"                  }                },                "maker": {                  "type": "string"                },                "sku": {                  "type": "string"                }              },              "type": "object"            }          },          "header": {            "properties": {              "documentNumber": {                "description": "Specifies the document number used in the transaction.",                "type": "string"              },              "documentType": {                "type": "string",                "enum": [                  "sell",                  "return"                ]              },              "linkedDocumentNumber": {                "description": "Field is used with “documentType”: “return”",                "type": "string"              },              "purchasedAt": {                "type": "string",                "format": "date-time"              },              "purchasePlace": {                "type": "string"              },              "excludedDeliverySKUs": {                "type": "array",                "items": {}              },              "excludedSKUs": {                "type": "array",                "items": {}              },              "excludedCategories": {                "type": "array",                "items": {}              },              "labels": {                "type": "array",                "items": {}              }            },            "type": "object"          },          "matched": {            "type": "boolean"          },          "currency": {            "type": "string"          },          "pointsEarned": {            "type": "integer"          },          "unitsDeducted": {            "type": "integer"          },          "channelId": {            "type": "string",            "format": "uuid"          },          "channelName": {            "type": "string"          },          "assignedToCustomerAt": {            "type": "string",            "format": "date-time",            "nullable": true          }        },        "type": "object"      },      "TransactionLabelFormType": {        "required": [          "key",          "value"        ],        "properties": {          "key": {            "type": "string"          },          "value": {            "type": "string"          }        },        "type": "object"      },      "PostTransaction": {        "properties": {          "transaction": {            "required": [              "header",              "items"            ],            "properties": {              "customerData": {                "properties": {                  "customerId": {                    "type": "string"                  },                  "address": {                    "$ref": "#/components/schemas/CustomerAddressFormType"                  },                  "email": {                    "type": "string"                  },                  "loyaltyCardNumber": {                    "type": "string"                  },                  "name": {                    "type": "string"                  },                  "nip": {                    "type": "string"                  },                  "phone": {                    "type": "string"                  }                },                "type": "object",                "additionalProperties": false              },              "items": {                "type": "array",                "items": {                  "required": [                    "sku",                    "name",                    "grossValue",                    "category"                  ],                  "properties": {                    "category": {                      "type": "string"                    },                    "grossValue": {                      "type": "number",                      "format": "float"                    },                    "maker": {                      "type": "string"                    },                    "name": {                      "type": "string"                    },                    "quantity": {                      "description": "The quantity of the product. This field is required if 'highPrecisionQuantity' is not provided. It is recommended to use 'highPrecisionQuantity', as 'quantity' is deprecated.",                      "type": "integer",                      "deprecated": true                    },                    "highPrecisionQuantity": {                      "description": "The precise quantity of the product, with a maximum of 3 decimal places. This field is required if 'quantity' is not provided.",                      "type": "number",                      "format": "float"                    },                    "sku": {                      "type": "string"                    },                    "labels": {                      "type": "array",                      "items": {                        "$ref": "#/components/schemas/TransactionLabelFormType"                      }                    }                  },                  "type": "object",                  "additionalProperties": false                }              },              "channelId": {                "type": "string",                "format": "uuid"              },              "header": {                "required": [                  "documentNumber",                  "purchasedAt"                ],                "properties": {                  "documentNumber": {                    "description": "Specifies the document number used in the transaction.",                    "type": "string"                  },                  "linkedDocumentNumber": {                    "description": "Used only for return transactions and refers to the original ‘sell’ document.",                    "type": "string"                  },                  "documentType": {                    "type": "string",                    "enum": [                      "sell",                      "return"                    ]                  },                  "labels": {                    "type": "array",                    "items": {                      "$ref": "#/components/schemas/TransactionLabelFormType"                    }                  },                  "purchasedAt": {                    "type": "string"                  },                  "purchasePlace": {                    "type": "string"                  }                },                "type": "object",                "additionalProperties": false              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "AddLabelsFormType": {        "required": [          "labels"        ],        "properties": {          "labels": {            "type": "array",            "items": {              "$ref": "#/components/schemas/UserLabelFormType"            }          }        },        "type": "object"      },      "RemoveLabelsFormType": {        "required": [          "labels"        ],        "properties": {          "labels": {            "type": "array",            "items": {              "$ref": "#/components/schemas/UserLabelFormType"            }          }        },        "type": "object"      },      "ManuallyAssignCustomerToTransactionFormType": {        "required": [          "transactionDocumentNumber"        ],        "properties": {          "transactionDocumentNumber": {            "type": "string"          },          "customerId": {            "type": "string",            "example": "7239e6f7-e52e-466b-8c24-699709b64076"          },          "customerLoyaltyCardNumber": {            "type": "string"          },          "customerPhoneNumber": {            "type": "string"          }        },        "type": "object"      },      "CustomersIdentificationConfiguration": {},      "AchievementBasicData": {        "properties": {          "achievementId": {            "description": "Achievement Identity",            "type": "string",            "example": "00000000-0000-0000-0000-000000000000"          },          "name": {            "type": "string"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "badgeTypeId": {            "type": "string"          }        },        "type": "object"      },      "ActivityFormType": {        "required": [          "operator"        ],        "properties": {          "operator": {            "type": "string",            "enum": [              "is_after",              "is_before",              "is_between",              "is_not_between",              "is_day_of_week",              "is_month_of_year",              "is_day_of_month",              "is_time_between"            ]          }        },        "type": "object"      },      "PeriodFormType": {        "required": [          "type"        ],        "properties": {          "type": {            "type": "string",            "enum": [              "overall",              "year",              "month",              "week",              "day",              "last_day"            ]          }        },        "type": "object"      },      "CompleteRuleFormType": {        "required": [          "period",          "periodGoal"        ],        "properties": {          "period": {            "$ref": "#/components/schemas/PeriodFormType"          },          "periodGoal": {            "type": "number"          },          "uniqueAttribute": {            "type": "string"          }        },        "type": "object"      },      "IntervalFormType": {        "required": [          "type",          "value"        ],        "properties": {          "type": {            "type": "string",            "enum": [              "calendarHours",              "calendarDays",              "calendarWeeks",              "calendarMonths",              "calendarYears"            ]          },          "value": {            "type": "integer"          }        },        "type": "object"      },      "LimitFormType": {        "required": [          "value"        ],        "properties": {          "value": {            "type": "integer"          },          "interval": {            "$ref": "#/components/schemas/IntervalFormType"          }        },        "type": "object"      },      "RuleTranslationFormType": {        "required": [          "en"        ],        "properties": {          "en": {            "$ref": "#/components/schemas/FormType"          }        },        "type": "object"      },      "RuleFormType": {        "required": [          "trigger",          "type",          "completeRule",          "translations"        ],        "properties": {          "trigger": {            "type": "string",            "enum": [              "transaction",              "custom_event"            ]          },          "type": {            "type": "string",            "enum": [              "direct",              "referral"            ]          },          "completeRule": {            "$ref": "#/components/schemas/CompleteRuleFormType"          },          "limit": {            "$ref": "#/components/schemas/LimitFormType"          },          "translations": {            "$ref": "#/components/schemas/RuleTranslationFormType"          }        },        "type": "object"      },      "CreateAchievementFormType": {        "required": [          "translations",          "activity",          "rules"        ],        "properties": {          "translations": {            "$ref": "#/components/schemas/TranslationsType"          },          "activity": {            "$ref": "#/components/schemas/ActivityFormType"          },          "active": {            "type": "boolean"          },          "rules": {            "type": "array",            "items": {              "$ref": "#/components/schemas/RuleFormType"            }          },          "limit": {            "$ref": "#/components/schemas/LimitFormType"          }        },        "type": "object"      },      "PeriodTypeFormType": {        "type": "object"      },      "ConditionType": {        "required": [          "attribute",          "operator"        ],        "properties": {          "attribute": {            "type": "string"          },          "operator": {            "type": "string",            "enum": [              "expression",              "is_equal",              "has_at_least_one_label",              "contains",              "not_contains",              "contains_one_of",              "not_contains_one_of",              "is_not_equal",              "is_not_one_of",              "is_one_of",              "matches_regex",              "is_greater",              "is_greater_or_equal",              "is_less",              "is_less_or_equal",              "ends_with",              "starts_with",              "is_after",              "is_before",              "is_between",              "is_day_of_week",              "is_month_of_year",              "is_not_between",              "is_day_of_month",              "is_time_between",              "is_number_between"            ]          }        },        "type": "object"      },      "MemberAchievementProgress": {        "properties": {          "completedCount": {            "type": "integer"          },          "rules": {            "type": "array",            "items": {              "properties": {                "achievementRuleId": {                  "type": "string"                },                "periodGoal": {                  "type": "number",                  "format": "float"                },                "currentPeriodValue": {                  "type": "number",                  "format": "float"                },                "consecutivePeriods": {                  "type": "integer"                },                "completedConsecutivePeriods": {                  "type": "integer"                },                "periodType": {                  "type": "string"                },                "type": {                  "type": "string"                },                "trigger": {                  "type": "string"                },                "periodValue": {                  "type": "number",                  "format": "float"                }              },              "type": "object"            }          }        },        "type": "object"      },      "MemberAchievement": {        "properties": {          "achievementId": {            "type": "string",            "format": "uuid"          },          "achievementName": {            "type": "string"          },          "achievementDescription": {            "type": "string"          },          "limitReached": {            "type": "boolean"          },          "memberProgress": {            "$ref": "#/components/schemas/MemberAchievementProgress"          }        },        "type": "object"      },      "WebhookSubscription": {        "properties": {          "webhookSubscriptionId": {            "type": "string",            "format": "uuid"          },          "eventName": {            "type": "string"          },          "url": {            "type": "string"          },          "headerName": {            "type": "string",            "deprecated": true          },          "headerValue": {            "type": "string",            "deprecated": true          },          "legacy": {            "type": "boolean",            "deprecated": true          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "destinationType": {            "type": "string"          },          "hmacEnabled": {            "type": "boolean"          },          "hmacSecretKeyVersion": {            "type": "integer"          },          "hmacSecretRotatedAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "WebhookHeader": {        "properties": {          "headerName": {            "description": "Name of the header",            "type": "string"          },          "headerValue": {            "description": "Value of the header",            "type": "string"          }        },        "type": "object"      },      "PostRestWebhookSubscriptionRequestBody": {        "title": "REST Webhook",        "properties": {          "webhookSubscription": {            "required": [              "eventName",              "url"            ],            "properties": {              "eventName": {                "description": "Name of the event to subscribe to (e.g. \"AchievementsWereProcessed\")",                "type": "string"              },              "destinationType": {                "description": "Type of destination for the webhook",                "type": "string",                "enum": [                  "rest"                ]              },              "url": {                "description": "URL to send the webhook to. HTTPS is required when hmacEnabled is true.",                "type": "string"              },              "hmacEnabled": {                "description": "Enable HMAC signing for webhook payloads. When true, HTTPS URL is required. A secret key is auto-generated and returned once in the response.",                "type": "boolean",                "default": false              },              "headerName": {                "description": "Name of the header (deprecated, use headers instead)",                "type": "string",                "deprecated": true              },              "headerValue": {                "description": "Value of the header (deprecated, use headers instead)",                "type": "string",                "deprecated": true              },              "headers": {                "description": "Headers to include in the webhook request (for REST destination type)",                "type": "array",                "items": {                  "$ref": "#/components/schemas/WebhookHeader"                }              }            },            "type": "object"          }        },        "type": "object"      },      "PostQueueWebhookSubscriptionRequestBody": {        "title": "Queue Webhook",        "properties": {          "webhookSubscription": {            "required": [              "eventName",              "url",              "queueKey",              "queueSecretKey"            ],            "properties": {              "eventName": {                "description": "Name of the event to subscribe to (e.g. \"AchievementsWereProcessed\")",                "type": "string"              },              "destinationType": {                "description": "Type of destination for the webhook",                "type": "string",                "enum": [                  "queue"                ]              },              "url": {                "description": "URL to send the webhook to",                "type": "string"              },              "queueKey": {                "description": "Queue Access Key (for QUEUE destination type)",                "type": "string"              },              "queueSecretKey": {                "description": "Queue Secret Access Key (for QUEUE destination type)",                "type": "string"              },              "queueEncryptionKey": {                "description": "RSA public key in PEM format for encrypting webhook messages",                "type": "string",                "format": "textarea"              }            },            "type": "object"          }        },        "type": "object"      },      "Limits": {        "type": "object"      },      "WalletTypeBasicData": {        "properties": {          "walletTypeId": {            "type": "string",            "format": "uuid"          },          "code": {            "type": "string"          },          "name": {            "type": "string"          },          "unitSingularName": {            "type": "string"          },          "unitPluralName": {            "type": "string"          },          "active": {            "type": "boolean"          },          "isDefault": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "limits": {            "$ref": "#/components/schemas/Limits"          }        },        "type": "object"      },      "Account2": {        "properties": {          "earnedUnits": {            "type": "number",            "format": "float"          },          "transferredUnits": {            "type": "number",            "format": "float"          },          "spentUnits": {            "type": "number",            "format": "float"          },          "activeUnits": {            "type": "number",            "format": "float"          },          "lockedUnits": {            "type": "number",            "format": "float"          },          "blockedUnits": {            "type": "number",            "format": "float"          },          "expiredUnits": {            "type": "number",            "format": "float"          }        },        "type": "object"      },      "Wallet": {        "properties": {          "walletType": {            "$ref": "#/components/schemas/WalletTypeBasicData"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "account": {            "$ref": "#/components/schemas/Account2"          },          "unitsLimitUsed": {            "type": "number",            "format": "float"          },          "unitsLimitRemaining": {            "type": "number",            "format": "float"          }        },        "type": "object"      },      "SingleViewHeader": {        "properties": {          "totalEngagement": {            "type": "integer"          },          "engagedMembers": {            "type": "integer"          }        },        "type": "object"      },      "SingleView": {        "properties": {          "campaignId": {            "type": "string",            "format": "uuid"          },          "intervalStartDate": {            "type": "string",            "format": "date-time"          },          "intervalEndDate": {            "type": "string",            "format": "date-time"          },          "header": {            "$ref": "#/components/schemas/SingleViewHeader"          },          "data": {            "type": "object",            "additionalProperties": true          },          "comparativePeriodData": {            "type": "object",            "deprecated": true,            "additionalProperties": true          }        },        "type": "object"      },      "Export": {        "properties": {          "exportId": {            "type": "string",            "format": "uuid"          },          "type": {            "type": "string",            "enum": [              "campaignCode",              "member",              "memberTier",              "memberSegment",              "rewardFulfillment"            ]          },          "status": {            "type": "string",            "enum": [              "pending",              "done",              "failed",              "error"            ]          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "finishedAt": {            "type": "string",            "format": "date-time"          },          "criteria": {            "type": "string"          },          "exportedRows": {            "type": "integer"          },          "message": {            "type": "string"          }        },        "type": "object"      },      "ExportBasicData": {        "properties": {          "exportId": {            "type": "string",            "format": "uuid"          },          "type": {            "type": "string",            "enum": [              "campaignCode",              "member",              "memberTier",              "memberSegment",              "rewardFulfillment"            ]          },          "status": {            "type": "string",            "enum": [              "pending",              "done",              "failed",              "error"            ]          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "finishedAt": {            "type": "string",            "format": "date-time"          },          "criteria": {            "type": "string"          },          "exportedRows": {            "type": "integer"          },          "message": {            "type": "string"          }        },        "type": "object"      },      "DateTimeCriteriaField": {        "oneOf": [          {            "description": "Date and time value",            "type": "string",            "format": "date-time"          },          {            "description": "Date and time value with optional comparison operators like lt (less than), gt (greater than), etc.",            "properties": {              "lt": {                "description": "Less than the specified date-time",                "type": "string",                "format": "date-time"              },              "lte": {                "description": "Less than or equal to the specified date-time",                "type": "string",                "format": "date-time"              },              "gt": {                "description": "Greater than the specified date-time",                "type": "string",                "format": "date-time"              },              "gte": {                "description": "Greater than or equal to the specified date-time",                "type": "string",                "format": "date-time"              },              "eq": {                "description": "Equal to the specified date-time",                "type": "string",                "format": "date-time"              }            },            "type": "object"          }        ]      },      "ExportPage": {        "description": "Number of page with results, starts from 1",        "type": "integer",        "default": 1,        "minimum": 1,        "example": 1      },      "ExportItemsOnPage": {        "description": "Items on one page",        "type": "integer",        "default": 10,        "maximum": 50,        "minimum": 1,        "example": 25      },      "ExportOrderBy": {        "description": "Sorting order. If sorting is not chosen, the rows will be returned in an unspecified order. Sort order: * `asc` - Ascending, from A to Z * `desc` - Descending, from Z to A",        "type": "object",        "example": {          "fieldName": "desc"        },        "additionalProperties": {          "type": "string",          "enum": [            "asc",            "desc"          ]        }      },      "ExportCampaignCodeTypeRequestBody": {        "title": "campaignCode",        "properties": {          "campaignCode": {            "required": [              "campaignId"            ],            "properties": {              "campaignId": {                "type": "string",                "format": "uuid"              },              "code": {                "type": "string"              },              "status": {                "type": "string",                "enum": [                  "unused",                  "used"                ]              },              "codeId": {                "type": "string",                "format": "uuid"              },              "usedByMemberId": {                "type": "string",                "format": "uuid"              },              "createdAt": {                "allOf": [                  {                    "$ref": "#/components/schemas/DateTimeCriteriaField"                  },                  {                    "description": "Date and time when the member was registered"                  }                ]              },              "usedAt": {                "allOf": [                  {                    "$ref": "#/components/schemas/DateTimeCriteriaField"                  },                  {                    "description": "Date and time when the member was registered"                  }                ]              },              "_page": {                "$ref": "#/components/schemas/ExportPage"              },              "_itemsOnPage": {                "$ref": "#/components/schemas/ExportItemsOnPage"              },              "_orderBy": {                "$ref": "#/components/schemas/ExportOrderBy"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "ExportMemberTypeRequestBody": {        "title": "member",        "properties": {          "member": {            "properties": {              "customerId": {                "type": "string",                "format": "uuid"              },              "active": {                "type": "boolean"              },              "firstName": {                "type": "string"              },              "lastName": {                "type": "string"              },              "gender": {                "type": "string",                "enum": [                  "female",                  "male",                  "not_disclosed"                ]              },              "phone": {                "type": "string"              },              "email": {                "type": "string",                "format": "email"              },              "loyaltyCardNumber": {                "type": "string"              },              "createdAt": {                "type": "string",                "format": "date-time"              },              "birthDate": {                "type": "string",                "format": "date-time"              },              "agreement1": {                "type": "boolean"              },              "agreement2": {                "type": "boolean"              },              "agreement3": {                "type": "boolean"              },              "updatedAt": {                "type": "string",                "format": "date-time"              },              "transactionsCount": {                "type": "integer"              },              "transactionsAmount": {                "type": "number",                "format": "float"              },              "transactionsAmountWithoutDeliveryCosts": {                "type": "number",                "format": "float"              },              "amountExcludedForLevel": {                "type": "number",                "format": "float"              },              "averageTransactionAmount": {                "type": "number",                "format": "float"              },              "levelAchievementDate": {                "type": "string",                "format": "date-time"              },              "labels": {                "type": "array",                "items": {                  "type": "string"                }              },              "lastTransactionDate": {                "type": "string",                "format": "date-time"              },              "registeredAt": {                "allOf": [                  {                    "$ref": "#/components/schemas/DateTimeCriteriaField"                  },                  {                    "description": "Date and time when the member was registered"                  }                ]              },              "firstTransactionDate": {                "type": "string",                "format": "date-time"              },              "levelId": {                "type": "string",                "format": "uuid"              },              "manuallyAssignedLevelId": {                "type": "string",                "format": "uuid"              },              "referralToken": {                "type": "string"              },              "address:street": {                "type": "string"              },              "address:address1": {                "type": "string"              },              "address:address2": {                "type": "string"              },              "address:province": {                "type": "string"              },              "address:city": {                "type": "string"              },              "address:postal": {                "type": "string"              },              "address:country": {                "type": "string"              },              "defaultAccount:activePoints": {                "type": "number",                "format": "float"              },              "defaultAccount:transferredPoints": {                "type": "number",                "format": "float"              },              "defaultAccount:lockedPoints": {                "type": "number",                "format": "float"              },              "defaultAccount:expiredPoints": {                "type": "number",                "format": "float"              },              "defaultAccount:spentPoints": {                "type": "number",                "format": "float"              },              "defaultAccount:earnedPoints": {                "type": "number",                "format": "float"              },              "defaultAccount:blockedPoints": {                "type": "number",                "format": "float"              },              "emailOrPhone": {                "type": "string"              },              "_page": {                "$ref": "#/components/schemas/ExportPage"              },              "_itemsOnPage": {                "$ref": "#/components/schemas/ExportItemsOnPage"              },              "_orderBy": {                "$ref": "#/components/schemas/ExportOrderBy"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "ExportMemberTierTypeRequestBody": {        "title": "memberTier",        "properties": {          "memberTier": {            "required": [              "tierId"            ],            "properties": {              "tierId": {                "type": "string",                "format": "uuid"              },              "_page": {                "$ref": "#/components/schemas/ExportPage"              },              "_itemsOnPage": {                "$ref": "#/components/schemas/ExportItemsOnPage"              },              "_orderBy": {                "$ref": "#/components/schemas/ExportOrderBy"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "ExportMemberSegmentTypeRequestBody": {        "title": "memberSegment",        "properties": {          "memberSegment": {            "required": [              "segmentId"            ],            "properties": {              "segmentId": {                "type": "string",                "format": "uuid"              },              "_page": {                "$ref": "#/components/schemas/ExportPage"              },              "_itemsOnPage": {                "$ref": "#/components/schemas/ExportItemsOnPage"              },              "_orderBy": {                "$ref": "#/components/schemas/ExportOrderBy"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "ExportRewardFulfillmentTypeRequestBody": {        "title": "rewardFulfillment",        "properties": {          "rewardFulfillment": {            "properties": {              "rewardId": {                "type": "string",                "format": "uuid"              },              "name": {                "type": "string"              },              "rewardType": {                "type": "string"              },              "token": {                "type": "string"              },              "status": {                "type": "array",                "items": {                  "type": "string"                }              },              "costInPoints": {                "type": "number",                "format": "float"              },              "redemptionDate": {                "type": "string",                "format": "date-time"              },              "customerId": {                "type": "string",                "format": "uuid"              },              "customerData:email": {                "type": "string"              },              "customerData:firstName": {                "type": "string"              },              "customerData:lastName": {                "type": "string"              },              "customerData:phone": {                "type": "string"              },              "customerData:loyaltyCardNumber": {                "type": "string"              },              "_page": {                "$ref": "#/components/schemas/ExportPage"              },              "_itemsOnPage": {                "$ref": "#/components/schemas/ExportItemsOnPage"              },              "_orderBy": {                "$ref": "#/components/schemas/ExportOrderBy"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "ExportId": {        "required": [          "exportId"        ],        "properties": {          "exportId": {            "type": "string",            "format": "uuid"          }        },        "type": "object"      },      "TierSetMemberProgress": {        "required": [          "tierSetId",          "tierSetName",          "downgrade",          "manually",          "nextTierCurrentProgress"        ],        "properties": {          "currentTierId": {            "description": "The field displays the member's current tier id",            "type": "string",            "format": "uuid"          },          "currentTierName": {            "description": "The field displays the member's current tier name",            "type": "string"          },          "nextTierId": {            "description": "The field displays the member's next tier id",            "type": "string",            "format": "uuid"          },          "nextTierName": {            "description": "The field displays the member's next tier name",            "type": "string"          },          "tierSetId": {            "description": "The field will show the tierSet id in which the tier is located",            "type": "string",            "format": "uuid"          },          "tierSetName": {            "description": "The field will show the tierSet id in which the tier is located",            "type": "string"          },          "currentProgress": {            "description": "Shows you your current progress percentage and what progress you are missing to reach the next tier",            "type": "number",            "format": "double"          },          "lastPromotionAt": {            "description": "Shows when the last promotion to a higher tier occurred",            "type": "string",            "format": "date-time"          },          "lastDowngradeAt": {            "description": "Shows when the last downgrade to a lower tier occurred",            "type": "string",            "format": "date-time"          },          "nextRecalculationAt": {            "description": "Shows the date of the next recalculation",            "type": "string",            "format": "date-time"          },          "manually": {            "description": "Shows whether the current tier has been assigned manually",            "type": "boolean"          },          "downgrade": {            "description": "Shows downgrade mode",            "type": "string"          },          "nextTierCurrentProgress": {            "type": "array",            "items": {              "required": [                "conditionId",                "attribute"              ],              "properties": {                "conditionId": {                  "description": "Shows conditions id",                  "type": "string",                  "format": "uuid"                },                "attribute": {                  "description": "The field shows condition attribute",                  "type": "string",                  "enum": [                    "activeUnits",                    "totalEarnedUnits",                    "monthsSinceJoiningProgram",                    "totalSpending",                    "cumulatedEarnedUnits"                  ]                },                "currentValue": {                  "description": "The field shows your current value for condition attribute",                  "type": "number",                  "format": "float"                },                "valueGoal": {                  "description": "The field shows what value to aim for to reach the next level",                  "type": "number",                  "format": "float"                },                "walletType": {                  "description": "This field shows chosen wallet only for attributes related to units",                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          }        },        "type": "object",        "additionalProperties": false      },      "WebhookHeader2": {        "properties": {          "headerName": {            "type": "string"          },          "headerValue": {            "type": "string"          }        },        "type": "object"      },      "WebhookSubscriptionDetails": {        "properties": {          "webhookSubscriptionId": {            "type": "string",            "format": "uuid"          },          "eventName": {            "type": "string"          },          "url": {            "type": "string"          },          "headerName": {            "description": "Use 'headers' field instead.",            "type": "string",            "deprecated": true          },          "headerValue": {            "description": "Use 'headers' field instead.",            "type": "string",            "deprecated": true          },          "headers": {            "type": "array",            "items": {              "$ref": "#/components/schemas/WebhookHeader2"            }          },          "legacy": {            "type": "boolean",            "deprecated": true          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "destinationType": {            "type": "string"          },          "hmacEnabled": {            "type": "boolean"          },          "hmacSecretKeyVersion": {            "type": "integer"          },          "hmacSecretRotatedAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "PutRestWebhookSubscriptionRequestBody": {        "title": "Update REST Webhook",        "properties": {          "webhookSubscription": {            "required": [              "url"            ],            "properties": {              "destinationType": {                "description": "Type of destination for the webhook",                "type": "string",                "enum": [                  "rest"                ]              },              "url": {                "description": "URL to send the webhook to. HTTPS is required when hmacEnabled is true.",                "type": "string"              },              "hmacEnabled": {                "description": "Enable or disable HMAC signing. When true, HTTPS URL is required. When omitted, HMAC state is not changed. A secret key is auto-generated and returned once when enabling.",                "type": "boolean"              },              "headerName": {                "description": "Name of the header (deprecated, use headers instead)",                "type": "string",                "deprecated": true              },              "headerValue": {                "description": "Value of the header (deprecated, use headers instead)",                "type": "string",                "deprecated": true              },              "headers": {                "description": "Headers to include in the webhook request (for REST destination type)",                "type": "array",                "items": {                  "$ref": "#/components/schemas/WebhookHeader"                }              }            },            "type": "object"          }        },        "type": "object"      },      "PutQueueWebhookSubscriptionRequestBody": {        "title": "Update Queue Webhook",        "properties": {          "webhookSubscription": {            "required": [              "url",              "queueKey",              "queueSecretKey"            ],            "properties": {              "destinationType": {                "description": "Type of destination for the webhook",                "type": "string",                "enum": [                  "queue"                ]              },              "url": {                "description": "URL to send the webhook to",                "type": "string"              },              "queueKey": {                "description": "Queue Access Key (for QUEUE destination type)",                "type": "string"              },              "queueSecretKey": {                "description": "Queue Secret Access Key (for QUEUE destination type)",                "type": "string"              },              "queueEncryptionKey": {                "description": "RSA public key in PEM format for encrypting webhook messages",                "type": "string",                "format": "textarea"              }            },            "type": "object"          }        },        "type": "object"      },      "PutWebhookSubscriptionHmacEnabledResponse": {        "properties": {          "hmacSecretKey": {            "description": "One-time plaintext HMAC secret key (whsec_ prefix + 64 hex chars). Store securely — this key will never be shown again.",            "type": "string",            "example": "whsec_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2"          },          "hmacSecretKeyWarning": {            "description": "Warning message about one-time key display.",            "type": "string",            "example": "This key will only be shown once. Store it securely."          }        },        "type": "object"      },      "NumericCriteriaField": {        "oneOf": [          {            "description": "Date and time value",            "type": "integer"          },          {            "description": "Number value with optional comparison operators like lt (less than), gt (greater than), etc.",            "properties": {              "lt": {                "description": "Less than the specified number",                "type": "integer"              },              "lte": {                "description": "Less than or equal to the specified number",                "type": "integer"              },              "gt": {                "description": "Greater than the specified number",                "type": "integer"              },              "gte": {                "description": "Greater than or equal to the specified number",                "type": "integer"              },              "eq": {                "description": "Equal to the specified number",                "type": "integer"              }            },            "type": "object"          }        ]      },      "criteriaObject": {        "properties": {          "pending": {            "type": "boolean"          },          "createdAt": {            "$ref": "#/components/schemas/DateTimeCriteriaField"          },          "transferId": {            "type": "string",            "format": "uuid"          },          "walletId": {            "type": "string",            "format": "uuid"          },          "type": {            "type": "string",            "enum": [              "adding",              "spending",              "expired",              "blocked",              "p2p_adding",              "p2p_spending"            ]          },          "value": {            "$ref": "#/components/schemas/NumericCriteriaField"          },          "comment": {            "type": "string"          },          "createdBy": {            "type": "string",            "format": "uuid"          },          "registeredOn": {            "$ref": "#/components/schemas/DateTimeCriteriaField"          },          "lockedUntil": {            "$ref": "#/components/schemas/DateTimeCriteriaField"          },          "expiresAt": {            "$ref": "#/components/schemas/DateTimeCriteriaField"          },          "cancelled": {            "type": "boolean"          },          "actionCause:transactionId": {            "type": "string",            "format": "uuid"          },          "actionCause:customerId": {            "type": "string",            "format": "uuid"          },          "actionCause:campaignId": {            "type": "string",            "format": "uuid"          },          "actionCause:customerEventId": {            "type": "string",            "format": "uuid"          },          "actionCause:internalEventName": {            "type": "string",            "format": "uuid"          },          "actionCause:campaignName": {            "type": "string"          },          "walletType:code": {            "type": "string"          },          "member:id": {            "type": "string",            "format": "uuid"          },          "member:email": {            "type": "string"          },          "member:phoneNumber": {            "type": "string"          },          "member:loyaltyCardNumber": {            "type": "string"          }        },        "type": "object"      },      "cancelTransfersTypeRequestBody": {        "title": "cancelTransfersTypeRequestBody",        "properties": {          "cancelTransfers": {            "required": [              "requestedAt"            ],            "properties": {              "requestedAt": {                "type": "string",                "format": "date-time"              },              "criteria": {                "$ref": "#/components/schemas/criteriaObject"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "activateTransfersTypeRequestBody": {        "title": "activateTransfersTypeRequestBody",        "properties": {          "activateTransfers": {            "required": [              "requestedAt"            ],            "properties": {              "requestedAt": {                "type": "string",                "format": "date-time"              },              "criteria": {                "$ref": "#/components/schemas/criteriaObject"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "expireTransfersTypeRequestBody": {        "title": "expireTransfersTypeRequestBody",        "description": "Use `changeExpirationTransfers` instead\n",        "properties": {          "expireTransfers": {            "required": [              "requestedAt"            ],            "properties": {              "requestedAt": {                "type": "string",                "format": "date-time"              },              "criteria": {                "$ref": "#/components/schemas/criteriaObject"              }            },            "type": "object"          }        },        "type": "object",        "deprecated": true,        "additionalProperties": false      },      "changeExpirationTransfersTypeRequestBody": {        "title": "changeExpirationTransfersTypeRequestBody",        "properties": {          "changeExpirationTransfers": {            "required": [              "requestedAt",              "parameters"            ],            "properties": {              "requestedAt": {                "type": "string",                "format": "date-time"              },              "criteria": {                "$ref": "#/components/schemas/criteriaObject"              },              "parameters": {                "required": [                  "expiresAt"                ],                "properties": {                  "expiresAt": {                    "description": "Transfer expiration date. Null removes the expiration date.\n",                    "type": "string",                    "format": "date-time",                    "nullable": true                  }                },                "type": "object",                "additionalProperties": false              },              "comment": {                "type": "string",                "maxLength": 500              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "bulkAction": {        "required": [          "bulkActionId",          "requestedAt",          "criteria",          "resource",          "type"        ],        "properties": {          "bulkActionId": {            "type": "string",            "format": "uuid"          },          "requestedAt": {            "type": "string",            "format": "date-time"          },          "criteria": {            "$ref": "#/components/schemas/criteriaObject"          },          "resource": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "cancelTransfers",              "activateTransfers",              "expireTransfers",              "changeExpirationTransfers"            ]          },          "processedRowCount": {            "type": "integer"          },          "message": {            "type": "string"          },          "userId": {            "type": "string",            "format": "uuid"          },          "email": {            "type": "string"          },          "comment": {            "type": "string"          }        },        "type": "object"      },      "bulkActionItem": {        "required": [          "bulkActionItemId",          "status",          "createdAt",          "updatedAt",          "type",          "objectToProcessId"        ],        "properties": {          "bulkActionItemId": {            "type": "string",            "format": "uuid"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "updatedAt": {            "type": "string",            "format": "date-time"          },          "status": {            "type": "string",            "enum": [              "queued",              "inprogress",              "completed",              "failed",              "error"            ]          },          "type": {            "type": "string",            "enum": [              "cancelTransfers",              "activateTransfers",              "expireTransfers",              "changeExpirationTransfers"            ]          },          "objectToProcessId": {            "type": "string"          },          "message": {            "type": "string"          }        },        "type": "object"      },      "CustomFieldSchemaResponse": {        "required": [          "customFieldSchemaId",          "name",          "type",          "required",          "active",          "createdAt"        ],        "properties": {          "customFieldSchemaId": {            "description": "Unique identifier of the custom field schema",            "type": "string",            "format": "uuid"          },          "name": {            "description": "Name of the custom field",            "type": "string"          },          "type": {            "description": "Type of the custom field",            "type": "string",            "enum": [              "text"            ]          },          "required": {            "description": "Whether this field is required",            "type": "boolean"          },          "active": {            "description": "Whether this field is active",            "type": "boolean"          },          "createdAt": {            "description": "Creation timestamp",            "type": "string",            "format": "date-time"          },          "description": {            "description": "Description of the custom field",            "type": "string",            "nullable": true          },          "groupOfValuesId": {            "description": "Group of values ID (only for text type fields)",            "type": "string",            "format": "uuid",            "nullable": true          }        },        "type": "object"      },      "CustomFieldSchemaListResponse": {        "required": [          "items",          "total"        ],        "properties": {          "items": {            "description": "List of custom field schemas",            "type": "array",            "items": {              "$ref": "#/components/schemas/CustomFieldSchemaResponse"            }          },          "total": {            "$ref": "#/components/schemas/SearchableTotalResponse"          }        },        "type": "object"      },      "CreateCustomFieldSchemaRequest": {        "required": [          "name",          "type",          "required",          "active"        ],        "properties": {          "name": {            "description": "Name of the custom field",            "type": "string",            "maxLength": 255,            "minLength": 1          },          "description": {            "description": "Description of the custom field",            "type": "string",            "maxLength": 255,            "nullable": true          },          "type": {            "description": "Type of the custom field",            "type": "string",            "enum": [              "text"            ]          },          "required": {            "description": "Whether this field is required",            "type": "boolean"          },          "active": {            "description": "Whether this field is active",            "type": "boolean"          },          "groupOfValuesId": {            "description": "Group of values ID (only for text type fields)",            "type": "string",            "format": "uuid",            "nullable": true          }        },        "type": "object",        "additionalProperties": false      },      "CreateCustomFieldSchemaResponse": {        "required": [          "customFieldSchemaId"        ],        "properties": {          "customFieldSchemaId": {            "description": "ID of the created custom field schema",            "type": "string",            "format": "uuid"          }        },        "type": "object"      },      "UpdateCustomFieldSchemaRequest": {        "required": [          "name",          "required",          "active"        ],        "properties": {          "name": {            "description": "Name of the custom field",            "type": "string",            "maxLength": 255,            "minLength": 1          },          "description": {            "description": "Description of the custom field",            "type": "string",            "maxLength": 255,            "nullable": true          },          "required": {            "description": "Whether this field is required",            "type": "boolean"          },          "active": {            "description": "Whether this field is active",            "type": "boolean"          },          "groupOfValuesId": {            "description": "Group of values ID (only for text type fields)",            "type": "string",            "format": "uuid",            "nullable": true          }        },        "type": "object",        "additionalProperties": false      },      "CustomFieldEntityType": {        "type": "string",        "description": "Entity type the custom field is associated with.",        "enum": [          "member",          "direct-campaign",          "automation-campaign",          "referral-campaign",          "leaderboard",          "challenge",          "reward",          "fortune-wheel-reward"        ]      },      "CustomFieldEntityTypeItem": {        "type": "object",        "required": [          "entityType",          "currentTotal",          "maxTotal"        ],        "properties": {          "entityType": {            "$ref": "#/components/schemas/CustomFieldEntityType"          },          "currentTotal": {            "type": "integer",            "description": "Current number of active custom field definitions for this entity type in the store"          },          "maxTotal": {            "type": "integer",            "description": "Maximum allowed total custom field definitions per entity type per store"          }        }      },      "CustomFieldEntityTypesResponse": {        "type": "object",        "required": [          "items"        ],        "properties": {          "items": {            "type": "array",            "items": {              "$ref": "#/components/schemas/CustomFieldEntityTypeItem"            }          }        }      },      "CustomFieldType": {        "type": "string",        "description": "Type of the custom field value. Determines the allowed JSON type and the shape\nof `config` on the definition.\n\n| Type            | Value JSON type          | Config required field    |\n|-----------------|--------------------------|--------------------------|\n| `text`          | string                   | `maxLength`              |\n| `integer`       | integer                  | —                        |\n| `float`         | number                   | —                        |\n| `boolean`       | boolean                  | —                        |\n| `date`          | string (YYYY-MM-DD)      | —                        |\n| `datetime`      | string (YYYY-MM-DD HH:mm:ss.SSSSSS) | —             |\n| `single_select` | string                   | `groupOfValuesId`        |\n| `multi_select`  | array of strings         | `groupOfValuesId`        |\n| `object_array`  | array of objects / null  | `objectFields`, `maxItems` |\n",        "enum": [          "text",          "integer",          "float",          "boolean",          "date",          "datetime",          "single_select",          "multi_select",          "object_array"        ]      },      "CustomFieldDefinitionInGroupResponse": {        "type": "object",        "required": [          "customFieldDefinitionId",          "key",          "name",          "fieldType",          "config",          "required",          "active",          "createdAt",          "updatedAt"        ],        "properties": {          "customFieldDefinitionId": {            "type": "string",            "format": "uuid",            "description": "Unique identifier of the field definition"          },          "key": {            "type": "string",            "description": "Immutable machine-readable identifier"          },          "name": {            "type": "string",            "description": "Human-readable name of the field"          },          "description": {            "type": "string",            "nullable": true,            "description": "Optional description of the field"          },          "fieldType": {            "$ref": "#/components/schemas/CustomFieldType"          },          "config": {            "type": "object",            "additionalProperties": true,            "description": "Field-type-specific configuration. Structure depends on `fieldType`.\nSee `TextFieldConfig`, `IntegerFieldConfig`, `FloatFieldConfig`,\n`BooleanFieldConfig`, `DateFieldConfig`, `DateTimeFieldConfig`, `SelectFieldConfig` for the per-type shapes.\nValidated server-side against the schema selected by the sibling `fieldType`.\n"          },          "required": {            "type": "boolean",            "description": "Whether this field must be filled in"          },          "active": {            "type": "boolean",            "description": "Whether this field definition is currently active"          },          "sortOrder": {            "type": "integer",            "nullable": true,            "description": "Display order position"          },          "createdAt": {            "type": "string",            "format": "date-time",            "description": "Creation timestamp"          },          "updatedAt": {            "type": "string",            "format": "date-time",            "description": "Last modification timestamp"          }        }      },      "CustomFieldGroupResponse": {        "type": "object",        "required": [          "customFieldGroupId",          "groupKey",          "name",          "entityType",          "definitions",          "createdAt",          "updatedAt"        ],        "properties": {          "customFieldGroupId": {            "type": "string",            "format": "uuid",            "description": "Unique identifier of the group"          },          "groupKey": {            "type": "string",            "description": "Immutable machine-readable identifier"          },          "name": {            "type": "string",            "description": "Human-readable name of the group"          },          "description": {            "type": "string",            "nullable": true,            "description": "Optional description of the group"          },          "entityType": {            "$ref": "#/components/schemas/CustomFieldEntityType"          },          "sortOrder": {            "type": "integer",            "nullable": true,            "description": "Display order position"          },          "definitions": {            "type": "array",            "items": {              "$ref": "#/components/schemas/CustomFieldDefinitionInGroupResponse"            },            "description": "Field definitions belonging to this group"          },          "createdAt": {            "type": "string",            "format": "date-time",            "description": "Creation timestamp"          },          "updatedAt": {            "type": "string",            "format": "date-time",            "description": "Last modification timestamp"          },          "deletedAt": {            "type": "string",            "format": "date-time",            "nullable": true,            "description": "Soft-deletion timestamp (null if not deleted)"          }        }      },      "DefinitionRequest": {        "type": "object",        "required": [          "key",          "name",          "fieldType"        ],        "properties": {          "key": {            "type": "string",            "description": "Immutable machine-readable identifier. Cannot be changed after creation.",            "maxLength": 128          },          "name": {            "type": "string",            "description": "Human-readable name of the field.",            "maxLength": 255          },          "description": {            "type": "string",            "nullable": true,            "description": "Optional description.",            "maxLength": 1000          },          "fieldType": {            "$ref": "#/components/schemas/CustomFieldType"          },          "required": {            "type": "boolean",            "description": "Whether this field must be filled in.",            "default": false          },          "active": {            "type": "boolean",            "description": "Whether this field is active. Inactive fields reject value writes (400) and\nare omitted from the member-details read response, but remain visible in the\nmanagement definitions list so they can be reactivated.\n",            "default": true          },          "sortOrder": {            "type": "integer",            "nullable": true,            "description": "Display order position."          },          "config": {            "type": "object",            "additionalProperties": true,            "description": "Field-type-specific configuration. Structure depends on `fieldType`.\nSee `TextFieldConfig`, `IntegerFieldConfig`, `FloatFieldConfig`,\n`BooleanFieldConfig`, `DateFieldConfig`, `DateTimeFieldConfig`, `SelectFieldConfig` for the per-type shapes.\nValidated server-side against the schema selected by the sibling `fieldType`.\n"          }        }      },      "CreateCustomFieldGroupRequest": {        "type": "object",        "additionalProperties": false,        "required": [          "groupKey",          "name"        ],        "properties": {          "groupKey": {            "type": "string",            "description": "Immutable machine-readable identifier for the group",            "maxLength": 64          },          "name": {            "type": "string",            "description": "Human-readable name of the group",            "maxLength": 255          },          "description": {            "type": "string",            "nullable": true,            "description": "Optional description of the group",            "maxLength": 1000          },          "sortOrder": {            "type": "integer",            "nullable": true,            "description": "Display order position"          },          "definitions": {            "type": "array",            "items": {              "$ref": "#/components/schemas/DefinitionRequest"            },            "description": "Initial field definitions for the group"          }        }      },      "UpsertCustomFieldGroupRequest": {        "type": "object",        "additionalProperties": false,        "required": [          "groupKey",          "name"        ],        "properties": {          "groupKey": {            "type": "string",            "description": "Machine-readable identifier. Matched against existing groups — creates if absent, updates if present.",            "maxLength": 64          },          "name": {            "type": "string",            "description": "Human-readable name of the group",            "maxLength": 255          },          "description": {            "type": "string",            "nullable": true,            "description": "Optional description of the group",            "maxLength": 1000          },          "sortOrder": {            "type": "integer",            "nullable": true,            "description": "Display order position"          },          "definitions": {            "type": "array",            "items": {              "$ref": "#/components/schemas/DefinitionRequest"            },            "description": "Field definitions for the group. Follows PUT semantics — definitions absent from this\nlist are deactivated. The `fieldType` of an existing definition cannot be changed.\n"          }        }      },      "UpdateCustomFieldGroupRequest": {        "type": "object",        "additionalProperties": false,        "required": [          "name"        ],        "properties": {          "name": {            "type": "string",            "description": "Human-readable name of the group",            "maxLength": 255          },          "description": {            "type": "string",            "nullable": true,            "description": "Optional description of the group",            "maxLength": 1000          },          "sortOrder": {            "type": "integer",            "nullable": true,            "description": "Display order position"          },          "definitions": {            "type": "array",            "items": {              "$ref": "#/components/schemas/DefinitionRequest"            },            "description": "Full replacement set of field definitions"          }        }      },      "PatchCustomFieldGroupRequest": {        "type": "object",        "additionalProperties": false,        "properties": {          "name": {            "type": "string",            "description": "Human-readable name of the group",            "maxLength": 255          },          "description": {            "type": "string",            "nullable": true,            "description": "Optional description of the group",            "maxLength": 1000          },          "sortOrder": {            "type": "integer",            "nullable": true,            "description": "Display order position"          },          "definitions": {            "type": "array",            "items": {              "$ref": "#/components/schemas/DefinitionRequest"            },            "description": "Updated field definitions (replaces existing definitions if provided)"          }        }      },      "BulkCustomFieldValuesRequest": {        "type": "object",        "description": "Map of groupKey to map of fieldKey to value. Pass null to clear a field.",        "additionalProperties": {          "type": "object",          "additionalProperties": {            "anyOf": [              {                "type": "string",                "nullable": true              },              {                "type": "integer",                "nullable": true              },              {                "type": "number",                "nullable": true              },              {                "type": "boolean",                "nullable": true              },              {                "type": "array",                "nullable": true,                "items": {                  "type": "string"                }              },              {                "type": "array",                "nullable": true,                "items": {                  "type": "object"                }              }            ]          }        }      },      "SingleCustomFieldValueRequest": {        "type": "object",        "required": [          "value"        ],        "additionalProperties": false,        "properties": {          "value": {            "anyOf": [              {                "type": "string",                "nullable": true              },              {                "type": "integer",                "nullable": true              },              {                "type": "number",                "nullable": true              },              {                "type": "boolean",                "nullable": true              },              {                "type": "array",                "nullable": true,                "items": {                  "type": "string"                }              },              {                "type": "array",                "nullable": true,                "items": {                  "type": "object"                }              }            ],            "description": "Value to set. Pass null to clear the field. Type depends on the field's fieldType:\ntext → string, integer → integer, float → number, boolean → boolean,\nsingle_select → string, multi_select → array of strings.\n"          }        }      },      "Limit2": {        "properties": {          "interval": {            "$ref": "#/components/schemas/LimitInterval"          },          "value": {            "type": "integer"          }        },        "type": "object"      },      "Rule2": {        "properties": {          "translations": {            "properties": {              "en": {                "properties": {                  "name": {                    "type": "string"                  },                  "description": {                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "achievementRuleId": {            "type": "string"          },          "completeRule": {            "$ref": "#/components/schemas/CompleteRule"          },          "aggregation": {            "$ref": "#/components/schemas/Aggregation"          },          "uniqueReferee": {            "type": "boolean"          },          "event": {            "type": "string"          },          "limit": {            "$ref": "#/components/schemas/Limit2"          }        },        "type": "object"      },      "Achievement": {        "properties": {          "achievementId": {            "type": "string",            "format": "uuid"          },          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Achievement name",                    "type": "string"                  },                  "description": {                    "description": "Achievement description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "active": {            "type": "boolean"          },          "limit": {            "$ref": "#/components/schemas/Limit2"          },          "activity": {            "$ref": "#/components/schemas/AchievementActivity"          },          "rules": {            "type": "array",            "items": {              "$ref": "#/components/schemas/Rule2"            }          },          "badgeTypeId": {            "type": "string",            "format": "uuid"          }        },        "type": "object"      },      "UpdateAchievementFormType": {        "required": [          "translations",          "activity",          "rules",          "limit"        ],        "properties": {          "translations": {            "$ref": "#/components/schemas/TranslationsType"          },          "activity": {            "$ref": "#/components/schemas/ActivityFormType"          },          "active": {            "type": "boolean"          },          "rules": {            "type": "array",            "items": {              "$ref": "#/components/schemas/RuleFormType"            }          },          "limit": {            "$ref": "#/components/schemas/LimitFormType"          }        },        "type": "object"      },      "PatchRuleFormType": {        "required": [          "achievementRuleId"        ],        "properties": {          "achievementRuleId": {            "type": "string"          },          "translations": {            "$ref": "#/components/schemas/RuleTranslationFormType"          }        },        "type": "object"      },      "PatchAchievementFormType": {        "properties": {          "translations": {            "$ref": "#/components/schemas/TranslationsType"          },          "activity": {            "$ref": "#/components/schemas/ActivityFormType"          },          "active": {            "type": "boolean"          },          "rules": {            "type": "array",            "items": {              "$ref": "#/components/schemas/PatchRuleFormType"            }          },          "limit": {            "$ref": "#/components/schemas/LimitFormType"          }        },        "type": "object"      },      "ApiKeyRequest": {        "properties": {          "apiKey": {            "required": [              "name"            ],            "properties": {              "name": {                "type": "string"              },              "expirationDate": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "SystemLogExport": {        "title": "SystemLogExport",        "required": [          "exportId",          "status",          "createdAt",          "criteria"        ],        "properties": {          "exportId": {            "type": "string",            "format": "uuid"          },          "status": {            "type": "string",            "enum": [              "done",              "failed",              "processing",              "pending",              "error"            ]          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "finishedAt": {            "type": "string",            "format": "date-time"          },          "criteria": {            "type": "string"          },          "exportedRows": {            "type": "integer"          },          "message": {            "type": "string"          }        },        "type": "object",        "additionalProperties": false      },      "SystemLogExportResponse": {        "title": "SystemLogExport",        "properties": {          "items": {            "type": "array",            "items": {              "$ref": "#/components/schemas/SystemLogExport"            }          },          "total": {            "$ref": "#/components/schemas/SearchableTotalResponse"          }        },        "type": "object",        "additionalProperties": false      },      "ExportSystemLogTypeRequestBody": {        "title": "campaignCode",        "properties": {          "systemLog": {            "properties": {              "createdAt": {                "allOf": [                  {                    "$ref": "#/components/schemas/DateTimeCriteriaField"                  },                  {                    "description": "Date and time when the member was registered"                  }                ]              },              "_page": {                "$ref": "#/components/schemas/ExportPage"              },              "_itemsOnPage": {                "$ref": "#/components/schemas/ExportItemsOnPage"              },              "_orderBy": {                "$ref": "#/components/schemas/ExportOrderBy"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "BillableReportResponse": {        "description": "Billable report response",        "required": [          "billableMembers",          "billableTransactions",          "billableEvents",          "billableMembersPerMonth",          "billableTransactionsPerMonth",          "billableEventsPerMonth"        ],        "properties": {          "billableMembers": {            "description": "Number of billable members from the last 12 months.",            "type": "number",            "format": "integer",            "example": 10000          },          "billableTransactions": {            "description": "Number of billable transactions from the last 12 months.",            "type": "number",            "format": "integer",            "example": 9000          },          "billableEvents": {            "description": "Number of billable events from the last 12 months.",            "type": "number",            "format": "integer",            "example": 8500          },          "billableMembersPerMonth": {            "description": "Number of billable members per month from the last 12 months.",            "type": "object",            "example": {              "2023-08-01": 1000,              "2023-07-01": 1000,              "2023-06-01": 1000,              "2023-05-01": 1000,              "2023-04-01": 1000,              "2023-03-01": 1000,              "2023-02-01": 1000,              "2023-01-01": 1000,              "2022-12-01": 1000,              "2022-11-01": 1000,              "2022-10-01": 0,              "2022-09-01": 0            }          },          "billableTransactionsPerMonth": {            "description": "Number of billable transactions per month from the last 12 months.",            "type": "object",            "example": {              "2023-08-01": 1000,              "2023-07-01": 1000,              "2023-06-01": 1000,              "2023-05-01": 1000,              "2023-04-01": 1000,              "2023-03-01": 1000,              "2023-02-01": 1000,              "2023-01-01": 1000,              "2022-12-01": 1000,              "2022-11-01": 0,              "2022-10-01": 0,              "2022-09-01": 0            }          },          "billableEventsPerMonth": {            "description": "Number of billable events per month from the last 12 months.",            "type": "object",            "example": {              "2023-08-01": 950,              "2023-07-01": 850,              "2023-06-01": 750,              "2023-05-01": 650,              "2023-04-01": 550,              "2023-03-01": 450,              "2023-02-01": 350,              "2023-01-01": 250,              "2022-12-01": 150,              "2022-11-01": 50,              "2022-10-01": 0,              "2022-09-01": 0            }          }        },        "type": "object",        "additionalProperties": false      },      "UniqueCodeCampaignRequestBody": {        "title": "RedemptionCampaign",        "required": [          "campaign"        ],        "properties": {          "campaign": {            "description": "Campaign details combining common fields with specific strategy requirements.",            "type": "object",            "allOf": [              {                "required": [                  "type",                  "trigger",                  "translations",                  "activity",                  "eventCodeAttribute",                  "rules",                  "event"                ],                "properties": {                  "type": {                    "type": "string",                    "example": "referral"                  },                  "trigger": {                    "type": "string",                    "example": "custom_event_unique_code"                  },                  "activity": {                    "required": [                      "startsAt"                    ],                    "properties": {                      "startsAt": {                        "type": "string",                        "example": "2024-09-17 00:00+02:00"                      },                      "endsAt": {                        "type": "string",                        "example": "2024-09-17 00:00+02:00",                        "nullable": true                      }                    },                    "type": "object"                  },                  "displayOrder": {                    "type": "number",                    "example": 1                  },                  "active": {                    "type": "boolean"                  },                  "labels": {                    "type": "array",                    "items": {                      "properties": {                        "key": {                          "type": "string"                        },                        "value": {                          "type": "string"                        }                      },                      "type": "object"                    }                  },                  "translations": {                    "$ref": "#/components/schemas/CampaignTranslations"                  },                  "rules": {                    "$ref": "#/components/schemas/Rule"                  },                  "limits": {                    "$ref": "#/components/schemas/Limit"                  },                  "visibility": {                    "$ref": "#/components/schemas/Visibility"                  },                  "audience": {                    "$ref": "#/components/schemas/Audience"                  },                  "event": {                    "type": "string"                  },                  "eventCodeAttribute": {                    "type": "string",                    "example": "qrCode"                  },                  "customFields": {                    "type": "object",                    "nullable": true,                    "description": "Custom-field values grouped by group key. POST-only schema (unique-code campaign creation): omitted, null, or empty {} → no values written; non-empty → persisted on the new campaign. Required-field validation always runs (enforceRequired). Requires the CUSTOM_FIELD_CAMPAIGN feature flag; when disabled the field is silently ignored.",                    "additionalProperties": {                      "type": "object",                      "additionalProperties": true                    }                  }                },                "type": "object"              },              {                "oneOf": [                  {                    "title": "Internal Generator (Default)",                    "required": [                      "generateCodes",                      "codeGenerator"                    ],                    "properties": {                      "isExternalCodeSource": {                        "description": "Defaults to false. If false or omitted, generator fields are required.",                        "type": "boolean"                      },                      "generateCodes": {                        "type": "integer",                        "example": 100000                      },                      "codeGenerator": {                        "required": [                          "characterSet",                          "length"                        ],                        "properties": {                          "characterSet": {                            "type": "string",                            "example": "alphanum"                          },                          "length": {                            "type": "integer",                            "example": 12                          },                          "prefix": {                            "type": "string",                            "example": "Code"                          }                        },                        "type": "object",                        "additionalProperties": false                      }                    },                    "type": "object"                  },                  {                    "title": "External Source (Import)",                    "required": [                      "isExternalCodeSource"                    ],                    "properties": {                      "isExternalCodeSource": {                        "description": "Set to true to skip code generation and import codes manually.",                        "type": "boolean",                        "enum": [                          true                        ]                      }                    },                    "type": "object"                  }                ]              }            ]          }        },        "type": "object",        "additionalProperties": false      },      "RelatedAchievement": {        "properties": {          "achievementId": {            "type": "string",            "format": "uuid"          },          "achievementName": {            "type": "string"          },          "limitReached": {            "description": "This property indicates whether the limit for achievement is reached by member",            "type": "boolean"          },          "memberProgress": {            "$ref": "#/components/schemas/MemberAchievementProgress"          },          "lastTrigger": {            "description": "Last trigger which triggered related achievement",            "properties": {              "triggerId": {                "type": "string",                "format": "uuid"              },              "triggerType": {                "type": "string",                "enum": [                  "transaction",                  "custom_event"                ]              }            },            "type": "object"          }        },        "type": "object",        "deprecated": true      },      "AvailableCampaign": {        "required": [          "campaignId",          "name",          "active",          "activity",          "rules",          "translations",          "createdAt",          "displayOrder",          "labels",          "type",          "trigger",          "limitReached",          "limits",          "memberFilter",          "limitUsages"        ],        "properties": {          "campaignId": {            "type": "string",            "format": "uuid"          },          "active": {            "type": "boolean"          },          "activity": {            "required": [              "startsAt"            ],            "properties": {              "startsAt": {                "type": "string",                "example": "2024-09-17 00:00+02:00"              },              "endsAt": {                "type": "string",                "example": "2024-09-17 00:00+02:00",                "nullable": true              }            },            "type": "object",            "additionalProperties": false          },          "rules": {            "type": "array",            "items": {              "required": [                "conditions",                "effects"              ],              "properties": {                "conditions": {                  "type": "array",                  "items": {                    "properties": {                      "operator": {                        "type": "string"                      },                      "data": {                        "type": "array",                        "items": {                          "type": "string"                        }                      },                      "attribute": {                        "type": "string"                      }                    },                    "type": "object"                  }                },                "effects": {                  "type": "array",                  "items": {                    "required": [                      "effect"                    ],                    "properties": {                      "effect": {                        "type": "string"                      },                      "pointsRule": {                        "type": "string"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          },          "limits": {            "$ref": "#/components/schemas/Limit"          },          "translations": {            "type": "array",            "items": {              "required": [                "id",                "name",                "locale"              ],              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "id": {                  "type": "integer"                },                "locale": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "memberFilter": {            "type": "object"          },          "displayOrder": {            "type": "number",            "example": 1          },          "labels": {            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "multiLevel": {            "type": "number",            "example": 1          },          "codeGenerator": {            "type": "object"          },          "eventCodeAttribute": {            "type": "string"          },          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "type": {            "type": "string"          },          "trigger": {            "type": "string"          },          "event": {            "type": "string"          },          "achievementId": {            "type": "string",            "format": "uuid"          },          "relatedAchievement": {            "$ref": "#/components/schemas/RelatedAchievement"          },          "limitReached": {            "description": "This property indicates whether the limit for campaign is reached by member",            "type": "boolean"          },          "limitUsages": {            "properties": {              "points": {                "description": "These fields are not updated immediately after the status changes.",                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer",                        "deprecated": true                      }                    },                    "type": "object"                  }                },                "type": "object"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "MemberAvailableCampaign": {        "required": [          "campaignId",          "translations",          "name",          "limitReached"        ],        "properties": {          "campaignId": {            "type": "string",            "format": "uuid"          },          "translations": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "id": {                  "type": "integer"                },                "locale": {                  "type": "string"                }              },              "type": "object"            }          },          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "relatedAchievement": {            "$ref": "#/components/schemas/RelatedAchievement"          },          "limitReached": {            "description": "This property indicates if the campaign is available to a member",            "type": "boolean"          },          "limitUsages": {            "properties": {              "pointsPerMember": {                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer",                        "deprecated": true                      }                    },                    "type": "object"                  }                },                "type": "object"              },              "executionsPerMember": {                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer",                        "deprecated": true                      }                    },                    "type": "object"                  }                },                "type": "object"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "Activity": {        "properties": {          "startsAt": {            "type": "string",            "format": "date-time"          },          "endsAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object"      },      "VisibleCampaign": {        "required": [          "campaignId",          "active",          "activity",          "translations",          "createdAt",          "type",          "trigger"        ],        "properties": {          "campaignId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "active": {            "type": "boolean"          },          "activity": {            "$ref": "#/components/schemas/Activity"          },          "translations": {            "type": "object",            "additionalProperties": {              "type": "object",              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                }              },              "additionalProperties": false            }          },          "description": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "type": {            "type": "string"          },          "trigger": {            "type": "string"          }        },        "type": "object",        "additionalProperties": false      },      "CampaignCode": {        "properties": {          "codeId": {            "type": "string"          },          "code": {            "type": "string"          },          "status": {            "type": "string"          },          "usedAt": {            "type": "string",            "format": "date-time"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "createdBy": {            "type": "string"          }        },        "type": "object"      },      "PostGenerateCodes": {        "properties": {          "generate": {            "required": [              "numberOfCodes"            ],            "properties": {              "numberOfCodes": {                "type": "integer"              }            },            "type": "object"          }        },        "type": "object"      },      "SimulatedCustomer": {        "properties": {          "id": {            "description": "Unique Member identifier. Specifying an existing ID will cause the simulation to fetch the specific Member data for simulation purposes.",            "type": "string",            "format": "uuid"          },          "firstName": {            "type": "string"          },          "lastName": {            "type": "string"          },          "email": {            "type": "string"          },          "phone": {            "type": "string"          },          "birthDate": {            "type": "string",            "example": "2012-01-01"          },          "address": {            "$ref": "#/components/schemas/CustomerAddressFormType"          },          "loyaltyCardNumber": {            "type": "string"          },          "legalConsent": {            "type": "boolean"          },          "marketingConsent": {            "type": "boolean"          },          "dataProcessingConsent": {            "type": "boolean"          },          "gender": {            "type": "string"          },          "registeredDate": {            "type": "string",            "example": "2012-01-01"          },          "firstTransactionDate": {            "type": "string",            "example": "2012-01-01"          },          "lastTransactionDate": {            "type": "string",            "example": "2012-01-01"          },          "levelAchievementDate": {            "type": "string",            "example": "2012-01-01"          },          "levelId": {            "type": "string",            "format": "uuid"          },          "tiers": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "numberOfPurchases": {            "type": "string"          },          "purchaseAmount": {            "type": "string"          },          "averagePurchaseAmount": {            "type": "string"          },          "activePoints": {            "type": "string"          },          "spentPoints": {            "type": "string"          },          "earnedPoints": {            "type": "string"          },          "lockedPoints": {            "type": "string"          },          "blockedPoints": {            "type": "string"          },          "expiredPoints": {            "type": "string"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "segments": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          }        },        "type": "object"      },      "SimulateFormType": {        "required": [          "trigger"        ],        "properties": {          "trigger": {            "type": "string",            "enum": [              "transaction",              "custom_event",              "internal_event",              "return_transaction"            ]          },          "customer": {            "$ref": "#/components/schemas/SimulatedCustomer"          },          "referrer": {            "$ref": "#/components/schemas/SimulatedCustomer"          }        },        "type": "object"      },      "SimulatedTransaction": {        "required": [          "documentNumber",          "purchasedAt"        ],        "properties": {          "id": {            "type": "string",            "format": "uuid"          },          "grossValue": {            "deprecated": true,            "oneOf": [              {                "type": "string"              },              {                "type": "number"              }            ]          },          "documentNumber": {            "type": "string"          },          "linkedDocumentNumber": {            "description": "Required only for `documentType = return`. The field indicates the transaction you want to return",            "type": "string"          },          "documentType": {            "type": "string",            "enum": [              "sell",              "return"            ]          },          "purchasedAt": {            "type": "string",            "example": "2023-03-23 10:00+01:00"          },          "purchasePlace": {            "type": "string"          },          "shippingCity": {            "type": "string",            "deprecated": true          },          "channelId": {            "type": "string",            "format": "uuid"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "items": {            "type": "array",            "items": {              "properties": {                "sku": {                  "type": "string"                },                "name": {                  "type": "string"                },                "qty": {                  "oneOf": [                    {                      "type": "string"                    },                    {                      "type": "number"                    }                  ]                },                "grossValue": {                  "oneOf": [                    {                      "type": "string"                    },                    {                      "type": "number"                    }                  ]                },                "category": {                  "type": "string"                },                "maker": {                  "type": "string"                },                "labels": {                  "type": "array",                  "items": {                    "properties": {                      "key": {                        "type": "string"                      },                      "value": {                        "type": "string"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          }        },        "type": "object",        "additionalProperties": false      },      "SimulatedCustomEvent": {        "required": [          "type",          "eventDate"        ],        "properties": {          "id": {            "type": "string",            "format": "uuid"          },          "type": {            "type": "string"          },          "eventDate": {            "type": "string",            "example": "2023-03-23 10:00+01:00"          },          "body": {            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "SimulatedInternalEvent": {        "required": [          "type",          "eventDate"        ],        "properties": {          "type": {            "type": "string"          },          "eventDate": {            "type": "string",            "example": "2023-03-23 10:00+01:00"          },          "body": {            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "Campaign": {        "properties": {          "name": {            "type": "string"          },          "description": {            "type": "string"          },          "type": {            "type": "string"          },          "trigger": {            "type": "string"          },          "campaignId": {            "type": "string",            "format": "uuid"          },          "activity": {            "properties": {              "startsAt": {                "type": "string",                "format": "date-time"              },              "endsAt": {                "type": "string",                "format": "date-time",                "nullable": true              }            },            "type": "object"          },          "active": {            "type": "boolean"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "displayOrder": {            "type": "number",            "example": 1          },          "rules": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "conditions": {                  "type": "array",                  "items": {                    "properties": {                      "operator": {                        "type": "string"                      },                      "data": {                        "oneOf": [                          {                            "type": "string"                          },                          {                            "type": "number"                          },                          {                            "type": "array",                            "items": {                              "oneOf": [                                {                                  "type": "string"                                },                                {                                  "type": "number"                                },                                {                                  "type": "boolean"                                }                              ]                            }                          }                        ]                      },                      "attribute": {                        "type": "string"                      }                    },                    "type": "object"                  }                },                "effects": {                  "type": "array",                  "items": {                    "properties": {                      "effect": {                        "type": "string"                      },                      "pointsRule": {                        "type": "string"                      },                      "unitsExpirationDateRule": {                        "properties": {                          "expirationStrategy": {                            "type": "string"                          },                          "expression": {                            "type": "string"                          }                        },                        "type": "object"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string",                  "minLength": 1                },                "value": {                  "type": "string",                  "minLength": 1                }              },              "type": "object"            }          },          "translations": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "id": {                  "type": "integer"                },                "locale": {                  "type": "string"                }              },              "type": "object"            }          },          "limitUsages": {            "properties": {              "points": {                "properties": {                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  },                  "remaining": {                    "type": "number",                    "format": "float"                  },                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      },                      "value": {                        "type": "integer"                      }                    },                    "type": "object"                  }                },                "type": "object"              }            },            "type": "object"          },          "triggerStrategy": {            "$ref": "#/components/schemas/TriggerStrategy"          }        },        "type": "object"      },      "SimulateResult": {        "required": [          "effects",          "evaluationWarnings"        ],        "properties": {          "effects": {            "type": "array",            "items": {              "required": [                "type",                "target",                "campaign"              ],              "properties": {                "type": {                  "type": "string",                  "enum": [                    "give_points",                    "give_reward",                    "deduct_unit",                    "assign_member_custom_attribute",                    "remove_member_custom_attribute",                    "grant_badge",                    "cancel_transaction_effects"                  ]                },                "campaign": {                  "$ref": "#/components/schemas/Campaign"                },                "points": {                  "type": "number",                  "format": "float"                },                "wallet": {                  "type": "string"                },                "rewardId": {                  "type": "string"                },                "expression": {                  "type": "string"                },                "badgeSystemCode": {                  "type": "string"                },                "target": {                  "type": "string",                  "enum": [                    "self",                    "referrer"                  ]                }              },              "type": "object",              "additionalProperties": false            }          },          "evaluationWarnings": {            "type": "array",            "items": {              "required": [                "campaignId",                "message"              ],              "properties": {                "campaignId": {                  "type": "string",                  "format": "uuid"                },                "message": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "simulatedMember": {            "required": [              "memberId"            ],            "properties": {              "memberId": {                "type": "string",                "format": "uuid"              },              "wallets": {                "type": "array",                "items": {                  "properties": {                    "walletId": {                      "type": "string",                      "format": "uuid",                      "nullable": true                    },                    "walletType": {                      "properties": {                        "code": {                          "type": "string"                        },                        "name": {                          "type": "string"                        },                        "isDefault": {                          "type": "boolean"                        },                        "active": {                          "type": "boolean"                        },                        "unitSingularName": {                          "type": "string"                        },                        "unitPluralName": {                          "type": "string"                        },                        "rewardSpending": {                          "type": "boolean"                        }                      },                      "type": "object",                      "additionalProperties": false                    },                    "account": {                      "properties": {                        "activeUnits": {                          "type": "number",                          "format": "float"                        }                      },                      "type": "object"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            },            "type": "object",            "nullable": true,            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "MemberChallengeProgress": {        "properties": {          "completedCount": {            "type": "integer"          },          "milestones": {            "type": "array",            "items": {              "properties": {                "milestoneId": {                  "type": "string"                },                "periodGoal": {                  "type": "number",                  "format": "float"                },                "currentPeriodValue": {                  "type": "number",                  "format": "float"                },                "consecutivePeriods": {                  "type": "integer"                },                "completedConsecutivePeriods": {                  "type": "integer"                },                "periodType": {                  "type": "string"                },                "type": {                  "type": "string"                },                "trigger": {                  "type": "string"                },                "periodValue": {                  "type": "number",                  "format": "float"                }              },              "type": "object"            }          }        },        "type": "object"      },      "MemberChallenge": {        "properties": {          "campaignId": {            "type": "string",            "format": "uuid"          },          "campaignName": {            "type": "string"          },          "campaignDescription": {            "type": "string"          },          "limitReached": {            "type": "boolean"          },          "memberProgress": {            "$ref": "#/components/schemas/MemberChallengeProgress"          }        },        "type": "object"      },      "CustomEvent": {        "properties": {          "customEventId": {            "description": "Custom Event Id",            "type": "string",            "format": "uuid"          },          "customerId": {            "description": "Customer Id",            "type": "string",            "format": "uuid"          },          "type": {            "type": "string"          },          "eventName": {            "type": "string"          },          "customerData": {            "properties": {              "customerId": {                "type": "string"              },              "email": {                "type": "string"              },              "phone": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              }            },            "type": "object"          },          "body": {            "type": "array",            "items": {              "type": "object",              "additionalProperties": {                "type": "string"              }            }          },          "eventDate": {            "type": "string",            "format": "date-time"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "eventId": {            "description": "A unique identifier for each custom event sent to the Open Loyalty API. This field is used to prevent the submission of duplicate events to the system.",            "type": "string",            "maxLength": 255,            "minLength": 1,            "nullable": true          }        },        "type": "object"      },      "CustomEventRequestBody": {        "properties": {          "event": {            "required": [              "type",              "eventDate"            ],            "properties": {              "type": {                "type": "string"              },              "customerData": {                "description": "Not all fields of customerData are required, choose the one you want to identify with.",                "properties": {                  "customerId": {                    "type": "string"                  },                  "email": {                    "type": "string"                  },                  "phone": {                    "type": "string"                  },                  "loyaltyCardNumber": {                    "type": "string"                  }                },                "type": "object"              },              "eventDate": {                "type": "string",                "format": "date-time"              },              "body": {                "properties": {                  "key": {                    "type": "string"                  }                },                "type": "object"              },              "eventId": {                "description": "A unique identifier for each custom event sent to the Open Loyalty API. This field is used to prevent the submission of duplicate events to the system.",                "type": "string",                "maxLength": 255,                "minLength": 1              }            },            "type": "object"          }        },        "type": "object"      },      "GroupOfValues": {        "required": [          "groupOfValuesId",          "name",          "translations",          "active",          "recordsInGroup",          "createdAt",          "updatedAt"        ],        "properties": {          "groupOfValuesId": {            "type": "string",            "format": "uuid"          },          "name": {            "description": "Collection name",            "type": "string"          },          "description": {            "description": "Collection description",            "type": "string"          },          "translations": {            "$ref": "#/components/schemas/Translations"          },          "active": {            "description": "Collection status",            "type": "boolean"          },          "recordsInGroup": {            "description": "Number of values in collection",            "type": "integer"          },          "createdAt": {            "description": "Creation date",            "type": "string",            "format": "date-time"          },          "updatedAt": {            "description": "Last update date",            "type": "string",            "format": "date-time"          }        },        "type": "object",        "additionalProperties": false      },      "GroupOfValuesResponse": {        "required": [          "items",          "total"        ],        "properties": {          "items": {            "type": "array",            "items": {              "$ref": "#/components/schemas/GroupOfValues"            }          },          "total": {            "$ref": "#/components/schemas/SearchableTotalResponse"          },          "scroll": {            "type": "string",            "nullable": true          }        },        "type": "object",        "additionalProperties": false      },      "GroupOfValuesResponseWithScroll": {        "required": [          "items",          "scroll"        ],        "properties": {          "items": {            "type": "array",            "items": {              "$ref": "#/components/schemas/GroupOfValues"            }          },          "scroll": {            "$ref": "#/components/schemas/ScrollResponse"          }        },        "type": "object",        "additionalProperties": false      },      "CreateGroupRequest": {        "required": [          "groupOfValues"        ],        "properties": {          "groupOfValues": {            "required": [              "translations",              "active"            ],            "properties": {              "translations": {                "properties": {                  "en": {                    "required": [                      "name"                    ],                    "properties": {                      "name": {                        "description": "Collection name",                        "type": "string"                      },                      "description": {                        "description": "Collection description",                        "type": "string"                      }                    },                    "type": "object"                  }                },                "type": "object"              },              "active": {                "description": "Group status",                "type": "boolean"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "GroupOfValuesId": {        "properties": {          "groupOfValuesId": {            "description": "ID of the created collection",            "type": "string",            "format": "uuid"          }        },        "type": "object"      },      "UpdateGroupRequest": {        "required": [          "groupOfValues"        ],        "properties": {          "groupOfValues": {            "required": [              "translations",              "active"            ],            "properties": {              "translations": {                "properties": {                  "en": {                    "required": [                      "name"                    ],                    "properties": {                      "name": {                        "description": "Collection name",                        "type": "string"                      },                      "description": {                        "description": "Collection description",                        "type": "string"                      }                    },                    "type": "object"                  }                },                "type": "object"              },              "active": {                "description": "Group status",                "type": "boolean"              }            },            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "CreateValueRequest": {        "required": [          "value"        ],        "properties": {          "value": {            "required": [              "groupOfValuesId",              "value"            ],            "properties": {              "groupOfValuesId": {                "description": "ID of the parent collection",                "type": "string",                "format": "uuid"              },              "value": {                "description": "Actual value",                "type": "string"              },              "description": {                "description": "Actual value",                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object"      },      "ValueId": {        "properties": {          "valueId": {            "description": "ID of the created values",            "type": "string",            "format": "uuid"          }        },        "type": "object"      },      "GroupValue": {        "required": [          "valueId",          "groupOfValuesId",          "value",          "createdAt",          "updatedAt"        ],        "properties": {          "valueId": {            "type": "string",            "format": "uuid"          },          "groupOfValuesId": {            "description": "ID of the parent group",            "type": "string",            "format": "uuid"          },          "value": {            "description": "Actual value",            "type": "string"          },          "description": {            "description": "Description name",            "type": "string"          },          "createdAt": {            "description": "Creation date",            "type": "string",            "format": "date-time"          },          "updatedAt": {            "description": "Last update date",            "type": "string",            "format": "date-time"          }        },        "type": "object",        "additionalProperties": false      },      "UpdateValueRequest": {        "required": [          "value"        ],        "properties": {          "value": {            "required": [              "value"            ],            "properties": {              "value": {                "description": "Actual value",                "type": "string"              },              "description": {                "description": "Description value",                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object"      },      "Import": {        "required": [          "importId",          "type",          "uploadedDate",          "fileName",          "status",          "itemsToImport"        ],        "properties": {          "importId": {            "type": "string",            "format": "uuid"          },          "type": {            "type": "string",            "enum": [              "member",              "groupValue",              "segmentMembers",              "unitTransferAdding",              "unitTransferSpending",              "transaction",              "rewardCoupon",              "campaignCode"            ]          },          "uploadedDate": {            "type": "string",            "format": "date-time"          },          "fileName": {            "type": "string"          },          "status": {            "type": "string",            "enum": [              "pending",              "queued",              "failed",              "error"            ]          },          "itemsToImport": {            "type": "integer"          },          "user": {            "type": "string",            "format": "uuid"          },          "errorMessage": {            "type": "string"          },          "additionalData": {            "type": "object",            "additionalProperties": {              "oneOf": [                {                  "type": "string"                },                {                  "type": "integer"                },                {                  "type": "boolean"                },                {                  "type": "array",                  "items": {                    "type": "string"                  }                },                {                  "type": "array",                  "items": {                    "type": "integer"                  }                },                {                  "type": "array",                  "items": {                    "type": "boolean"                  }                }              ]            }          }        },        "type": "object",        "additionalProperties": false      },      "EntityMember": {        "properties": {          "id": {            "type": "string"          },          "data": {            "properties": {              "email": {                "type": "string"              },              "loyaltyCardNumber": {                "type": "string"              },              "phone": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object"      },      "ImportItem": {        "required": [          "importId",          "status",          "createdAt",          "updatedAt"        ],        "properties": {          "importId": {            "type": "string",            "format": "uuid"          },          "status": {            "type": "string",            "enum": [              "queued",              "inprogress",              "succeed",              "error",              "failed"            ]          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "updatedAt": {            "type": "string",            "format": "date-time"          },          "message": {            "type": "string"          },          "entity": {            "anyOf": [              {                "$ref": "#/components/schemas/EntityMember"              },              {                "$ref": "#/components/schemas/EntityMember"              },              {                "title": "Collection",                "properties": {                  "id": {                    "type": "string",                    "format": "uuid"                  },                  "data": {                    "required": [                      "value",                      "groupOfValuesId"                    ],                    "properties": {                      "value": {                        "type": "string"                      },                      "description": {                        "type": "string"                      },                      "groupOfValuesId": {                        "type": "string",                        "format": "uuid"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object"              },              {                "title": "Unit transfer adding",                "properties": {                  "id": {                    "type": "string",                    "format": "uuid"                  },                  "data": {                    "required": [                      "walletCode",                      "unitSingularName",                      "unitPluralName",                      "value",                      "registeredOn",                      "createdOn",                      "isPending",                      "memberId",                      "memberFullName"                    ],                    "properties": {                      "walletName": {                        "type": "string"                      },                      "walletCode": {                        "type": "string"                      },                      "unitSingularName": {                        "type": "string"                      },                      "unitPluralName": {                        "type": "string"                      },                      "value": {                        "type": "number",                        "format": "float"                      },                      "comment": {                        "type": "string"                      },                      "registeredOn": {                        "type": "string",                        "format": "date-time"                      },                      "createdOn": {                        "type": "string",                        "format": "date-time"                      },                      "isPending": {                        "type": "boolean"                      },                      "expireAt": {                        "type": "string",                        "format": "date-time"                      },                      "memberId": {                        "type": "string",                        "format": "uuid"                      },                      "memberFullName": {                        "type": "string"                      },                      "memberEmail": {                        "type": "string",                        "format": "email"                      },                      "memberLoyaltyCardNumber": {                        "type": "string"                      },                      "memberPhone": {                        "type": "string"                      },                      "externalTransferId": {                        "type": "string"                      },                      "labels": {                        "type": "object"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object"              },              {                "title": "Unit transfer spending",                "properties": {                  "id": {                    "type": "string",                    "format": "uuid"                  },                  "data": {                    "required": [                      "walletCode",                      "unitSingularName",                      "unitPluralName",                      "value",                      "registeredOn",                      "createdOn",                      "memberId",                      "memberFullName"                    ],                    "properties": {                      "walletName": {                        "type": "string"                      },                      "walletCode": {                        "type": "string"                      },                      "unitSingularName": {                        "type": "string"                      },                      "unitPluralName": {                        "type": "string"                      },                      "value": {                        "type": "number",                        "format": "float"                      },                      "comment": {                        "type": "string"                      },                      "registeredOn": {                        "type": "string",                        "format": "date-time"                      },                      "createdOn": {                        "type": "string",                        "format": "date-time"                      },                      "memberId": {                        "type": "string",                        "format": "uuid"                      },                      "memberFullName": {                        "type": "string"                      },                      "memberEmail": {                        "type": "string",                        "format": "email"                      },                      "memberLoyaltyCardNumber": {                        "type": "string"                      },                      "memberPhone": {                        "type": "string"                      },                      "externalTransferId": {                        "type": "string"                      },                      "labels": {                        "type": "object"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object"              },              {                "title": "Transaction",                "properties": {                  "id": {                    "type": "string",                    "format": "uuid"                  },                  "data": {                    "required": [                      "documentType",                      "purchasedAt",                      "grossValue"                    ],                    "properties": {                      "documentType": {                        "type": "string"                      },                      "purchasedAt": {                        "type": "string",                        "format": "date-time"                      },                      "grossValue": {                        "type": "number",                        "format": "float"                      },                      "memberFullName": {                        "type": "string"                      },                      "memberEmail": {                        "type": "string"                      },                      "memberLoyaltyCardNumber": {                        "type": "string"                      },                      "memberPhone": {                        "type": "string"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object"              },              {                "title": "Reward coupon",                "properties": {                  "id": {                    "type": "string"                  },                  "data": {                    "required": [                      "code"                    ],                    "properties": {                      "code": {                        "type": "string"                      },                      "rewardId": {                        "type": "string",                        "format": "uuid"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object"              },              {                "title": "Campaign code",                "properties": {                  "id": {                    "type": "string"                  },                  "data": {                    "required": [                      "code"                    ],                    "properties": {                      "code": {                        "type": "string"                      },                      "campaignId": {                        "type": "string",                        "format": "uuid"                      }                    },                    "type": "object",                    "additionalProperties": false                  }                },                "type": "object"              }            ]          }        },        "type": "object",        "additionalProperties": false      },      "UpdateMemberAchievementProgressFormType": {        "properties": {          "completedCount": {            "type": "integer"          },          "rules": {            "type": "array",            "items": {              "required": [                "achievementRuleId",                "currentPeriodValue"              ],              "properties": {                "achievementRuleId": {                  "type": "string",                  "format": "uuid"                },                "currentPeriodValue": {                  "type": "number",                  "format": "float"                },                "completedConsecutivePeriods": {                  "type": "integer"                }              },              "type": "object"            }          }        },        "type": "object"      },      "UpdateMemberChallengeProgressFormType": {        "properties": {          "completedCount": {            "type": "integer"          },          "milestones": {            "type": "array",            "items": {              "required": [                "milestoneId",                "currentPeriodValue"              ],              "properties": {                "milestoneId": {                  "type": "string",                  "format": "uuid"                },                "currentPeriodValue": {                  "type": "number",                  "format": "float"                },                "completedConsecutivePeriods": {                  "type": "integer"                }              },              "type": "object"            }          }        },        "type": "object"      },      "BadgeMemberResponse": {        "required": [          "badgeType",          "badgeTypeId",          "name",          "completedCount",          "createdAt",          "updatedAt"        ],        "properties": {          "badgeType": {            "required": [              "badgeTypeId",              "systemCode",              "active",              "name",              "translations"            ],            "properties": {              "badgeTypeId": {                "type": "string",                "format": "uuid"              },              "systemCode": {                "type": "string"              },              "active": {                "type": "boolean"              },              "name": {                "type": "string"              },              "translations": {                "$ref": "#/components/schemas/ResponseTranslations"              }            },            "type": "object"          },          "badgeTypeId": {            "description": "Use `badgeType.badgeTypeId` instead",            "type": "string",            "format": "uuid",            "deprecated": true          },          "name": {            "description": "Use `badgeType.name` instead",            "type": "string",            "deprecated": true          },          "completedCount": {            "type": "integer"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "updatedAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object",        "additionalProperties": false      },      "BadgeTypeResponse": {        "required": [          "badgeTypeId",          "name",          "systemCode",          "active",          "translations",          "createdAt",          "updatedAt"        ],        "properties": {          "badgeTypeId": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string",            "deprecated": true          },          "systemCode": {            "type": "string"          },          "active": {            "type": "boolean"          },          "translations": {            "$ref": "#/components/schemas/ResponseTranslations"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "updatedAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object",        "additionalProperties": false      },      "AssignedTransactionToCustomer": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "AssignedTransactionToCustomer"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "transactionId",              "documentType",              "documentNumber",              "grossValue"            ],            "properties": {              "transactionId": {                "type": "string"              },              "documentType": {                "type": "string"              },              "documentNumber": {                "type": "string"              },              "grossValue": {                "type": "integer"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "CustomerWasActivated": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "CustomerWasActivated"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "CustomerWasAnonymized": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "CustomerWasAnonymized"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "CustomerWasDeactivated": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "CustomerWasDeactivated"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "CustomerWasMovedToLevel": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "CustomerWasMovedToLevel"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "manually",              "removedManually"            ],            "properties": {              "newLevelId": {                "type": "string"              },              "newLevelName": {                "type": "string"              },              "tierSetId": {                "type": "string"              },              "tierSetName": {                "type": "string"              },              "manually": {                "type": "boolean"              },              "removedManually": {                "type": "boolean"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "CustomerWasRegistered": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "CustomerWasRegistered"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "type": "object"          }        },        "type": "object",        "additionalProperties": false      },      "PendingPointsWereAdded": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "PendingPointsWereAdded"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "points",              "transferId",              "walletId",              "walletTypeCode",              "walletUnitSingularName",              "walletUnitPluralName",              "activePoints"            ],            "properties": {              "points": {                "type": "number",                "format": "float"              },              "comment": {                "type": "string"              },              "transferId": {                "type": "string"              },              "walletId": {                "type": "string"              },              "walletTypeCode": {                "type": "string"              },              "walletTypeName": {                "type": "string"              },              "walletUnitSingularName": {                "type": "string"              },              "walletUnitPluralName": {                "type": "string"              },              "activePoints": {                "type": "integer"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PendingPointsWereCanceled": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "PendingPointsWereCanceled"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "transferId",              "walletId",              "walletTypeCode",              "walletUnitSingularName",              "walletUnitPluralName",              "points",              "activePoints"            ],            "properties": {              "transferId": {                "type": "string",                "format": "uuid"              },              "walletId": {                "type": "string",                "format": "uuid"              },              "walletTypeCode": {                "type": "string"              },              "walletTypeName": {                "type": "string"              },              "walletUnitSingularName": {                "type": "string"              },              "walletUnitPluralName": {                "type": "string"              },              "points": {                "type": "number",                "format": "float"              },              "comment": {                "type": "string"              },              "activePoints": {                "type": "integer"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PointsWereAdded": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "PointsWereAdded"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "points",              "transferId",              "walletId",              "walletTypeCode",              "walletUnitSingularName",              "walletUnitPluralName",              "activePoints"            ],            "properties": {              "points": {                "type": "number",                "format": "float"              },              "comment": {                "type": "string"              },              "transferId": {                "type": "string"              },              "walletId": {                "type": "string"              },              "walletTypeCode": {                "type": "string"              },              "walletTypeName": {                "type": "string"              },              "walletUnitSingularName": {                "type": "string"              },              "walletUnitPluralName": {                "type": "string"              },              "activePoints": {                "type": "integer"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PointsWereBlocked": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "PointsWereBlocked"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "transferId",              "walletId",              "walletTypeCode",              "walletUnitSingularName",              "walletUnitPluralName",              "points",              "activePoints"            ],            "properties": {              "transferId": {                "type": "string",                "format": "uuid"              },              "walletId": {                "type": "string",                "format": "uuid"              },              "walletTypeCode": {                "type": "string"              },              "walletTypeName": {                "type": "string"              },              "walletUnitSingularName": {                "type": "string"              },              "walletUnitPluralName": {                "type": "string"              },              "points": {                "type": "number",                "format": "float"              },              "comment": {                "type": "string"              },              "activePoints": {                "type": "integer"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PointsWereCanceled": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "PointsWereCanceled"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "transferId",              "walletId",              "walletTypeCode",              "walletUnitSingularName",              "walletUnitPluralName",              "points",              "activePoints"            ],            "properties": {              "transferId": {                "type": "string",                "format": "uuid"              },              "walletId": {                "type": "string",                "format": "uuid"              },              "walletTypeCode": {                "type": "string"              },              "walletTypeName": {                "type": "string"              },              "walletUnitSingularName": {                "type": "string"              },              "walletUnitPluralName": {                "type": "string"              },              "points": {                "type": "number",                "format": "float"              },              "comment": {                "type": "string"              },              "activePoints": {                "type": "integer"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PointsWereExpired": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "PointsWereExpired"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "transferId",              "walletId",              "walletTypeCode",              "walletUnitSingularName",              "walletUnitPluralName",              "points",              "activePoints"            ],            "properties": {              "transferId": {                "type": "string",                "format": "uuid"              },              "walletId": {                "type": "string",                "format": "uuid"              },              "walletTypeCode": {                "type": "string"              },              "walletTypeName": {                "type": "string"              },              "walletUnitSingularName": {                "type": "string"              },              "walletUnitPluralName": {                "type": "string"              },              "points": {                "type": "number",                "format": "float"              },              "comment": {                "type": "string"              },              "activePoints": {                "type": "integer"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PointsWereSpent": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "PointsWereSpent"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "transferId",              "walletId",              "walletTypeCode",              "walletUnitSingularName",              "walletUnitPluralName",              "points",              "activePoints"            ],            "properties": {              "transferId": {                "type": "string",                "format": "uuid"              },              "walletId": {                "type": "string",                "format": "uuid"              },              "walletTypeCode": {                "type": "string"              },              "walletTypeName": {                "type": "string"              },              "walletUnitSingularName": {                "type": "string"              },              "walletUnitPluralName": {                "type": "string"              },              "points": {                "type": "number",                "format": "float"              },              "comment": {                "type": "string"              },              "activePoints": {                "type": "integer"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PointsWereTransferred": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "deprecated": true,            "enum": [              "PointsWereTransferred"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "points"            ],            "properties": {              "points": {                "type": "number",                "format": "float"              },              "receiverFirstName": {                "type": "string"              },              "receiverLastName": {                "type": "string"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PointsWereUnblocked": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "PointsWereUnblocked"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "points",              "transferId",              "walletId",              "walletTypeCode",              "walletUnitSingularName",              "walletUnitPluralName",              "activePoints"            ],            "properties": {              "points": {                "type": "number",                "format": "float"              },              "comment": {                "type": "string"              },              "transferId": {                "type": "string"              },              "walletId": {                "type": "string"              },              "walletTypeCode": {                "type": "string"              },              "walletTypeName": {                "type": "string"              },              "walletUnitSingularName": {                "type": "string"              },              "walletUnitPluralName": {                "type": "string"              },              "activePoints": {                "type": "integer"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "PointsWereUnlocked": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "PointsWereUnlocked"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "points",              "transferId",              "walletId",              "walletTypeCode",              "walletUnitSingularName",              "walletUnitPluralName",              "activePoints"            ],            "properties": {              "points": {                "type": "number",                "format": "float"              },              "comment": {                "type": "string"              },              "transferId": {                "type": "string"              },              "walletId": {                "type": "string"              },              "walletTypeCode": {                "type": "string"              },              "walletTypeName": {                "type": "string"              },              "walletUnitSingularName": {                "type": "string"              },              "walletUnitPluralName": {                "type": "string"              },              "activePoints": {                "type": "integer"              },              "eventDate": {                "description": "ISO 8601 timestamp (microsecond precision) of when this event occurred. Absent for entries created before high-precision tracking was introduced.",                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "RewardWasBought": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "RewardWasBought"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "issuedRewardId",              "rewardId"            ],            "properties": {              "rewardName": {                "type": "string"              },              "issuedRewardId": {                "type": "string"              },              "rewardId": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "AchievementCompleted": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "AchievementCompleted"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "adminId",              "achievementName",              "manuallyEdited"            ],            "properties": {              "adminId": {                "type": "string"              },              "manuallyEdited": {                "type": "boolean"              },              "achievementName": {                "type": "string"              },              "achievementId": {                "type": "string"              },              "campaignId": {                "type": "string"              },              "previousCompletionCount": {                "type": "integer"              },              "currentCompletionCount": {                "type": "integer"              },              "completedAt": {                "type": "string"              },              "isDuplicatedByChallenge": {                "description": "Present and set to true only for migrated challenge achievements",                "type": "boolean"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "AssignedCustomEventToCustomer": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "AssignedCustomEventToCustomer"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "customEventId",              "type"            ],            "properties": {              "customEventId": {                "type": "string"              },              "type": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "CustomAttributeWasAdded": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "CustomAttributeWasAdded"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "customAttributeKey",              "customAttributeValue"            ],            "properties": {              "customAttributeKey": {                "type": "string"              },              "customAttributeValue": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "CustomAttributesWereUpdated": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "CustomAttributesWereUpdated"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "customAttributeKey",              "customAttributeValue"            ],            "properties": {              "customAttributeKey": {                "type": "string"              },              "customAttributeValue": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "CustomAttributesWereDeleted": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "CustomAttributesWereDeleted"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "customAttributeKey"            ],            "properties": {              "customAttributeKey": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "MemberAchievementCompletionCountWasDecreased": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "MemberAchievementCompletionCountWasDecreased"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "adminId",              "previousCompletionCount",              "currentCompletionCount",              "achievementName"            ],            "properties": {              "adminId": {                "type": "string"              },              "previousCompletionCount": {                "type": "integer"              },              "currentCompletionCount": {                "type": "integer"              },              "achievementName": {                "type": "string"              },              "achievementId": {                "type": "string"              },              "campaignId": {                "type": "string"              },              "isDuplicatedByChallenge": {                "description": "Present and set to true only for migrated challenge achievements",                "type": "boolean"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "MemberAchievementProgressWasChanged": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "MemberAchievementProgressWasChanged"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "adminId",              "achievementName"            ],            "properties": {              "adminId": {                "type": "string"              },              "achievementName": {                "type": "string"              },              "achievementId": {                "type": "string"              },              "campaignId": {                "type": "string"              },              "rulesBeforeChanges": {                "type": "array",                "items": {                  "required": [                    "achievementRuleId",                    "periodGoal",                    "currentPeriodValue"                  ],                  "properties": {                    "achievementRuleId": {                      "type": "string"                    },                    "periodGoal": {                      "type": "number"                    },                    "currentPeriodValue": {                      "type": "number"                    },                    "consecutivePeriods": {                      "type": "integer"                    },                    "completedConsecutivePeriods": {                      "type": "integer"                    },                    "periodValue": {                      "type": "number"                    }                  },                  "type": "object",                  "additionalProperties": false                }              },              "rulesAfterChanges": {                "type": "array",                "items": {                  "required": [                    "achievementRuleId",                    "periodGoal",                    "currentPeriodValue"                  ],                  "properties": {                    "achievementRuleId": {                      "type": "string"                    },                    "periodGoal": {                      "type": "number"                    },                    "currentPeriodValue": {                      "type": "number"                    },                    "consecutivePeriods": {                      "type": "integer"                    },                    "completedConsecutivePeriods": {                      "type": "integer"                    },                    "periodValue": {                      "type": "number"                    }                  },                  "type": "object",                  "additionalProperties": false                }              },              "isDuplicatedByChallenge": {                "description": "Present and set to true only for migrated challenge achievements",                "type": "boolean"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "MemberCustomFieldGroupDataChanged": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "MemberCustomFieldGroupDataChanged"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "groupId",              "groupKey",              "groupName",              "valuesBefore",              "valuesAfter"            ],            "properties": {              "groupId": {                "type": "string"              },              "groupKey": {                "type": "string"              },              "groupName": {                "type": "string"              },              "valuesBefore": {                "type": "object",                "additionalProperties": true              },              "valuesAfter": {                "type": "object",                "additionalProperties": true              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "MemberCustomFieldGroupDataRemoved": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "MemberCustomFieldGroupDataRemoved"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "groupId",              "groupKey",              "groupName",              "removedValues"            ],            "properties": {              "groupId": {                "type": "string"              },              "groupKey": {                "type": "string"              },              "groupName": {                "type": "string"              },              "removedValues": {                "type": "object",                "additionalProperties": true              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "ChallengeCompleted": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "ChallengeCompleted"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "adminId",              "challengeName",              "manuallyEdited",              "challengeId"            ],            "properties": {              "adminId": {                "type": "string"              },              "manuallyEdited": {                "type": "boolean"              },              "challengeName": {                "type": "string"              },              "challengeId": {                "type": "string"              },              "previousCompletionCount": {                "type": "integer"              },              "currentCompletionCount": {                "type": "integer"              },              "completedAt": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "MemberChallengeCompletionCountWasDecreased": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "MemberChallengeCompletionCountWasDecreased"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "adminId",              "previousCompletionCount",              "currentCompletionCount",              "challengeName",              "challengeId"            ],            "properties": {              "adminId": {                "type": "string"              },              "previousCompletionCount": {                "type": "integer"              },              "currentCompletionCount": {                "type": "integer"              },              "challengeName": {                "type": "string"              },              "challengeId": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "MemberChallengeProgressWasChanged": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "MemberChallengeProgressWasChanged"            ]          },          "accountId": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "adminId",              "challengeName",              "challengeId"            ],            "properties": {              "adminId": {                "type": "string"              },              "challengeName": {                "type": "string"              },              "challengeId": {                "type": "string"              },              "milestonesBeforeChanges": {                "type": "array",                "items": {                  "required": [                    "milestoneId",                    "periodGoal",                    "currentPeriodValue"                  ],                  "properties": {                    "milestoneId": {                      "type": "string"                    },                    "periodGoal": {                      "type": "number"                    },                    "currentPeriodValue": {                      "type": "number"                    },                    "consecutivePeriods": {                      "type": "integer"                    },                    "completedConsecutivePeriods": {                      "type": "integer"                    },                    "periodValue": {                      "type": "number"                    }                  },                  "type": "object",                  "additionalProperties": false                }              },              "milestonesAfterChanges": {                "type": "array",                "items": {                  "required": [                    "milestoneId",                    "periodGoal",                    "currentPeriodValue"                  ],                  "properties": {                    "milestoneId": {                      "type": "string"                    },                    "periodGoal": {                      "type": "number"                    },                    "currentPeriodValue": {                      "type": "number"                    },                    "consecutivePeriods": {                      "type": "integer"                    },                    "completedConsecutivePeriods": {                      "type": "integer"                    },                    "periodValue": {                      "type": "number"                    }                  },                  "type": "object",                  "additionalProperties": false                }              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "BadgeCompleted": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "BadgeCompleted"            ]          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "badgeTypeId",              "badgeName",              "previousCompletedCount",              "currentCompletedCount"            ],            "properties": {              "badgeName": {                "type": "string"              },              "badgeTypeId": {                "type": "string"              },              "previousCompletedCount": {                "type": "integer"              },              "currentCompletedCount": {                "type": "integer"              },              "sourceName": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "MemberBadgeCompletedCountWasChanged": {        "required": [          "customerId",          "type",          "createdAt"        ],        "properties": {          "customerId": {            "type": "string"          },          "type": {            "type": "string",            "enum": [              "MemberBadgeCompletedCountWasChanged"            ]          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "adminId",              "badgeName",              "badgeTypeId",              "manuallyEdited",              "previousCompletedCount",              "currentCompletedCount"            ],            "properties": {              "adminId": {                "type": "string"              },              "manuallyEdited": {                "type": "boolean"              },              "badgeName": {                "type": "string"              },              "badgeTypeId": {                "type": "string"              },              "previousCompletedCount": {                "type": "integer"              },              "currentCompletedCount": {                "type": "integer"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "IssuedRewardWasCancelled": {        "required": [          "type",          "customerId",          "createdAt",          "flatVariables"        ],        "properties": {          "type": {            "type": "string",            "enum": [              "IssuedRewardWasCancelled"            ],            "example": "IssuedRewardWasCancelled"          },          "customerId": {            "type": "string",            "format": "uuid",            "example": "00000000-0000-474c-b092-b0dd880c07aa"          },          "createdAt": {            "type": "string",            "format": "date-time",            "example": "2025-07-24T14:23:30+02:00"          },          "flatVariables": {            "required": [              "rewardId",              "issuedRewardId",              "name",              "cancelledAt"            ],            "properties": {              "rewardId": {                "type": "string",                "format": "uuid",                "example": "6a861f8a-6906-4002-8b9c-4db407e810ea"              },              "issuedRewardId": {                "type": "string",                "format": "uuid",                "example": "81d448fd-520a-4855-ad60-db93e959f563"              },              "name": {                "type": "string",                "example": "Test configured reward"              },              "cancelledAt": {                "type": "string",                "format": "date-time",                "example": "2025-07-24T14:23:30+02:00"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "RewardFortuneWheelWasDrawn": {        "required": [          "type",          "customerId",          "createdAt",          "flatVariables"        ],        "properties": {          "type": {            "type": "string",            "enum": [              "RewardFortuneWheelWasDrawn"            ]          },          "customerId": {            "type": "string",            "format": "uuid"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "flatVariables": {            "required": [              "rewardId",              "issuedRewardId",              "ruleName",              "ruleChance"            ],            "properties": {              "rewardId": {                "type": "string",                "format": "uuid"              },              "rewardName": {                "type": "string"              },              "issuedRewardId": {                "type": "string",                "format": "uuid"              },              "ruleName": {                "type": "string"              },              "ruleChance": {                "type": "number",                "maximum": 1,                "minimum": 0              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "RedemptionStatusRequestBody": {        "properties": {          "status": {            "description": "Current status of the redemeed reward. By default, all rewards are redeemed with issued status.",            "type": "string",            "enum": [              "issued",              "pending",              "approved",              "packing",              "awaiting_shipping",              "shipped",              "returned",              "completed",              "canceled",              "rejected"            ]          },          "comment": {            "description": "Comment related to the status change (optional).",            "type": "string"          }        },        "type": "object"      },      "FortuneWheelStatus": {        "required": [          "drawnAt",          "ruleName",          "effects"        ],        "properties": {          "drawnAt": {            "type": "string",            "format": "date-time"          },          "ruleName": {            "type": "string"          },          "effects": {            "type": "array",            "items": {              "$ref": "#/components/schemas/EffectResponse"            }          }        },        "type": "object",        "additionalProperties": false      },      "MemberRewardResponse": {        "required": [          "reward",          "brandIcon",          "rewardId",          "active",          "labels",          "featured",          "public",          "photos",          "createdAt",          "translations",          "segmentNames",          "levelNames",          "categoryNames"        ],        "properties": {          "reward": {            "type": "string"          },          "name": {            "type": "string"          },          "levels": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "categories": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "brandIcon": {            "type": "boolean"          },          "canBeBoughtByCustomer": {            "type": "boolean",            "deprecated": true          },          "rewardId": {            "type": "string",            "format": "uuid"          },          "target": {            "type": "string",            "enum": [              "level",              "segment"            ]          },          "active": {            "type": "boolean"          },          "costInPoints": {            "type": "number"          },          "activity": {            "properties": {              "allTime": {                "type": "boolean"              }            },            "type": "object"          },          "visibility": {            "properties": {              "allTime": {                "type": "boolean"              }            },            "type": "object"          },          "tax": {            "type": "number"          },          "taxPriceValue": {            "type": "number"          },          "price": {            "type": "number"          },          "labels": {            "type": "array",            "items": {              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object"            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "photos": {            "type": "array",            "items": {              "type": "object"            }          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "usageLimit": {            "properties": {              "general": {                "type": "number"              },              "perUser": {                "type": "number"              }            },            "type": "object",            "deprecated": true          },          "notIssuedCoupons": {            "type": "number"          },          "limitUsages": {            "properties": {              "general": {                "properties": {                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      }                    },                    "type": "object"                  },                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  }                },                "type": "object"              },              "perMember": {                "properties": {                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      }                    },                    "type": "object"                  },                  "currentValue": {                    "type": "number",                    "format": "float"                  },                  "limitValue": {                    "type": "number",                    "format": "float"                  }                },                "type": "object"              }            },            "type": "object"          },          "fulfillmentTracking": {            "type": "boolean",            "deprecated": true          },          "translations": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "id": {                  "type": "integer"                },                "locale": {                  "type": "string"                }              },              "type": "object"            }          },          "couponGenerator": {            "properties": {              "length": {                "type": "number"              },              "characterSet": {                "type": "string"              }            },            "type": "object"          },          "couponValue": {            "type": "number"          },          "segmentNames": {            "type": "object",            "additionalProperties": {              "type": "string"            }          },          "levelNames": {            "type": "object",            "additionalProperties": {              "type": "string"            }          },          "categoryNames": {            "type": "object",            "additionalProperties": {              "type": "string"            }          },          "usageLeft": {            "type": "number",            "deprecated": true          },          "usageLeftForCustomer": {            "type": "number",            "deprecated": true          },          "unitsConversion": {            "properties": {              "ratio": {                "type": "number",                "format": "float"              },              "rounding": {                "type": "string",                "enum": [                  "up",                  "down",                  "default"                ]              }            },            "type": "object"          }        },        "type": "object"      },      "associatedResource": {        "title": "associatedResource",        "properties": {          "id": {            "type": "string",            "format": "uuid"          },          "name": {            "type": "string"          },          "active": {            "type": "boolean"          },          "additionalData": {            "type": "object",            "additionalProperties": {              "type": "string"            }          }        },        "type": "object",        "additionalProperties": false      },      "total": {        "title": "total",        "properties": {          "all": {            "type": "integer",            "deprecated": true          },          "estimated": {            "type": "boolean",            "deprecated": true          }        },        "type": "object",        "deprecated": true,        "additionalProperties": false      },      "StoreResponse": {        "description": "Store",        "required": [          "storeId",          "code",          "currency",          "name",          "active"        ],        "properties": {          "storeId": {            "type": "string",            "format": "uuid"          },          "code": {            "type": "string",            "example": "DEFAULT"          },          "currency": {            "type": "string",            "example": "USD"          },          "name": {            "type": "string"          },          "active": {            "type": "boolean"          },          "createdBy": {            "type": "string"          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "updatedBy": {            "type": "string"          },          "updatedAt": {            "type": "string",            "format": "date-time"          }        },        "type": "object",        "additionalProperties": false      },      "StoreFormType": {        "required": [          "name",          "currency",          "active"        ],        "properties": {          "code": {            "type": "string"          },          "name": {            "type": "string"          },          "currency": {            "type": "string"          },          "active": {            "type": "boolean"          }        },        "type": "object"      },      "ListOfItems": {        "properties": {          "items": {            "type": "array",            "items": {              "type": "object"            }          },          "total": {            "description": "Total results",            "properties": {              "all": {                "type": "integer",                "deprecated": true              },              "filtered": {                "type": "integer",                "deprecated": true              },              "estimated": {                "description": "Field estimated is used to show that the results are estimated. It might happen when there are more than 5000 results due to performance optimization.",                "type": "boolean",                "deprecated": true              }            },            "type": "object",            "deprecated": true          }        },        "type": "object"      },      "MemberTierSet": {        "required": [          "currentTierId",          "tierSetId",          "tierSetName",          "currentTierName",          "manually"        ],        "properties": {          "currentTierId": {            "description": "Current member tier for tier set",            "type": "string",            "format": "uuid"          },          "tierSetId": {            "description": "Tier set Id",            "type": "string",            "format": "uuid"          },          "tierSetName": {            "description": "Tier set name",            "type": "string"          },          "currentTierName": {            "description": "Tier name",            "type": "string"          },          "manually": {            "description": "The field will indicate whether a given tier in tier set has been assigned manually",            "type": "boolean"          }        },        "type": "object",        "additionalProperties": false      },      "TierSetResponse": {        "required": [          "tierSetId",          "name",          "createdAt",          "updatedAt",          "conditions",          "isMigrated",          "isDefault"        ],        "properties": {          "tierSetId": {            "description": "Tier set name id.",            "type": "string",            "format": "uuid"          },          "name": {            "description": "Tier set name.",            "type": "string"          },          "description": {            "description": "Tier set description.",            "type": "string"          },          "active": {            "description": "The filed shows if tier set is active.",            "type": "boolean"          },          "createdAt": {            "description": "Tier set created at date.",            "type": "string",            "format": "date-time"          },          "updatedAt": {            "description": "Tier set updated at date.",            "type": "string",            "format": "date-time"          },          "labels": {            "$ref": "#/components/schemas/Labels"          },          "conditions": {            "description": "Condition settings for a given tier set",            "type": "array",            "items": {              "required": [                "id",                "attribute"              ],              "properties": {                "id": {                  "type": "string",                  "format": "uuid"                },                "attribute": {                  "description": "Specifies the type of attribute. The possible values are:\n- `activeUnits`: The number of units currently active. - `totalEarnedUnits`: The total number of units earned. - `monthsSinceJoiningProgram`: The number of months since the program was joined. - `totalSpending`: The total amount of spending. - `cumulatedEarnedUnits`: The total number of units earned that will be reset when recalculation occur\n",                  "type": "string",                  "enum": [                    "activeUnits",                    "totalEarnedUnits",                    "monthsSinceJoiningProgram",                    "totalSpending",                    "cumulatedEarnedUnits"                  ]                },                "walletType": {                  "description": "This field is occur for attributes related to units",                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "tiers": {            "description": "This field return tiers belong to tier set",            "type": "array",            "items": {              "required": [                "levelId",                "name",                "active"              ],              "properties": {                "levelId": {                  "type": "string",                  "format": "uuid"                },                "name": {                  "type": "string"                },                "description": {                  "type": "string"                },                "active": {                  "description": "The field shows whether the tier is active"                }              },              "type": "object",              "additionalProperties": false            }          },          "translations": {            "$ref": "#/components/schemas/Translations"          },          "isMigrated": {            "description": "This field shows whether the tier set has been migrated from the old tier system",            "type": "boolean"          },          "isDefault": {            "description": "This field shows which tier set was added first, which means that the tier set is default",            "type": "boolean"          },          "downgrade": {            "$ref": "#/components/schemas/Downgrade"          }        },        "type": "object",        "additionalProperties": false      },      "PutTierSet": {        "required": [          "tierSet"        ],        "properties": {          "tierSet": {            "required": [              "translations",              "conditions"            ],            "properties": {              "translations": {                "$ref": "#/components/schemas/Translations"              },              "active": {                "description": "The field determines whether the tier set will be active",                "type": "boolean"              },              "labels": {                "$ref": "#/components/schemas/Labels"              },              "conditions": {                "type": "array",                "items": {                  "required": [                    "attribute"                  ],                  "properties": {                    "id": {                      "description": "Leave empty to add a new condition. Use existing id to update specific condition.",                      "type": "string",                      "format": "uuid"                    },                    "attribute": {                      "description": "Specifies the type of attribute. The possible values are:\n- `activeUnits`: The number of units currently active. - `totalEarnedUnits`: The total number of units earned. - `monthsSinceJoiningProgram`: The number of months since the program was joined. - `totalSpending`: The total amount of spending. - `cumulatedEarnedUnits`: The total number of units earned that will be reset when recalculation occur\n",                      "type": "string",                      "enum": [                        "activeUnits",                        "totalEarnedUnits",                        "monthsSinceJoiningProgram",                        "totalSpending",                        "cumulatedEarnedUnits"                      ]                    },                    "walletType": {                      "description": "This field is only required for attributes related to units",                      "type": "string",                      "example": "default"                    }                  },                  "type": "object",                  "additionalProperties": false                }              },              "downgrade": {                "$ref": "#/components/schemas/Downgrade"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "TierSetTiersResponse": {        "required": [          "levelId",          "tierSet",          "name",          "storeCode",          "active",          "rewards",          "createdAt",          "updatedAt",          "translations",          "isDefault",          "hasPhoto",          "conditions"        ],        "properties": {          "levelId": {            "description": "This field show tier id",            "type": "string",            "format": "uuid"          },          "tierSet": {            "description": "This field shows related tier set",            "required": [              "tierSetId",              "name"            ],            "properties": {              "tierSetId": {                "properties": {                  "tierSetId": {                    "type": "string",                    "format": "uuid"                  }                },                "type": "object"              },              "name": {                "type": "string"              }            },            "type": "object",            "additionalProperties": false          },          "name": {            "description": "This field show tier name",            "type": "string"          },          "description": {            "description": "This field show tier description",            "type": "string"          },          "storeCode": {            "description": "The field shows what store tier it is in",            "type": "string"          },          "active": {            "description": "The field shows whether the tier is active",            "type": "boolean"          },          "rewards": {            "type": "array",            "items": {              "required": [                "rewardId",                "name",                "code",                "active",                "createdAt",                "updatedAt"              ],              "properties": {                "rewardId": {                  "description": "Reward ID.",                  "type": "string",                  "format": "uuid"                },                "name": {                  "description": "Benefit name.",                  "type": "string"                },                "value": {                  "description": "Benefit value.",                  "type": "number",                  "format": "float"                },                "code": {                  "description": "Benefit code.",                  "type": "string"                },                "labels": {                  "$ref": "#/components/schemas/Labels"                },                "active": {                  "type": "boolean"                },                "startAt": {                  "type": "string",                  "format": "date-time"                },                "endAt": {                  "type": "string",                  "format": "date-time"                },                "createdAt": {                  "type": "string",                  "format": "date-time"                },                "updatedAt": {                  "type": "string",                  "format": "date-time"                },                "createdBy": {                  "type": "string",                  "format": "uuid"                },                "updatedBy": {                  "type": "string",                  "format": "uuid"                }              },              "type": "object",              "additionalProperties": false            }          },          "conditions": {            "description": "This field shows conditions that member must meet to be at this tier",            "type": "array",            "items": {              "required": [                "conditionId",                "attribute",                "value"              ],              "properties": {                "conditionId": {                  "type": "string",                  "format": "uuid"                },                "attribute": {                  "description": "Specifies the type of attribute. The possible values are:\n- `activeUnits`: The number of units currently active. - `totalEarnedUnits`: The total number of units earned. - `monthsSinceJoiningProgram`: The number of months since the program was joined. - `totalSpending`: The total amount of spending. - `cumulatedEarnedUnits`: The total number of units earned that will be reset when recalculation occur\n",                  "enum": [                    "activeUnits",                    "totalEarnedUnits",                    "monthsSinceJoiningProgram",                    "totalSpending",                    "cumulatedEarnedUnits"                  ]                },                "value": {                  "description": "This field shows the value that was specified for the attribute",                  "type": "number",                  "format": "float"                }              },              "type": "object",              "additionalProperties": false            }          },          "translations": {            "$ref": "#/components/schemas/Translations"          },          "createdAt": {            "description": "This field shows date then tier was created at",            "type": "string",            "format": "date-time"          },          "updatedAt": {            "description": "This field shows date then tier was updated at",            "type": "string",            "format": "date-time"          },          "hasPhoto": {            "description": "This field show if tier have photo",            "type": "boolean"          },          "conditionValue": {            "type": "number",            "format": "float",            "deprecated": true          },          "isDefault": {            "description": "This field shows whether the tier is the default tier that was created automatically along with the tier set. Tier serves as the starting tier in tie set",            "type": "boolean"          }        },        "type": "object",        "additionalProperties": false      },      "TiersListPut": {        "type": "array",        "items": {          "required": [            "conditions",            "translations"          ],          "properties": {            "levelId": {              "description": "Leave empty to add a new tier. Use existing id to update specific tier.",              "type": "string",              "format": "uuid"            },            "translations": {              "$ref": "#/components/schemas/Translations"            },            "active": {              "description": "Tier availability",              "type": "boolean"            },            "conditions": {              "description": "Conditions are determined by the tier set configuration",              "type": "array",              "items": {                "required": [                  "conditionId",                  "value"                ],                "properties": {                  "conditionId": {                    "description": "Relevant conditionId from the tier set configuration",                    "type": "string",                    "format": "uuid"                  },                  "value": {                    "description": "Minimal value for the tier. Remember it must not be lower than the lower tier’s value.",                    "type": "number",                    "format": "float"                  }                },                "type": "object"              }            },            "rewards": {              "description": "Lifetime benefits associated with tier.",              "type": "array",              "items": {                "required": [                  "name",                  "code"                ],                "properties": {                  "rewardId": {                    "description": "Reward ID. Leave empty to to add a new benefit.",                    "type": "string",                    "format": "uuid"                  },                  "name": {                    "description": "Benefit name.",                    "type": "string"                  },                  "value": {                    "description": "Benefit value.",                    "type": "number",                    "format": "float"                  },                  "code": {                    "description": "Benefit code.",                    "type": "string"                  },                  "labels": {                    "description": "Custom attributes",                    "type": "array",                    "items": {                      "properties": {                        "key": {                          "description": "Custom attribute key",                          "type": "string"                        },                        "value": {                          "description": "Custom attribute value",                          "type": "string"                        }                      },                      "type": "object"                    }                  },                  "active": {                    "description": "Benefit availability",                    "type": "boolean"                  },                  "startAt": {                    "description": "Benefit availability start date",                    "type": "string",                    "format": "date-time"                  },                  "endAt": {                    "description": "Benefit availability end date",                    "type": "string",                    "format": "date-time"                  }                },                "type": "object"              }            }          },          "type": "object",          "additionalProperties": false        }      },      "PostWalletTypeRequestBody": {        "properties": {          "walletType": {            "required": [              "translations",              "unitSingularName",              "unitPluralName",              "unitDaysExpiryAfter",              "code"            ],            "properties": {              "translations": {                "properties": {                  "en": {                    "required": [                      "name"                    ],                    "properties": {                      "name": {                        "description": "Wallet name",                        "type": "string"                      },                      "description": {                        "description": "Wallet description",                        "type": "string"                      }                    },                    "type": "object"                  }                },                "type": "object"              },              "unitSingularName": {                "description": "Singular name of the unit",                "type": "string"              },              "unitPluralName": {                "description": "Plural name of the unit",                "type": "string"              },              "active": {                "description": "Indicates if the wallet type is active",                "type": "boolean"              },              "unitDaysExpiryAfter": {                "description": "Expiry time for the unit:\n\n\n * `all_time_active` - Units never expire\n * `after_x_days` - Units will expire after `unitDaysActiveCount` days\n * `at_the_end_of_the_x_th_year` - Units will expire at the end of the `unitYearsActiveCount`-th year\n * `at_the_end_of_the_month` - Units will expire at the end of the month\n * `at_the_end_of_the_chosen_date` - Units will expire at chosen day of the month\n",                "type": "string",                "enum": [                  "all_time_active",                  "after_x_days",                  "at_the_end_of_the_month",                  "at_the_end_of_the_x_th_year",                  "at_the_end_of_the_chosen_date"                ]              },              "unitDaysActiveCount": {                "description": "Number of days to expire units. Required when `unitDaysExpiryAfter` is `after_x_days`",                "type": "integer"              },              "unitYearsActiveCount": {                "description": "Number of year when units will expire. `0` means this year. Required when `unitDaysExpiryAfter` is `at_the_end_of_the_x_th_year`",                "type": "integer"              },              "unitDaysLocked": {                "description": "Number of days when units will be locked. `0` means this year. Required when `allTimeNotLocked` is `false`",                "type": "integer"              },              "allTimeNotLocked": {                "description": "Indicates if units will be locked after creation. If `false` then units will be locked after creation for `unitDaysLocked` days.",                "type": "boolean",                "default": true              },              "allowNegativeBalance": {                "description": "Indicates if negative balance is allowed",                "type": "boolean",                "default": false              },              "unitExpiryDate": {                "description": "Expiration date for unit in format `m-d`. Required when `unitDaysExpiryAfter` is `at_the_end_of_the_chosen_date`",                "type": "string",                "example": "08-24"              },              "limits": {                "$ref": "#/components/schemas/WalletTypeLimit"              },              "code": {                "description": "Unique wallet type code",                "type": "string",                "example": "my_wallet"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "WalletTypeDetails": {        "required": [          "translations",          "walletTypeId",          "code",          "unitSingularName",          "unitPluralName",          "active",          "isDefault",          "createdAt",          "limits"        ],        "properties": {          "translations": {            "properties": {              "en": {                "required": [                  "name"                ],                "properties": {                  "name": {                    "description": "Wallet name",                    "type": "string"                  },                  "description": {                    "description": "Wallet description",                    "type": "string"                  }                },                "type": "object"              }            },            "type": "object"          },          "walletTypeId": {            "type": "string",            "format": "uuid",            "example": "3eaea517-4336-45c0-b477-f5cc1081fcdb"          },          "code": {            "type": "string",            "example": "string"          },          "unitSingularName": {            "type": "string",            "example": "string"          },          "unitPluralName": {            "type": "string",            "example": "string"          },          "active": {            "type": "boolean",            "example": true          },          "isDefault": {            "type": "boolean",            "example": true          },          "unitDaysExpiryAfter": {            "type": "string",            "example": "string"          },          "unitDaysActiveCount": {            "type": "integer",            "example": 0          },          "unitYearsActiveCount": {            "type": "integer",            "example": 0          },          "unitDaysLocked": {            "type": "integer",            "example": 0          },          "allTimeNotLocked": {            "type": "boolean",            "example": true          },          "createdAt": {            "type": "string",            "format": "date-time",            "example": "2019-08-24T14:15:22Z"          },          "unitExpiryDate": {            "description": "Expiration date for unit in format `m-d`.",            "type": "string",            "example": "08-24"          },          "limits": {            "$ref": "#/components/schemas/WalletTypeLimit"          },          "allowNegativeBalance": {            "type": "boolean",            "example": true          }        },        "type": "object",        "additionalProperties": false      },      "PutWalletTypeRequestBody": {        "properties": {          "walletType": {            "required": [              "translations",              "unitSingularName",              "unitPluralName",              "unitDaysExpiryAfter"            ],            "properties": {              "translations": {                "properties": {                  "en": {                    "required": [                      "name"                    ],                    "properties": {                      "name": {                        "description": "Wallet name",                        "type": "string"                      },                      "description": {                        "description": "Wallet description",                        "type": "string"                      }                    },                    "type": "object"                  }                },                "type": "object"              },              "unitSingularName": {                "description": "Singular name of the unit",                "type": "string"              },              "unitPluralName": {                "description": "Plural name of the unit",                "type": "string"              },              "active": {                "description": "Indicates if the wallet type is active",                "type": "boolean"              },              "unitDaysExpiryAfter": {                "description": "Expiry time for the unit:\n\n\n * `all_time_active` - Units never expire\n * `after_x_days` - Units will expire after `unitDaysActiveCount` days\n * `at_the_end_of_the_x_th_year` - Units will expire at the end of the `unitYearsActiveCount`-th year\n * `at_the_end_of_the_month` - Units will expire at the end of the month\n * `at_the_end_of_the_chosen_date` - Units will expire at chosen day of the month\n",                "type": "string",                "enum": [                  "all_time_active",                  "after_x_days",                  "at_the_end_of_the_month",                  "at_the_end_of_the_x_th_year",                  "at_the_end_of_the_chosen_date"                ]              },              "unitDaysActiveCount": {                "description": "Number of days to expire units. Required when `unitDaysExpiryAfter` is `after_x_days`",                "type": "integer"              },              "unitYearsActiveCount": {                "description": "Number of year when units will expire. `0` means this year. Required when `unitDaysExpiryAfter` is `at_the_end_of_the_x_th_year`",                "type": "integer"              },              "unitDaysLocked": {                "description": "Number of days when units will be locked. `0` means this year. Required when `allTimeNotLocked` is `false`",                "type": "integer"              },              "allTimeNotLocked": {                "description": "Indicates if units will be locked after creation. If `false` then units will be locked after creation for `unitDaysLocked` days.",                "type": "boolean",                "default": true              },              "allowNegativeBalance": {                "description": "Indicates if negative balance is allowed",                "type": "boolean",                "default": false              },              "unitExpiryDate": {                "description": "Expiration date for unit in format `m-d`. Required when `unitDaysExpiryAfter` is `at_the_end_of_the_chosen_date`",                "type": "string",                "example": "08-24"              },              "limits": {                "$ref": "#/components/schemas/WalletTypeLimit"              }            },            "type": "object",            "additionalProperties": false          }        },        "type": "object",        "additionalProperties": false      },      "RotateHmacSecretRequestBody": {        "properties": {          "reason": {            "description": "Reason for rotation (default: \"Manual rotation\")",            "type": "string",            "maxLength": 255,            "example": "Quarterly key rotation per security policy"          }        },        "type": "object"      },      "RotateHmacSecretResponse": {        "properties": {          "message": {            "type": "string",            "example": "HMAC secret key rotated successfully"          },          "newSecretKey": {            "description": "One-time plaintext HMAC secret key (whsec_ prefix + 64 hex chars). Store securely — this key will never be shown again.",            "type": "string",            "example": "whsec_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2"          },          "warning": {            "type": "string",            "example": "This is the only time the secret key will be displayed. Store it securely."          }        },        "type": "object"      },      "ErrorResponse": {        "properties": {          "error": {            "description": "Error message",            "type": "string"          }        },        "type": "object"      },      "WebhookAchievement": {        "required": [          "achievementId",          "active",          "translations",          "rules"        ],        "properties": {          "achievementId": {            "type": "string",            "format": "uuid"          },          "active": {            "type": "boolean"          },          "activity": {            "$ref": "#/components/schemas/AchievementActivity"          },          "limit": {            "properties": {              "value": {                "type": "integer"              },              "interval": {                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "calendarHours",                      "calendarDays",                      "calendarWeeks",                      "calendarMonths",                      "calendarYears"                    ]                  },                  "value": {                    "type": "integer"                  }                },                "type": "object"              }            },            "type": "object"          },          "translations": {            "$ref": "#/components/schemas/Translations"          },          "rules": {            "type": "array",            "items": {              "required": [                "trigger",                "type",                "completeRule",                "conditions",                "aggregation",                "limit",                "translations"              ],              "properties": {                "trigger": {                  "type": "string"                },                "type": {                  "type": "string"                },                "completeRule": {                  "properties": {                    "periodGoal": {                      "type": "integer"                    },                    "period": {                      "properties": {                        "type": {                          "type": "string"                        },                        "consecutive": {                          "type": "integer"                        }                      },                      "type": "object"                    }                  },                  "type": "object"                },                "conditions": {                  "type": "array",                  "items": {                    "properties": {                      "operator": {                        "type": "string"                      },                      "data": {                        "type": "array",                        "items": {                          "type": "string"                        }                      },                      "attribute": {                        "type": "string"                      }                    },                    "type": "object"                  }                },                "aggregation": {                  "properties": {                    "type": {                      "type": "string"                    }                  },                  "type": "object"                },                "limit": {                  "properties": {                    "value": {                      "type": "integer"                    },                    "interval": {                      "properties": {                        "type": {                          "type": "string",                          "enum": [                            "calendarHours",                            "calendarDays",                            "calendarWeeks",                            "calendarMonths",                            "calendarYears"                          ]                        },                        "value": {                          "type": "integer"                        }                      },                      "type": "object"                    }                  },                  "type": "object"                },                "translations": {                  "$ref": "#/components/schemas/Translations"                }              },              "type": "object"            }          }        },        "type": "object"      },      "WebhookCampaign": {        "required": [          "triggerType",          "campaignId",          "name"        ],        "properties": {          "triggerType": {            "enum": [              "transaction",              "custom_event",              "internal_event",              "achievement",              "return_transaction",              "custom_event_unique_code",              "challenge"            ]          },          "campaignId": {            "type": "string"          },          "name": {            "type": "string"          },          "trigger": {            "required": [              "type"            ],            "properties": {              "triggerId": {                "type": "string",                "format": "uuid"              },              "createdAt": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "oneOf": [              {                "title": "Transaction",                "required": [                  "purchasedAt",                  "documentNumber",                  "createdAt",                  "triggerId"                ],                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "transaction"                    ]                  },                  "purchasedAt": {                    "type": "string",                    "format": "date-time"                  },                  "documentNumber": {                    "type": "string"                  }                },                "type": "object"              },              {                "title": "CustomEvent",                "required": [                  "eventDate",                  "createdAt",                  "triggerId"                ],                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "custom_event"                    ]                  },                  "eventDate": {                    "type": "string",                    "format": "date-time"                  },                  "eventId": {                    "type": "string"                  }                },                "type": "object"              },              {                "title": "InternalEvent",                "required": [                  "payload",                  "triggerId"                ],                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "internal_event"                    ]                  },                  "payload": {                    "type": "object",                    "additionalProperties": true                  }                },                "type": "object"              },              {                "title": "CustomEventUniqueCode",                "required": [                  "triggerId"                ],                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "custom_event_unique_code"                    ]                  }                },                "type": "object"              },              {                "title": "Achievement",                "required": [                  "triggerId",                  "relatedAchievement"                ],                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "achievement"                    ]                  },                  "relatedAchievement": {                    "$ref": "#/components/schemas/RelatedAchievement"                  }                },                "type": "object"              },              {                "title": "ReturnTransaction",                "required": [                  "purchasedAt",                  "documentNumber",                  "createdAt",                  "triggerId"                ],                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "return_transaction"                    ]                  },                  "purchasedAt": {                    "type": "string",                    "format": "date-time"                  },                  "documentNumber": {                    "type": "string"                  }                },                "type": "object"              },              {                "title": "Challenge",                "required": [                  "triggerId"                ],                "properties": {                  "type": {                    "type": "string",                    "enum": [                      "challenge"                    ]                  }                },                "type": "object"              }            ]          },          "customFields": {            "type": "object",            "nullable": true,            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          }        },        "type": "object"      },      "WebhookCustomer": {        "description": "Member whose action triggered the campaign",        "properties": {          "customerId": {            "type": "string",            "format": "uuid"          },          "email": {            "type": "string",            "format": "email"          },          "phone": {            "type": "string"          },          "loyaltyCardNumber": {            "type": "string"          }        },        "type": "object"      },      "WebhookReward": {        "properties": {          "rewardId": {            "type": "string",            "format": "uuid"          },          "active": {            "type": "boolean"          },          "fulfillmentTracking": {            "type": "boolean"          },          "canBeBoughtManually": {            "type": "boolean"          },          "type": {            "type": "string"          },          "name": {            "type": "string"          },          "price": {            "type": "number"          },          "levels": {            "description": "Selects specific tiers of the member",            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "segments": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "categories": {            "type": "array",            "items": {              "type": "string",              "format": "uuid"            }          },          "photos": {            "type": "array",            "items": {              "type": "object"            }          },          "translations": {            "type": "array",            "items": {              "properties": {                "name": {                  "type": "string"                },                "id": {                  "type": "integer"                },                "locale": {                  "type": "string"                }              },              "type": "object"            }          },          "createdAt": {            "type": "string",            "format": "date-time"          },          "activity": {            "description": "Activity period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "visibility": {            "description": "Visibility period",            "required": [              "allTime"            ],            "properties": {              "allTime": {                "description": "Marked as unlimited period",                "type": "boolean"              },              "from": {                "type": "string",                "format": "date-time"              },              "to": {                "type": "string",                "format": "date-time"              }            },            "type": "object",            "additionalProperties": false          },          "labels": {            "description": "Labels",            "type": "array",            "items": {              "required": [                "key",                "value"              ],              "properties": {                "key": {                  "type": "string"                },                "value": {                  "type": "string"                }              },              "type": "object",              "additionalProperties": false            }          },          "featured": {            "type": "boolean"          },          "public": {            "type": "boolean"          },          "costInPoints": {            "description": "Cost of reward in units",            "type": "number",            "format": "float",            "minimum": 0,            "example": 60.8,            "nullable": true          },          "usageLimit": {            "required": [              "perUser"            ],            "properties": {              "perUser": {                "description": "Usages limit per member (-1 means unlimited)",                "type": "number",                "format": "int32",                "minimum": -1              },              "general": {                "description": "Global usages limit (-1 means unlimited). Required only when couponGenerator is defined.",                "type": "number",                "format": "int32",                "minimum": -1              }            },            "type": "object",            "additionalProperties": false          },          "limits": {            "description": "New limits structure with intervals",            "properties": {              "general": {                "required": [                  "value"                ],                "properties": {                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      }                    },                    "type": "object"                  },                  "value": {                    "type": "number",                    "format": "float"                  }                },                "type": "object"              },              "perMember": {                "required": [                  "value"                ],                "properties": {                  "interval": {                    "properties": {                      "type": {                        "type": "string",                        "enum": [                          "calendarHours",                          "calendarDays",                          "calendarWeeks",                          "calendarMonths",                          "calendarYears"                        ]                      }                    },                    "type": "object"                  },                  "value": {                    "type": "number",                    "format": "float"                  }                },                "type": "object"              }            },            "type": "object"          },          "customFields": {            "type": "object",            "nullable": true,            "description": "Custom-field values grouped by group key. Present only when the CUSTOM_FIELD_REWARD feature flag is enabled and the reward has stored values; omitted otherwise.",            "additionalProperties": {              "type": "object",              "additionalProperties": true            }          }        },        "type": "object"      },      "WebhookCampaignEffect": {        "properties": {          "status": {            "type": "string"          },          "target": {            "description": "Member who is the target of the campaign (he got the effects of the campaign)",            "type": "string"          },          "walletTypeCode": {            "type": "string",            "nullable": true          },          "type": {            "type": "string"          },          "points": {            "type": "number",            "format": "float"          },          "couponValue": {            "type": "number",            "format": "float"          },          "rewardId": {            "type": "string"          },          "rewardName": {            "description": "Human-readable name of the reward referenced by `rewardId`. Present only when the effect issues a reward whose name is set.",            "type": "string"          },          "badgeSystemCode": {            "type": "string"          },          "badgeName": {            "description": "Human-readable name of the badge referenced by `badgeSystemCode`. Present only when the effect grants a badge whose name is set.",            "type": "string"          }        },        "type": "object"      },      "WebhookSegment": {        "description": "Segment information for webhook events",        "properties": {          "segmentId": {            "type": "string",            "format": "uuid"          },          "segmentName": {            "type": "string"          },          "previousCount": {            "type": "integer"          },          "newCount": {            "type": "integer"          }        },        "type": "object"      },      "WebhookWalletBalance": {        "description": "Snapshot of a member's wallet balance broken down by lifecycle bucket",        "properties": {          "pending": {            "description": "Locked or blocked units not yet spendable",            "type": "number",            "format": "float"          },          "active": {            "description": "Units currently available to spend",            "type": "number",            "format": "float"          },          "burned": {            "description": "Units removed from circulation (spent, expired, or transferred out)",            "type": "number",            "format": "float"          }        },        "type": "object"      }    },    "responses": {      "AccessDenied": {        "description": "Forbidden.",        "content": {          "application/json": {            "schema": {              "required": [                "code",                "message"              ],              "properties": {                "code": {                  "type": "integer",                  "example": 403                },                "message": {                  "type": "string",                  "example": "Forbidden."                }              },              "type": "object"            }          }        }      },      "NotFound": {        "description": "Not found.",        "content": {          "application/json": {            "schema": {              "required": [                "code",                "message"              ],              "properties": {                "code": {                  "type": "integer",                  "example": 404                },                "message": {                  "type": "string",                  "example": "Not Found"                }              },              "type": "object"            }          }        }      },      "NoContent": {        "description": "Success. No content."      },      "BadRequest": {        "description": "Bad request.",        "content": {          "application/json": {            "schema": {              "required": [                "code",                "message",                "errors"              ],              "properties": {                "code": {                  "type": "integer",                  "example": 400                },                "message": {                  "type": "string",                  "example": "Validation failed"                },                "errors": {                  "type": "array",                  "items": {                    "required": [                      "message",                      "parameters",                      "plural",                      "code",                      "path"                    ],                    "properties": {                      "message": {                        "type": "string"                      },                      "parameters": {},                      "plural": {                        "type": "integer",                        "example": null,                        "nullable": true                      },                      "code": {                        "type": "string"                      },                      "path": {                        "type": "string"                      }                    },                    "type": "object"                  }                }              },              "type": "object"            }          }        }      },      "MethodNotAllowed": {        "description": "Method Not Allowed.",        "content": {          "application/json": {            "schema": {              "required": [                "code",                "message"              ],              "properties": {                "code": {                  "type": "string",                  "example": "405"                },                "message": {                  "type": "string",                  "example": "Method Not Allowed."                }              },              "type": "object"            }          }        }      },      "TooManyRequests": {        "description": "Too Many Requests",        "content": {          "application/json": {            "schema": {              "required": [                "message"              ],              "properties": {                "message": {                  "type": "string",                  "example": "Cache is not ready, please try again in 60 seconds."                }              },              "type": "object"            }          }        }      },      "Unauthorized": {        "description": "Unauthorized",        "content": {          "application/json": {            "schema": {              "required": [                "code",                "message"              ],              "properties": {                "code": {                  "type": "integer",                  "example": 401                },                "message": {                  "type": "string",                  "example": "Authentication Required"                }              },              "type": "object"            }          }        }      },      "ServiceUnavailable": {        "description": "Service Unavailable.",        "content": {          "application/json": {            "schema": {              "type": "array",              "items": {                "properties": {                  "status": {                    "type": "string",                    "enum": [                      "OK",                      "Problem",                      "Warning"                    ],                    "example": "Problem"                  },                  "error": {                    "type": "string",                    "example": "Service unavailable"                  },                  "message": {                    "type": "string",                    "example": "The server is temporarily down for maintenance. Please try again later."                  },                  "retryAfter": {                    "type": "integer",                    "example": 3600                  }                },                "type": "object"              }            }          }        }      },      "Conflict": {        "description": "Conflict — the resource is already being processed by another concurrent request.",        "content": {          "application/json": {            "schema": {              "required": [                "code",                "message"              ],              "properties": {                "code": {                  "type": "integer",                  "example": 409                },                "message": {                  "type": "string",                  "example": "Conflict"                }              },              "type": "object"            }          }        }      },      "TokenAndRefreshToken": {        "description": "",        "content": {          "application/json": {            "schema": {              "properties": {                "token": {                  "type": "string",                  "example": "eyJhbGciOiJSUzI1NiIsInR5cCI6..."                },                "refresh_token": {                  "type": "string",                  "example": "0558f8bb29948c4e54c443f..."                }              },              "type": "object"            }          }        }      },      "BadCredentials": {        "description": "Bad credentials.",        "content": {          "application/json": {            "schema": {              "required": [                "message"              ],              "properties": {                "message": {                  "type": "string",                  "example": "Bad credentials."                }              },              "type": "object"            }          }        }      }    }  },  "x-webhook-hmac-signing": {    "description": "## HMAC Webhook Signature Verification\n\nWhen HMAC is enabled on a webhook subscription, each delivery includes these headers:\n\n| Header | Description |\n|--------|-------------|\n| `X-Webhook-Signature` | HMAC-SHA256 hex digest of the canonical request |\n| `X-Webhook-Signature-Algorithm` | Always `hmac-sha256` |\n| `X-Webhook-Timestamp` | Unix timestamp (seconds) when the webhook was sent |\n| `X-Webhook-Request-Id` | Unique UUID for this delivery attempt |\n| `X-Webhook-Signature-Version` | Secret key rotation version (integer, starts at 1) |\n\n### Canonical Request Format\n\nThe signature is computed over a canonical request string (lines joined with `\\n`, no trailing newline):\n\n```\n{METHOD}\n{host_length}:{host}\n{path_length}:{path}\n{sha256_hex_of_body}\n{timestamp}\n{requestId}\n```\n\n### Key Handling\n\nThe HMAC key is the secret key **without** the `whsec_` prefix.\nThe `whsec_` prefix is a type indicator only — strip it before computing the HMAC.\nThe remaining hex string is used as ASCII bytes (not binary-decoded via hex2bin).\n\n### Verification Steps\n\n1. Extract `X-Webhook-Signature`, `X-Webhook-Timestamp`, `X-Webhook-Request-Id` headers\n2. Reject if timestamp is older than 5 minutes (replay protection)\n3. Read the raw request body (do NOT re-serialize)\n4. Build the canonical request string\n5. Compute HMAC-SHA256 using the secret key (without `whsec_` prefix)\n6. Compare with `X-Webhook-Signature` using constant-time comparison\n\n### Edge Cases\n\n- Port numbers in URL (e.g., `:8443`) are NOT included in the host component\n- URLs without a path default to `/`\n- Trailing slashes are preserved (e.g., `/webhooks/`)\n- URL-encoded characters are used as-is (encoded form)\n- Query strings are NOT included in the canonical request\n\n### Test Vector\n\n- **URL**: `https://webhook.site/abc123`\n- **Body**: `{\"eventName\":\"CustomerLevelChanged\",\"messageId\":\"e5519011-fbc3-4bde-851a-5b51df91a9a4\",\"storeCode\":\"DEFAULT\",\"createdAt\":\"2026-03-03T10:04:58+00:00\",\"data\":{\"customer\":{\"customerId\":\"436587bb-6128-4582-b1f1-7f905630a372\",\"email\":\"asd@asd.czxc\"},\"level\":{\"levelId\":\"e82c96cf-32a3-43bd-9034-4df343e50000\",\"name\":\"level0\",\"levelMoveUp\":true,\"levelMoveDown\":false}},\"requestId\":\"8aaaabcd-0f85-46b6-bec3-e343b2f71037\"}`\n- **Secret**: `whsec_f06313e4068b38862f59af8efcfa4bbdf7c726ae67a41e6fb008870c2fe5b8de`\n- **Timestamp**: `1709467498`\n- **Request ID**: `8aaaabcd-0f85-46b6-bec3-e343b2f71037`\n- **Body SHA-256**: `860b064dd965fedd0063926f48cdaf7a1c16f40fbe96d96066027a913d46907e`\n- **HMAC Key (prefix stripped)**: `f06313e4068b38862f59af8efcfa4bbdf7c726ae67a41e6fb008870c2fe5b8de`\n- **Expected Signature**: `2603ad057b8ee0de08cf1f2ba5559c443f6c84022db5b2d1116ee781bdea5c79`\n"  }}