{
  "openapi": "3.1.0",
  "info": {
    "title": "Offerlash Backend API",
    "version": "1.0.0",
    "description": "OpenAPI definition for the Offerlash backend REST API. The specification mirrors the current Laravel implementation, including authentication requirements, pagination metadata, and resource schemas. All endpoints accept optional tracing headers X-Client-ID, X-Installation-ID, and X-Session-ID (UUID). Every response includes an X-Request-ID header generated by the API for correlation. Responses are localized based on the optional Accept-Language header (supported: en, ar)."
  },
  "servers": [
    {
      "url": "https://backend.offerlash.com/api",
      "description": "Production"
    },
    {
      "url": "https://backend.offerlash.dev/api",
      "description": "Development"
    },
    {
      "url": "http://localhost:8000/api",
      "description": "Local development"
    }
  ],
  "paths": {
    "/health": {
      "get": {
        "operationId": "health",
        "tags": ["Health"],
        "responses": {
          "200": {
            "description": "Service dependencies are healthy.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HealthResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/admin/session-bridge": {
      "post": {
        "operationId": "admin.session-bridge.store",
        "tags": ["FirebaseAdminBridge"],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/categories": {
      "get": {
        "operationId": "categories.index",
        "tags": ["VisitorCategory"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`CategoryCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/CategoryCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/countries": {
      "get": {
        "operationId": "countries.index",
        "tags": ["VisitorCountry"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`CountryCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/CountryCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/deals": {
      "get": {
        "operationId": "deals.index",
        "tags": ["VisitorDeal"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "store_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "country_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "currency_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "campaign",
            "in": "query",
            "schema": {
              "type": "string",
              "enum": ["handpicked", "trending"]
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`DealCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DealCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {},
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/deals/handpicked": {
      "get": {
        "operationId": "deals.handpicked",
        "tags": ["VisitorDeal"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "store_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "country_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "currency_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "campaign",
            "in": "query",
            "schema": {
              "type": "string",
              "enum": ["handpicked", "trending"]
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`DealCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DealCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {},
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/deals/trending": {
      "get": {
        "operationId": "deals.trending",
        "tags": ["VisitorDeal"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "store_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "country_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "currency_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "campaign",
            "in": "query",
            "schema": {
              "type": "string",
              "enum": ["handpicked", "trending"]
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`DealCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DealCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {},
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/deals/{dealId}": {
      "get": {
        "operationId": "deals.show",
        "tags": ["VisitorDeal"],
        "parameters": [
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "currency_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`DealResource`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DealResource"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    }
                  },
                  "required": ["data", "status"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {},
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/installations/{installationId}/registration": {
      "delete": {
        "operationId": "installations.registration.destroy",
        "tags": ["InstallationRegistration"],
        "parameters": [
          {
            "name": "installationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$"
            }
          },
          {
            "$ref": "#/components/parameters/RequiredInstallationIdHeader"
          },
          {
            "$ref": "#/components/parameters/InstallationCredentialHeader"
          }
        ],
        "responses": {
          "200": {
            "description": "The installation registration is detached or revoked.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessDeviceRegistrationResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "409": {
            "$ref": "#/components/responses/Conflict"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DetachInstallationRequest"
              }
            }
          }
        },
        "security": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/interactions": {
      "post": {
        "operationId": "interactions.store",
        "tags": ["Interaction"],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitInteractionRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {},
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me": {
      "delete": {
        "operationId": "me.destroy",
        "tags": ["Account"],
        "parameters": [
          {
            "name": "X-Firebase-ID-Token",
            "in": "header",
            "required": true,
            "description": "A recently authenticated Firebase ID token for this account.",
            "schema": {
              "type": "string",
              "format": "jwt"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "get": {
        "operationId": "me.show",
        "tags": ["Profile"],
        "responses": {
          "200": {
            "description": "Current authenticated user.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserResourceResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "patch": {
        "operationId": "me.update",
        "tags": ["Profile"],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProfileRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Updated authenticated user.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserResourceResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/auth-methods": {
      "get": {
        "operationId": "me.auth-methods.index",
        "tags": ["FirebaseIdentity"],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/auth-methods/{provider}": {
      "delete": {
        "operationId": "me.auth-methods.destroy",
        "tags": ["FirebaseIdentity"],
        "parameters": [
          {
            "name": "provider",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Firebase-ID-Token",
            "in": "header",
            "required": true,
            "description": "A recently authenticated Firebase ID token for this account.",
            "schema": {
              "type": "string",
              "format": "jwt"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/auth-reconciliation": {
      "post": {
        "operationId": "me.auth-reconciliation.store",
        "tags": ["FirebaseIdentity"],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/avatar": {
      "post": {
        "operationId": "me.avatar.store",
        "tags": ["Profile"],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/UploadAvatarRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Authenticated user with the updated avatar.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserResourceResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/bookmarked-coupons": {
      "get": {
        "operationId": "me.bookmarked-coupons.index",
        "tags": ["UserCoupon"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`CouponCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/CouponCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/bookmarked-coupons/{couponId}": {
      "put": {
        "operationId": "me.bookmarked-coupons.update",
        "tags": ["UserCoupon"],
        "parameters": [
          {
            "name": "couponId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CouponActionRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "delete": {
        "operationId": "me.bookmarked-coupons.destroy",
        "tags": ["UserCoupon"],
        "parameters": [
          {
            "name": "couponId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/bookmarked-deals": {
      "get": {
        "operationId": "me.bookmarked-deals.index",
        "tags": ["UserDeal"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`DealCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DealCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/bookmarked-deals/{dealId}": {
      "put": {
        "operationId": "me.bookmarked-deals.update",
        "tags": ["UserDeal"],
        "parameters": [
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "delete": {
        "operationId": "me.bookmarked-deals.destroy",
        "tags": ["UserDeal"],
        "parameters": [
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/coupons": {
      "get": {
        "operationId": "me.coupons.index",
        "tags": ["UserCoupon"],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100,
              "default": 30
            }
          },
          {
            "name": "coupon_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "filter",
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "all",
                "profile_only",
                "pending",
                "published",
                "unpublished"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Coupon result.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OwnedCouponsResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "409": {
            "$ref": "#/components/responses/Conflict"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/coupons/{couponId}": {
      "delete": {
        "operationId": "me.coupons.destroy",
        "tags": ["UserCoupon"],
        "parameters": [
          {
            "name": "couponId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Coupon deleted.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageSuccessResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/coupons/{couponId}/bump": {
      "patch": {
        "operationId": "me.coupons.bump",
        "tags": ["UserCoupon"],
        "parameters": [
          {
            "name": "couponId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "No auditLogger call \u2014 intentional. Bumps are high-frequency by design\nand the updated_at column is the authoritative record.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/coupons/{couponId}/public-listing": {
      "patch": {
        "operationId": "me.coupons.public-listing",
        "tags": ["UserCoupon"],
        "parameters": [
          {
            "name": "couponId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PublicListingRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Coupon result.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CouponMutationResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "409": {
            "$ref": "#/components/responses/Conflict"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/deals": {
      "get": {
        "operationId": "me.deals.index",
        "tags": ["UserDeal"],
        "responses": {
          "200": {
            "description": "`UserDealsResource`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/UserDealsResource"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    }
                  },
                  "required": ["data", "status"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/deals/{dealId}": {
      "delete": {
        "operationId": "me.deals.destroy",
        "tags": ["UserDeal"],
        "parameters": [
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Deal deleted.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageSuccessResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/device-revocations": {
      "get": {
        "operationId": "me.device-revocations.index",
        "tags": ["UserDevice"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`DeviceSubscriptionRevocationCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DeviceSubscriptionRevocationCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/device-revocations/{publicId}": {
      "get": {
        "operationId": "me.device-revocations.show",
        "tags": ["UserDevice"],
        "parameters": [
          {
            "name": "publicId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 26,
              "maxLength": 26,
              "pattern": "^[0-9A-HJKMNP-TV-Z]{26}$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`DeviceSubscriptionRevocationResource`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DeviceSubscriptionRevocationResource"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    }
                  },
                  "required": ["data", "status"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/devices": {
      "get": {
        "operationId": "me.devices.index",
        "tags": ["UserDevice"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`UserDeviceCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/UserDeviceCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "post": {
        "operationId": "me.devices.store",
        "tags": ["UserDevice"],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterDeviceRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "`UserDeviceResource`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/UserDeviceResource"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    }
                  },
                  "required": ["data", "status"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "410": {
            "$ref": "#/components/responses/Gone"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/devices/{deviceUuid}": {
      "put": {
        "operationId": "me.devices.update",
        "tags": ["UserDevice"],
        "parameters": [
          {
            "name": "deviceUuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$"
            }
          },
          {
            "$ref": "#/components/parameters/RequiredInstallationIdHeader"
          },
          {
            "$ref": "#/components/parameters/InstallationCredentialHeader"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterInstallationRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The installation registration is current.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessDeviceRegistrationResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "503": {
            "$ref": "#/components/responses/ServiceUnavailable"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "409": {
            "$ref": "#/components/responses/Conflict"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "delete": {
        "operationId": "me.devices.destroy",
        "tags": ["UserDevice"],
        "parameters": [
          {
            "name": "deviceUuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9\\-_:]+$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The previously accepted provider revocation is terminal.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessDeviceSubscriptionRevocationResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "202": {
            "description": "The immutable provider revocation is durably accepted and pending.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AcceptedDeviceSubscriptionRevocationResponse"
                }
              }
            },
            "headers": {
              "Location": {
                "description": "Authenticated status resource for the accepted revocation.",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              },
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "409": {
            "$ref": "#/components/responses/Conflict"
          },
          "503": {
            "$ref": "#/components/responses/ServiceUnavailable"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/followed-stores": {
      "get": {
        "operationId": "me.followed-stores.index",
        "tags": ["UserStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/followed-stores/{storeId}": {
      "put": {
        "operationId": "me.followed-stores.update",
        "tags": ["UserStore"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "delete": {
        "operationId": "me.followed-stores.destroy",
        "tags": ["UserStore"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/notification-preferences": {
      "get": {
        "operationId": "me.notification-preferences.index",
        "tags": ["NotificationPreference"],
        "responses": {
          "200": {
            "description": "`UserNotificationPreferenceResource`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/UserNotificationPreferenceResource"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    }
                  },
                  "required": ["data", "status"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "patch": {
        "operationId": "me.notification-preferences.update",
        "tags": ["NotificationPreference"],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNotificationPreferencesRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "`UserNotificationPreferenceResource`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/UserNotificationPreferenceResource"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    }
                  },
                  "required": ["data", "status"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/profile": {
      "get": {
        "operationId": "mePublicProfileShow",
        "tags": ["Profile"],
        "responses": {
          "200": {
            "description": "Current public profile settings.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserPublicProfileResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "summary": "Get current public profile settings",
        "parameters": []
      },
      "patch": {
        "operationId": "mePublicProfileUpdate",
        "tags": ["Profile"],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMyPublicProfileRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Public profile updated and reloaded.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserPublicProfileResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "summary": "Update current public profile settings",
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/referrer/original": {
      "patch": {
        "operationId": "me.referrer.original.update",
        "tags": ["Profile"],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOriginalReferrerRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The immutable original referrer was applied or the existing attribution was preserved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OriginalReferrerCommandResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/referrer/secondary": {
      "patch": {
        "operationId": "me.referrer.secondary.update",
        "tags": ["Profile"],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSecondaryReferrerRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Authenticated user with the updated secondary referrer.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserResourceResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/sessions": {
      "get": {
        "operationId": "me.sessions.index",
        "tags": ["UserSession"],
        "responses": {
          "200": {
            "description": "Authenticated user sessions ordered from newest to oldest.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserSessionCollectionResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/sessions/{sessionId}": {
      "delete": {
        "operationId": "me.sessions.destroy",
        "tags": ["UserSession"],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The owned session was revoked.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/status": {
      "get": {
        "operationId": "me.status",
        "tags": ["Profile"],
        "responses": {
          "200": {
            "description": "Authenticated user dashboard, limits, and current plan.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserStatusResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/stores/{storeId}/coupons": {
      "post": {
        "operationId": "me.stores.coupons.store",
        "tags": ["UserCoupon"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitCouponRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Coupon result.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CouponMutationResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "409": {
            "$ref": "#/components/responses/Conflict"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/stores/{storeId}/coupons/{couponId}": {
      "patch": {
        "operationId": "me.stores.coupons.update",
        "tags": ["UserCoupon"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "couponId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCouponRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Coupon result.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CouponMutationResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "409": {
            "$ref": "#/components/responses/Conflict"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/stores/{storeId}/deals": {
      "post": {
        "operationId": "me.stores.deals.store",
        "tags": ["UserDeal"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitDealRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/stores/{storeId}/deals/{dealId}": {
      "patch": {
        "operationId": "me.stores.deals.update",
        "tags": ["UserDeal"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDealRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/tracking-codes": {
      "get": {
        "operationId": "me.tracking-codes.index",
        "tags": ["UserTrackingCode"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`TrackingCodeCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/TrackingCodeCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "post": {
        "operationId": "me.tracking-codes.store",
        "tags": ["UserTrackingCode"],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTrackingCodeRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Tracking code accepted.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AcceptedTrackingCodeResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/me/tracking-codes/{trackingCodeId}": {
      "patch": {
        "operationId": "me.tracking-codes.update",
        "tags": ["UserTrackingCode"],
        "parameters": [
          {
            "name": "trackingCodeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTrackingCodeRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Tracking code accepted.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AcceptedTrackingCodeResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "delete": {
        "operationId": "me.tracking-codes.destroy",
        "tags": ["UserTrackingCode"],
        "parameters": [
          {
            "name": "trackingCodeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/metadata/coupon-submission": {
      "get": {
        "operationId": "metadata.coupon-submission",
        "tags": ["UserStore"],
        "responses": {
          "200": {
            "description": "`CouponMetadataResource`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/CouponMetadataResource"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    }
                  },
                  "required": ["data", "status"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/metadata/coupon-submission/stores": {
      "get": {
        "operationId": "metadata.coupon-submission.stores",
        "tags": ["UserStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/metadata/deal-submission": {
      "get": {
        "operationId": "metadata.deal-submission",
        "tags": ["UserDealMetadata"],
        "responses": {
          "200": {
            "description": "`DealSubmissionMetadataResource`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DealSubmissionMetadataResource"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    }
                  },
                  "required": ["data", "status"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/metadata/deal-submission/stores": {
      "get": {
        "operationId": "metadata.deal-submission.stores",
        "tags": ["UserDealMetadata"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/plans": {
      "get": {
        "operationId": "plans.index",
        "tags": ["VisitorPlan"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`PlanCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/PlanCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/profile/{handle}": {
      "get": {
        "operationId": "publicProfileShow",
        "tags": ["Profile"],
        "parameters": [
          {
            "name": "handle",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[a-z0-9._]+$",
              "minLength": 3,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Resolved public profile.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PublicHandleProfileResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "summary": "Resolve a public profile by handle",
        "security": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/profile/{handle}/coupons": {
      "get": {
        "operationId": "publicProfileCoupons",
        "tags": ["Profile"],
        "parameters": [
          {
            "name": "handle",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[a-z0-9._]+$",
              "minLength": 3,
              "maxLength": 30
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`CouponCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/CouponCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "summary": "List coupons for a public profile handle",
        "security": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/profile/{handle}/deals": {
      "get": {
        "operationId": "profile.deals",
        "tags": ["VisitorProfile"],
        "parameters": [
          {
            "name": "handle",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[a-z0-9._]+$",
              "minLength": 3,
              "maxLength": 30
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "currency_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`DealCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DealCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/profiles": {
      "get": {
        "operationId": "publicProfilesIndex",
        "tags": ["Profile"],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "default": 1
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100,
              "default": 10
            }
          },
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Public user profile summaries.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedUserPublicProfileSummaries"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "summary": "List public user profile summaries",
        "security": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/reports": {
      "post": {
        "operationId": "reports.store",
        "tags": ["Report"],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitReportRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {},
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/review/coupons/pending": {
      "get": {
        "operationId": "review.coupons.pending.index",
        "tags": ["ReviewerCoupon"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`CouponCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/CouponCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/review/coupons/{couponId}/approve": {
      "put": {
        "operationId": "review.coupons.approve",
        "tags": ["ReviewerCoupon"],
        "parameters": [
          {
            "name": "couponId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveCouponRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/review/coupons/{couponId}/reject": {
      "put": {
        "operationId": "review.coupons.reject",
        "tags": ["ReviewerCoupon"],
        "parameters": [
          {
            "name": "couponId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RejectCouponRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/review/deals/pending": {
      "get": {
        "operationId": "review.deals.pending.index",
        "tags": ["ReviewerDeal"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`ManagedDealCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/ManagedDealCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/review/deals/{dealId}": {
      "delete": {
        "operationId": "review.deals.destroy",
        "tags": ["ReviewerDeal"],
        "parameters": [
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/review/deals/{dealId}/approve": {
      "put": {
        "operationId": "review.deals.approve",
        "tags": ["ReviewerDeal"],
        "parameters": [
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveDealRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/review/deals/{dealId}/expire": {
      "put": {
        "operationId": "review.deals.expire",
        "tags": ["ReviewerDeal"],
        "parameters": [
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExpireDealRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/review/deals/{dealId}/hide": {
      "put": {
        "operationId": "review.deals.hide",
        "tags": ["ReviewerDeal"],
        "parameters": [
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HideDealRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFoundHttpException"
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/review/deals/{dealId}/reject": {
      "put": {
        "operationId": "review.deals.reject",
        "tags": ["ReviewerDeal"],
        "parameters": [
          {
            "name": "dealId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RejectDealRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["accepted"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/AuthorizationException"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/search/queries": {
      "get": {
        "operationId": "search.queries.index",
        "tags": ["SearchQuery"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`SearchQueryCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/SearchQueryCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/session": {
      "post": {
        "operationId": "session.store",
        "tags": ["Authentication"],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Authenticated session created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthenticatedSessionResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          }
        },
        "parameters": []
      },
      "delete": {
        "operationId": "session.destroy",
        "tags": ["Authentication"],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "data": {
                      "type": ["object", "null"]
                    }
                  },
                  "required": ["status", "data"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores": {
      "get": {
        "operationId": "stores.index",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "schema": {
              "type": ["integer", "null"],
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/basic": {
      "get": {
        "operationId": "stores.basic",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "schema": {
              "type": ["integer", "null"],
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/featured": {
      "get": {
        "operationId": "stores.featured",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "schema": {
              "type": ["integer", "null"],
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/handpicked": {
      "get": {
        "operationId": "stores.handpicked",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "schema": {
              "type": ["integer", "null"],
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/new": {
      "get": {
        "operationId": "stores.new",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "schema": {
              "type": ["integer", "null"],
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/spotlight": {
      "get": {
        "operationId": "stores.spotlight",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "schema": {
              "type": ["integer", "null"],
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/suggested": {
      "get": {
        "operationId": "stores.suggested",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "schema": {
              "type": ["integer", "null"],
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/trending": {
      "get": {
        "operationId": "stores.trending",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "schema": {
              "type": ["integer", "null"],
              "minimum": 1
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 30
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/{storeId}": {
      "get": {
        "operationId": "stores.show",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`StoreResource`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/StoreResource"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    }
                  },
                  "required": ["data", "status"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {},
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/{storeId}/categories": {
      "get": {
        "operationId": "stores.categories",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`CategoryCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/CategoryCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/{storeId}/coupons": {
      "get": {
        "operationId": "stores.coupons",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`CouponCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/CouponCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {},
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/stores/{storeId}/deals": {
      "get": {
        "operationId": "stores.deals",
        "tags": ["VisitorStore"],
        "parameters": [
          {
            "name": "storeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          },
          {
            "name": "currency_id",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`DealCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/DealCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {},
          {
            "bearerAuth": []
          }
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/terms": {
      "get": {
        "operationId": "terms.index",
        "tags": ["VisitorTerm"],
        "parameters": [
          {
            "name": "per_page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`TermCollection`",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/TermCollection"
                    },
                    "status": {
                      "type": "string",
                      "enum": ["success"]
                    },
                    "meta": {
                      "$ref": "#/components/schemas/PaginationMeta"
                    }
                  },
                  "required": ["data", "status", "meta"]
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/webhooks/boosts/randomize": {
      "post": {
        "operationId": "webhooks.boosts.randomize",
        "tags": ["BoostRandomizerWebhook"],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BoostRandomizerWebhookRequest"
              }
            }
          }
        },
        "responses": {
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "202": {
            "description": "Webhook accepted for processing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookAcceptedResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "webhookBearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/webhooks/campaigns/randomize": {
      "post": {
        "operationId": "webhooks.campaigns.randomize",
        "tags": ["CampaignRandomizerWebhook"],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CampaignRandomizerWebhookRequest"
              }
            }
          }
        },
        "responses": {
          "422": {
            "$ref": "#/components/responses/ValidationException"
          },
          "202": {
            "description": "Webhook accepted for processing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookAcceptedResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "webhookBearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/webhooks/linkforty": {
      "post": {
        "operationId": "webhooks.linkforty",
        "tags": ["LinkFortyWebhook"],
        "responses": {
          "202": {
            "description": "Webhook accepted for processing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookAcceptedResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/webhooks/referrals/expire-sessions": {
      "post": {
        "operationId": "webhooks.referrals.expire-sessions",
        "tags": ["AnonymousReferralExpiryWebhook"],
        "responses": {
          "202": {
            "description": "Webhook accepted for processing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookAcceptedResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "webhookBearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/webhooks/subscriptions/auto-unpublish": {
      "post": {
        "operationId": "webhooks.subscriptions.auto-unpublish",
        "tags": ["SubscriptionAutoUnpublishWebhook"],
        "responses": {
          "202": {
            "description": "Webhook accepted for processing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookAcceptedResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "webhookBearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    },
    "/v1/webhooks/subscriptions/backfill": {
      "post": {
        "operationId": "webhooks.subscriptions.backfill",
        "tags": ["SubscriptionBackfillWebhook"],
        "responses": {
          "202": {
            "description": "Webhook accepted for processing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookAcceptedResponse"
                }
              }
            },
            "headers": {
              "X-Request-ID": {
                "$ref": "#/components/headers/RequestIdHeader"
              },
              "X-Client-ID": {
                "$ref": "#/components/headers/ClientIdEchoHeader"
              },
              "X-Installation-ID": {
                "$ref": "#/components/headers/InstallationIdEchoHeader"
              },
              "X-Session-ID": {
                "$ref": "#/components/headers/SessionIdEchoHeader"
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/AuthenticationException"
          },
          "429": {
            "$ref": "#/components/responses/TooManyRequests"
          },
          "500": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "security": [
          {
            "webhookBearerAuth": []
          }
        ],
        "parameters": []
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/ClientIdHeader"
        },
        {
          "$ref": "#/components/parameters/InstallationIdHeader"
        },
        {
          "$ref": "#/components/parameters/SessionIdHeader"
        },
        {
          "$ref": "#/components/parameters/AcceptLanguageHeader"
        },
        {
          "$ref": "#/components/parameters/VisitorIdHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralOriginalHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSecondaryHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralSpotlightHeader"
        },
        {
          "$ref": "#/components/parameters/ReferralBoostedHeader"
        }
      ]
    }
  },
  "components": {
    "schemas": {
      "AcceptedDeviceRegistrationResponse": {
        "type": "object",
        "additionalProperties": false,
        "required": ["status", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["accepted"]
          },
          "data": {
            "$ref": "#/components/schemas/DeviceRegistrationResource"
          }
        }
      },
      "AcceptedDeviceSubscriptionRevocationResponse": {
        "type": "object",
        "additionalProperties": false,
        "required": ["status", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["accepted"]
          },
          "data": {
            "$ref": "#/components/schemas/DeviceSubscriptionRevocationResource"
          }
        }
      },
      "AcceptedTrackingCodeResponse": {
        "type": "object",
        "required": ["status", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["accepted"]
          },
          "data": {
            "$ref": "#/components/schemas/TrackingCodeResource"
          }
        }
      },
      "ApproveCouponRequest": {
        "type": "object",
        "properties": {
          "note": {
            "type": "string",
            "maxLength": 500
          }
        },
        "title": "ApproveCouponRequest"
      },
      "ApproveDealRequest": {
        "type": "object",
        "properties": {
          "note": {
            "type": "string",
            "maxLength": 500
          }
        },
        "title": "ApproveDealRequest"
      },
      "AuthenticatedSessionResponse": {
        "type": "object",
        "required": ["status", "accessToken", "expiresAt", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "accessToken": {
            "type": "string",
            "minLength": 1
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "data": {
            "$ref": "#/components/schemas/UserResource"
          }
        }
      },
      "BoostRandomizerWebhookRequest": {
        "type": "object",
        "properties": {
          "event_id": {
            "type": ["string", "null"],
            "maxLength": 255
          },
          "event_type": {
            "type": ["string", "null"],
            "maxLength": 255
          },
          "seed": {
            "type": ["integer", "null"]
          }
        },
        "title": "BoostRandomizerWebhookRequest"
      },
      "CampaignRandomizerWebhookRequest": {
        "type": "object",
        "properties": {
          "event_id": {
            "type": ["string", "null"],
            "maxLength": 255
          },
          "event_type": {
            "type": ["string", "null"],
            "maxLength": 255
          },
          "seed": {
            "type": ["integer", "null"]
          },
          "targets": {
            "type": ["array", "null"],
            "items": {
              "type": "string",
              "enum": ["stores", "coupons"]
            }
          },
          "store_percentages": {
            "type": "object",
            "properties": {
              "suggested_percent": {
                "type": ["integer", "null"],
                "minimum": 0,
                "maximum": 100
              },
              "featured_percent": {
                "type": ["integer", "null"],
                "minimum": 0,
                "maximum": 100
              },
              "spotlight_percent": {
                "type": ["integer", "null"],
                "minimum": 0,
                "maximum": 100
              },
              "new_percent": {
                "type": ["integer", "null"],
                "minimum": 0,
                "maximum": 100
              }
            }
          },
          "coupon_percentages": {
            "type": "object",
            "properties": {
              "handpicked_percent": {
                "type": ["integer", "null"],
                "minimum": 0,
                "maximum": 100
              },
              "trending_percent": {
                "type": ["integer", "null"],
                "minimum": 0,
                "maximum": 100
              }
            }
          }
        },
        "title": "CampaignRandomizerWebhookRequest"
      },
      "CategoryCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/CategoryResource"
        },
        "title": "CategoryCollection"
      },
      "CategoryResource": {
        "type": "object",
        "required": [
          "id",
          "name_ar",
          "name_en",
          "description_ar",
          "description_en",
          "icon_url",
          "cover_url",
          "last_interaction_at",
          "likes",
          "dislikes",
          "copies",
          "shares",
          "visits",
          "bookmarks",
          "unbookmarks",
          "follows",
          "unfollows",
          "reports",
          "views"
        ],
        "properties": {
          "id": {
            "type": "integer"
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "description_ar": {
            "type": ["string", "null"]
          },
          "description_en": {
            "type": ["string", "null"]
          },
          "icon_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "cover_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "last_interaction_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "likes": {
            "type": ["integer", "null"]
          },
          "dislikes": {
            "type": ["integer", "null"]
          },
          "copies": {
            "type": ["integer", "null"]
          },
          "shares": {
            "type": ["integer", "null"]
          },
          "visits": {
            "type": ["integer", "null"]
          },
          "bookmarks": {
            "type": ["integer", "null"]
          },
          "unbookmarks": {
            "type": ["integer", "null"]
          },
          "follows": {
            "type": ["integer", "null"]
          },
          "unfollows": {
            "type": ["integer", "null"]
          },
          "reports": {
            "type": ["integer", "null"]
          },
          "views": {
            "type": ["integer", "null"]
          },
          "stores": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetadataStoreResource"
            }
          }
        }
      },
      "CountryCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/CountryResource"
        },
        "title": "CountryCollection"
      },
      "CountryResource": {
        "type": "object",
        "required": ["id", "code", "name_ar", "name_en", "flag_url"],
        "properties": {
          "id": {
            "type": "integer"
          },
          "code": {
            "type": ["string", "null"]
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "flag_url": {
            "type": ["string", "null"],
            "format": "uri"
          }
        }
      },
      "CouponActionRequest": {
        "type": "object",
        "title": "CouponActionRequest"
      },
      "CouponCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/CouponResource"
        },
        "title": "CouponCollection"
      },
      "CouponMetadataResource": {
        "type": "object",
        "required": ["stores", "countries", "terms"],
        "properties": {
          "stores": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetadataStoreResource"
            }
          },
          "countries": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetadataCountryResource"
            }
          },
          "terms": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetadataTermResource"
            }
          }
        }
      },
      "CouponMutationResponse": {
        "type": "object",
        "required": ["status", "data", "warnings"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "data": {
            "type": "object",
            "required": ["coupon"],
            "properties": {
              "coupon": {
                "$ref": "#/components/schemas/CouponResource"
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": ["scope", "error_code", "message"],
              "properties": {
                "scope": {
                  "type": "string",
                  "enum": ["public_listing"]
                },
                "error_code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "CouponResource": {
        "type": "object",
        "required": [
          "id",
          "code",
          "status",
          "public_listing_requested",
          "listing_state",
          "minimum_order_amount",
          "valid_until",
          "valid_from",
          "last_interaction_at",
          "is_handpicked",
          "is_trending",
          "coupon_type",
          "value_type",
          "amount_value_from",
          "amount_value_to",
          "percentage_value_from",
          "percentage_value_to",
          "likes",
          "dislikes",
          "copies",
          "shares",
          "visits",
          "bookmarks",
          "unbookmarks",
          "reports",
          "views",
          "impressions",
          "note"
        ],
        "properties": {
          "public_listing_requested": {
            "type": "boolean"
          },
          "listing_state": {
            "type": "string",
            "enum": [
              "profile_only",
              "pending_review",
              "published",
              "subscription_paused",
              "moderation_blocked"
            ]
          },
          "id": {
            "type": "integer"
          },
          "code": {
            "type": ["string", "null"]
          },
          "status": {
            "type": ["string", "null"]
          },
          "minimum_order_amount": {
            "type": ["number", "integer", "null"]
          },
          "valid_until": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "valid_from": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "last_interaction_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "is_handpicked": {
            "type": ["boolean", "null"]
          },
          "is_trending": {
            "type": ["boolean", "null"]
          },
          "coupon_type": {
            "type": ["string", "null"]
          },
          "value_type": {
            "type": ["string", "null"]
          },
          "amount_value_from": {
            "type": ["number", "string", "null"]
          },
          "amount_value_to": {
            "type": ["number", "string", "null"]
          },
          "percentage_value_from": {
            "type": ["number", "string", "null"]
          },
          "percentage_value_to": {
            "type": ["number", "string", "null"]
          },
          "likes": {
            "type": ["integer", "null"]
          },
          "dislikes": {
            "type": ["integer", "null"]
          },
          "copies": {
            "type": ["integer", "null"]
          },
          "shares": {
            "type": ["integer", "null"]
          },
          "visits": {
            "type": ["integer", "null"]
          },
          "bookmarks": {
            "type": ["integer", "null"]
          },
          "unbookmarks": {
            "type": ["integer", "null"]
          },
          "reports": {
            "type": ["integer", "null"]
          },
          "views": {
            "type": ["integer", "null"]
          },
          "impressions": {
            "type": ["integer", "null"]
          },
          "note": {
            "type": ["string", "null"]
          },
          "is_bookmarked": {
            "type": ["boolean", "null"]
          },
          "bookmarked_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "store": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/StoreSummaryResource"
              },
              {
                "type": "null"
              }
            ]
          },
          "terms": {
            "type": ["array", "null"]
          },
          "countries": {
            "type": ["array", "null"]
          }
        }
      },
      "CreateTrackingCodeRequest": {
        "type": "object",
        "properties": {
          "store_id": {
            "type": "integer",
            "minimum": 1
          },
          "country_id": {
            "type": "integer",
            "minimum": 1
          },
          "tracking_code": {
            "type": "string",
            "maxLength": 255
          }
        },
        "required": ["store_id", "country_id", "tracking_code"],
        "title": "CreateTrackingCodeRequest"
      },
      "CurrencyResource": {
        "type": "object",
        "required": [
          "id",
          "code",
          "name_ar",
          "name_en",
          "symbol_ar",
          "symbol_en",
          "priority",
          "status",
          "decimals"
        ],
        "properties": {
          "id": {
            "type": "integer"
          },
          "code": {
            "type": ["string", "null"]
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "symbol_ar": {
            "type": ["string", "null"]
          },
          "symbol_en": {
            "type": ["string", "null"]
          },
          "priority": {
            "type": "integer"
          },
          "status": {
            "type": ["string", "null"]
          },
          "decimals": {
            "type": "integer"
          }
        }
      },
      "DashboardResource": {
        "type": "object",
        "required": [
          "published_coupons_count",
          "non_published_coupons_count",
          "coupons_total_view_count",
          "coupons_total_copy_count",
          "coupons_total_like_count",
          "coupons_total_dislike_count",
          "coupons_total_share_count",
          "coupons_total_bookmark_count",
          "coupons_total_unbookmark_count",
          "coupons_total_report_count",
          "coupons_total_visit_count",
          "coupons_total_impression_count",
          "copy_to_view_rate",
          "impression_to_view_rate",
          "like_ratio",
          "bookmark_rate",
          "engagement_score",
          "original_referrals_count",
          "secondary_referrals_count",
          "anonymous_original_referrals_count",
          "anonymous_secondary_referrals_count",
          "stitched_conversions_count",
          "original_referral_conversion_rate",
          "secondary_referral_conversion_rate",
          "anonymous_to_member_conversion_rate",
          "referral_code"
        ],
        "properties": {
          "published_coupons_count": {
            "type": "integer",
            "minimum": 0
          },
          "non_published_coupons_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_view_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_copy_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_like_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_dislike_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_share_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_bookmark_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_unbookmark_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_report_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_visit_count": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_total_impression_count": {
            "type": "integer",
            "minimum": 0
          },
          "original_referrals_count": {
            "type": "integer",
            "minimum": 0
          },
          "secondary_referrals_count": {
            "type": "integer",
            "minimum": 0
          },
          "anonymous_original_referrals_count": {
            "type": "integer",
            "minimum": 0
          },
          "anonymous_secondary_referrals_count": {
            "type": "integer",
            "minimum": 0
          },
          "stitched_conversions_count": {
            "type": "integer",
            "minimum": 0
          },
          "copy_to_view_rate": {
            "type": ["number", "null"]
          },
          "impression_to_view_rate": {
            "type": ["number", "null"]
          },
          "like_ratio": {
            "type": ["number", "null"]
          },
          "bookmark_rate": {
            "type": ["number", "null"]
          },
          "engagement_score": {
            "type": ["number", "null"]
          },
          "original_referral_conversion_rate": {
            "type": ["number", "null"]
          },
          "secondary_referral_conversion_rate": {
            "type": ["number", "null"]
          },
          "anonymous_to_member_conversion_rate": {
            "type": ["number", "null"]
          },
          "referral_code": {
            "type": "string"
          }
        }
      },
      "DealActionRequest": {
        "type": "object",
        "title": "DealActionRequest"
      },
      "DealCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/DealResource"
        },
        "title": "DealCollection"
      },
      "DealResource": {
        "type": "object",
        "properties": {
          "id": {
            "type": ["integer", "null"]
          },
          "title_ar": {
            "type": ["string", "null"]
          },
          "title_en": {
            "type": ["string", "null"]
          },
          "description_ar": {
            "type": ["string", "null"]
          },
          "description_en": {
            "type": ["string", "null"]
          },
          "brand_ar": {
            "type": ["string", "null"]
          },
          "brand_en": {
            "type": ["string", "null"]
          },
          "current_price_minor": {
            "type": ["integer", "null"]
          },
          "original_price_minor": {
            "type": ["integer", "null"]
          },
          "discount_amount_minor": {
            "type": ["integer", "null"]
          },
          "discount_percentage": {
            "type": ["number", "null"]
          },
          "expires_at": {
            "type": ["string", "null"]
          },
          "status": {
            "type": ["string", "null"]
          },
          "is_handpicked": {
            "type": "boolean"
          },
          "is_trending": {
            "type": "boolean"
          },
          "likes": {
            "type": ["integer", "null"]
          },
          "dislikes": {
            "type": ["integer", "null"]
          },
          "copies": {
            "type": ["integer", "null"]
          },
          "shares": {
            "type": ["integer", "null"]
          },
          "bookmarks": {
            "type": ["integer", "null"]
          },
          "unbookmarks": {
            "type": ["integer", "null"]
          },
          "visits": {
            "type": ["integer", "null"]
          },
          "reports": {
            "type": ["integer", "null"]
          },
          "views": {
            "type": ["integer", "null"]
          },
          "impressions": {
            "type": ["integer", "null"]
          },
          "resolved_outbound_url": {
            "type": ["string", "null"]
          },
          "affiliate_context": {
            "type": "string"
          },
          "affiliate_user_id": {
            "type": ["integer", "null"]
          },
          "has_tracking_code": {
            "type": "boolean"
          },
          "store": {
            "type": ["object", "null"],
            "properties": {
              "id": {
                "type": ["integer", "null"]
              },
              "slug": {
                "type": ["string", "null"]
              },
              "name_ar": {
                "type": ["string", "null"]
              },
              "name_en": {
                "type": ["string", "null"]
              },
              "logo_url": {
                "type": ["string", "null"]
              },
              "cover_url": {
                "type": ["string", "null"]
              },
              "website_ar": {
                "type": ["string", "null"]
              },
              "website_en": {
                "type": ["string", "null"]
              }
            },
            "required": [
              "id",
              "slug",
              "name_ar",
              "name_en",
              "logo_url",
              "cover_url",
              "website_ar",
              "website_en"
            ]
          },
          "country": {
            "type": ["object", "null"],
            "properties": {
              "id": {
                "type": ["integer", "null"]
              },
              "code": {
                "type": ["string", "null"]
              },
              "name_ar": {
                "type": ["string", "null"]
              },
              "name_en": {
                "type": ["string", "null"]
              },
              "flag_url": {
                "type": ["string", "null"]
              }
            },
            "required": ["id", "code", "name_ar", "name_en", "flag_url"]
          },
          "currency": {
            "type": ["object", "null"],
            "properties": {
              "id": {
                "type": ["integer", "null"]
              },
              "code": {
                "type": ["string", "null"]
              },
              "name_ar": {
                "type": ["string", "null"]
              },
              "name_en": {
                "type": ["string", "null"]
              },
              "symbol_ar": {
                "type": ["string", "null"]
              },
              "symbol_en": {
                "type": ["string", "null"]
              },
              "priority": {
                "type": "integer"
              },
              "status": {
                "type": ["string", "null"]
              },
              "decimals": {
                "type": "integer"
              }
            },
            "required": [
              "id",
              "code",
              "name_ar",
              "name_en",
              "symbol_ar",
              "symbol_en",
              "priority",
              "status",
              "decimals"
            ]
          },
          "terms": {
            "type": "array",
            "items": {
              "type": "object",
              "required": ["id", "text_ar", "text_en"],
              "properties": {
                "id": {
                  "type": ["integer", "null"]
                },
                "text_ar": {
                  "type": ["string", "null"]
                },
                "text_en": {
                  "type": ["string", "null"]
                }
              }
            }
          },
          "images": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "id",
                "path",
                "url",
                "alt_ar",
                "alt_en",
                "priority",
                "is_primary"
              ],
              "properties": {
                "id": {
                  "type": ["integer", "null"]
                },
                "path": {
                  "type": ["string", "null"]
                },
                "url": {
                  "type": ["string", "null"]
                },
                "alt_ar": {
                  "type": ["string", "null"]
                },
                "alt_en": {
                  "type": ["string", "null"]
                },
                "priority": {
                  "type": "integer"
                },
                "is_primary": {
                  "type": "boolean"
                }
              }
            }
          },
          "is_bookmarked": {
            "type": ["boolean", "null"]
          },
          "bookmarked_at": {
            "type": ["string", "null"]
          },
          "converted_price": {
            "oneOf": [
              {
                "type": "object",
                "required": [
                  "exchange_rate",
                  "current_price_minor",
                  "original_price_minor",
                  "discount_amount_minor",
                  "target_currency"
                ],
                "properties": {
                  "exchange_rate": {
                    "type": "number"
                  },
                  "current_price_minor": {
                    "type": ["integer", "null"]
                  },
                  "original_price_minor": {
                    "type": ["integer", "null"]
                  },
                  "discount_amount_minor": {
                    "type": ["integer", "null"]
                  },
                  "target_currency": {
                    "type": ["object", "null"],
                    "properties": {
                      "id": {
                        "type": ["integer", "null"]
                      },
                      "code": {
                        "type": ["string", "null"]
                      },
                      "name_ar": {
                        "type": ["string", "null"]
                      },
                      "name_en": {
                        "type": ["string", "null"]
                      },
                      "symbol_ar": {
                        "type": ["string", "null"]
                      },
                      "symbol_en": {
                        "type": ["string", "null"]
                      },
                      "priority": {
                        "type": "integer"
                      },
                      "status": {
                        "type": ["string", "null"]
                      },
                      "decimals": {
                        "type": "integer"
                      }
                    },
                    "required": [
                      "id",
                      "code",
                      "name_ar",
                      "name_en",
                      "symbol_ar",
                      "symbol_en",
                      "priority",
                      "status",
                      "decimals"
                    ]
                  }
                }
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "id",
          "title_ar",
          "title_en",
          "description_ar",
          "description_en",
          "brand_ar",
          "brand_en",
          "current_price_minor",
          "original_price_minor",
          "discount_amount_minor",
          "discount_percentage",
          "expires_at",
          "status",
          "is_handpicked",
          "is_trending",
          "likes",
          "dislikes",
          "copies",
          "shares",
          "bookmarks",
          "unbookmarks",
          "visits",
          "reports",
          "views",
          "impressions",
          "resolved_outbound_url",
          "affiliate_context",
          "affiliate_user_id",
          "has_tracking_code",
          "store",
          "country",
          "currency",
          "terms",
          "images",
          "is_bookmarked",
          "bookmarked_at"
        ],
        "title": "DealResource"
      },
      "DealSubmissionMetadataResource": {
        "type": "object",
        "required": ["stores", "countries", "terms", "currencies"],
        "properties": {
          "stores": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetadataStoreResource"
            }
          },
          "countries": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetadataCountryResource"
            }
          },
          "terms": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetadataTermResource"
            }
          },
          "currencies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetadataCurrencyResource"
            }
          }
        }
      },
      "DetachInstallationRequest": {
        "type": "object",
        "additionalProperties": false,
        "required": ["registration_revision", "reason"],
        "properties": {
          "registration_revision": {
            "type": "integer",
            "minimum": 1
          },
          "reason": {
            "type": "string",
            "enum": ["logout", "consent_disabled", "token_expired"]
          }
        }
      },
      "DeviceRegistrationResource": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "installation_id",
          "platform",
          "device_name",
          "registration_revision",
          "registration_state",
          "provider_state",
          "last_registered_at"
        ],
        "properties": {
          "id": {
            "type": "integer",
            "minimum": 1
          },
          "installation_id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "platform": {
            "type": "string",
            "enum": ["ios", "android", "web"]
          },
          "device_name": {
            "type": ["string", "null"]
          },
          "registration_revision": {
            "type": "integer",
            "minimum": 0
          },
          "registration_state": {
            "type": "string",
            "enum": ["active", "detached", "revoked"]
          },
          "provider_state": {
            "type": "string",
            "enum": [
              "unverified",
              "pending_verification",
              "verified",
              "revocation_pending",
              "revoked",
              "failed"
            ]
          },
          "last_registered_at": {
            "type": ["string", "null"],
            "format": "date-time"
          }
        }
      },
      "DeviceSubscriptionRevocationCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/DeviceSubscriptionRevocationResource"
        },
        "title": "DeviceSubscriptionRevocationCollection"
      },
      "DeviceSubscriptionRevocationResource": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "revocation_id",
          "device_uuid",
          "status",
          "terminal",
          "attempts",
          "next_attempt_at",
          "provider_checked_at",
          "requested_at",
          "completed_at",
          "failure_code"
        ],
        "properties": {
          "revocation_id": {
            "type": "string",
            "minLength": 26,
            "maxLength": 26,
            "pattern": "^[0-9A-HJKMNP-TV-Z]{26}$"
          },
          "device_uuid": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "status": {
            "type": "string",
            "enum": [
              "awaiting_verification",
              "pending",
              "queued",
              "processing",
              "retry_wait",
              "delete_accepted",
              "already_absent",
              "blocked_configuration",
              "retry_exhausted",
              "binding_invalid"
            ]
          },
          "terminal": {
            "type": "boolean"
          },
          "attempts": {
            "type": "integer",
            "minimum": 0
          },
          "next_attempt_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "provider_checked_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "requested_at": {
            "type": "string",
            "format": "date-time"
          },
          "completed_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "failure_code": {
            "type": ["string", "null"],
            "maxLength": 64
          }
        }
      },
      "ErrorResponse": {
        "type": "object",
        "required": ["status", "message"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["error"]
          },
          "message": {
            "type": "string"
          },
          "error_code": {
            "type": "string"
          },
          "errors": {
            "type": "object",
            "additionalProperties": true
          },
          "meta": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "ExpireDealRequest": {
        "type": "object",
        "properties": {
          "note": {
            "type": "string",
            "maxLength": 500
          }
        },
        "title": "ExpireDealRequest"
      },
      "HealthResponse": {
        "type": "object",
        "required": ["status", "checks"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "checks": {
            "type": "object",
            "required": ["database", "caching"],
            "properties": {
              "database": {
                "type": "string",
                "enum": ["ok"]
              },
              "caching": {
                "type": "string",
                "enum": ["ok"]
              }
            }
          }
        }
      },
      "HideDealRequest": {
        "type": "object",
        "properties": {
          "note": {
            "type": "string",
            "maxLength": 500
          }
        },
        "title": "HideDealRequest"
      },
      "JsonResource": {
        "type": "object",
        "description": "JSON resource object whose route-specific shape is not yet specialized.",
        "additionalProperties": true
      },
      "LoginRequest": {
        "type": "object",
        "properties": {
          "platform": {
            "type": ["string", "null"],
            "maxLength": 40
          },
          "device_name": {
            "type": ["string", "null"],
            "maxLength": 80
          }
        },
        "title": "LoginRequest"
      },
      "ManagedDealCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/ManagedDealResource"
        },
        "title": "ManagedDealCollection"
      },
      "ManagedDealResource": {
        "type": "object",
        "properties": {
          "id": {
            "type": ["integer", "null"]
          },
          "title_ar": {
            "type": ["string", "null"]
          },
          "title_en": {
            "type": ["string", "null"]
          },
          "description_ar": {
            "type": ["string", "null"]
          },
          "description_en": {
            "type": ["string", "null"]
          },
          "brand_ar": {
            "type": ["string", "null"]
          },
          "brand_en": {
            "type": ["string", "null"]
          },
          "current_price_minor": {
            "type": ["integer", "null"]
          },
          "original_price_minor": {
            "type": ["integer", "null"]
          },
          "discount_amount_minor": {
            "type": ["integer", "null"]
          },
          "discount_percentage": {
            "type": ["number", "null"]
          },
          "expires_at": {
            "type": ["string", "null"]
          },
          "status": {
            "type": ["string", "null"]
          },
          "is_handpicked": {
            "type": "boolean"
          },
          "is_trending": {
            "type": "boolean"
          },
          "likes": {
            "type": ["integer", "null"]
          },
          "dislikes": {
            "type": ["integer", "null"]
          },
          "copies": {
            "type": ["integer", "null"]
          },
          "shares": {
            "type": ["integer", "null"]
          },
          "bookmarks": {
            "type": ["integer", "null"]
          },
          "unbookmarks": {
            "type": ["integer", "null"]
          },
          "visits": {
            "type": ["integer", "null"]
          },
          "reports": {
            "type": ["integer", "null"]
          },
          "views": {
            "type": ["integer", "null"]
          },
          "impressions": {
            "type": ["integer", "null"]
          },
          "resolved_outbound_url": {
            "type": ["string", "null"]
          },
          "affiliate_context": {
            "type": "string"
          },
          "affiliate_user_id": {
            "type": ["integer", "null"]
          },
          "has_tracking_code": {
            "type": "boolean"
          },
          "store": {
            "type": ["object", "null"],
            "properties": {
              "id": {
                "type": ["integer", "null"]
              },
              "slug": {
                "type": ["string", "null"]
              },
              "name_ar": {
                "type": ["string", "null"]
              },
              "name_en": {
                "type": ["string", "null"]
              },
              "logo_url": {
                "type": ["string", "null"]
              },
              "cover_url": {
                "type": ["string", "null"]
              },
              "website_ar": {
                "type": ["string", "null"]
              },
              "website_en": {
                "type": ["string", "null"]
              }
            },
            "required": [
              "id",
              "slug",
              "name_ar",
              "name_en",
              "logo_url",
              "cover_url",
              "website_ar",
              "website_en"
            ]
          },
          "country": {
            "type": ["object", "null"],
            "properties": {
              "id": {
                "type": ["integer", "null"]
              },
              "code": {
                "type": ["string", "null"]
              },
              "name_ar": {
                "type": ["string", "null"]
              },
              "name_en": {
                "type": ["string", "null"]
              },
              "flag_url": {
                "type": ["string", "null"]
              }
            },
            "required": ["id", "code", "name_ar", "name_en", "flag_url"]
          },
          "currency": {
            "type": ["object", "null"],
            "properties": {
              "id": {
                "type": ["integer", "null"]
              },
              "code": {
                "type": ["string", "null"]
              },
              "name_ar": {
                "type": ["string", "null"]
              },
              "name_en": {
                "type": ["string", "null"]
              },
              "symbol_ar": {
                "type": ["string", "null"]
              },
              "symbol_en": {
                "type": ["string", "null"]
              },
              "priority": {
                "type": "integer"
              },
              "status": {
                "type": ["string", "null"]
              },
              "decimals": {
                "type": "integer"
              }
            },
            "required": [
              "id",
              "code",
              "name_ar",
              "name_en",
              "symbol_ar",
              "symbol_en",
              "priority",
              "status",
              "decimals"
            ]
          },
          "terms": {
            "type": "array",
            "items": {
              "type": "object",
              "required": ["id", "text_ar", "text_en"],
              "properties": {
                "id": {
                  "type": ["integer", "null"]
                },
                "text_ar": {
                  "type": ["string", "null"]
                },
                "text_en": {
                  "type": ["string", "null"]
                }
              }
            }
          },
          "images": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "id",
                "path",
                "url",
                "alt_ar",
                "alt_en",
                "priority",
                "is_primary"
              ],
              "properties": {
                "id": {
                  "type": ["integer", "null"]
                },
                "path": {
                  "type": ["string", "null"]
                },
                "url": {
                  "type": ["string", "null"]
                },
                "alt_ar": {
                  "type": ["string", "null"]
                },
                "alt_en": {
                  "type": ["string", "null"]
                },
                "priority": {
                  "type": "integer"
                },
                "is_primary": {
                  "type": "boolean"
                }
              }
            }
          },
          "is_bookmarked": {
            "type": ["boolean", "null"]
          },
          "bookmarked_at": {
            "type": ["string", "null"]
          },
          "user_id": {
            "type": ["integer", "null"]
          },
          "store_id": {
            "type": ["integer", "null"]
          },
          "country_id": {
            "type": ["integer", "null"]
          },
          "currency_id": {
            "type": ["integer", "null"]
          },
          "outbound_url_template": {
            "type": ["string", "null"]
          },
          "note": {
            "type": ["string", "null"]
          },
          "created_at": {
            "type": ["string", "null"]
          },
          "updated_at": {
            "type": ["string", "null"]
          },
          "converted_price": {
            "oneOf": [
              {
                "type": "object",
                "required": [
                  "exchange_rate",
                  "current_price_minor",
                  "original_price_minor",
                  "discount_amount_minor",
                  "target_currency"
                ],
                "properties": {
                  "exchange_rate": {
                    "type": "number"
                  },
                  "current_price_minor": {
                    "type": ["integer", "null"]
                  },
                  "original_price_minor": {
                    "type": ["integer", "null"]
                  },
                  "discount_amount_minor": {
                    "type": ["integer", "null"]
                  },
                  "target_currency": {
                    "type": ["object", "null"],
                    "properties": {
                      "id": {
                        "type": ["integer", "null"]
                      },
                      "code": {
                        "type": ["string", "null"]
                      },
                      "name_ar": {
                        "type": ["string", "null"]
                      },
                      "name_en": {
                        "type": ["string", "null"]
                      },
                      "symbol_ar": {
                        "type": ["string", "null"]
                      },
                      "symbol_en": {
                        "type": ["string", "null"]
                      },
                      "priority": {
                        "type": "integer"
                      },
                      "status": {
                        "type": ["string", "null"]
                      },
                      "decimals": {
                        "type": "integer"
                      }
                    },
                    "required": [
                      "id",
                      "code",
                      "name_ar",
                      "name_en",
                      "symbol_ar",
                      "symbol_en",
                      "priority",
                      "status",
                      "decimals"
                    ]
                  }
                }
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "id",
          "title_ar",
          "title_en",
          "description_ar",
          "description_en",
          "brand_ar",
          "brand_en",
          "current_price_minor",
          "original_price_minor",
          "discount_amount_minor",
          "discount_percentage",
          "expires_at",
          "status",
          "is_handpicked",
          "is_trending",
          "likes",
          "dislikes",
          "copies",
          "shares",
          "bookmarks",
          "unbookmarks",
          "visits",
          "reports",
          "views",
          "impressions",
          "resolved_outbound_url",
          "affiliate_context",
          "affiliate_user_id",
          "has_tracking_code",
          "store",
          "country",
          "currency",
          "terms",
          "images",
          "is_bookmarked",
          "bookmarked_at",
          "user_id",
          "store_id",
          "country_id",
          "currency_id",
          "outbound_url_template",
          "note",
          "created_at",
          "updated_at"
        ],
        "title": "ManagedDealResource"
      },
      "MessageSuccessResponse": {
        "type": "object",
        "required": ["status", "message"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "message": {
            "type": "string"
          }
        }
      },
      "MetadataCountryResource": {
        "type": "object",
        "required": ["id", "code", "name_ar", "name_en", "flag_url"],
        "properties": {
          "id": {
            "type": "integer"
          },
          "code": {
            "type": ["string", "null"]
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "flag_url": {
            "type": ["string", "null"],
            "format": "uri"
          }
        }
      },
      "MetadataCurrencyResource": {
        "type": "object",
        "required": [
          "id",
          "code",
          "name_ar",
          "name_en",
          "symbol_ar",
          "symbol_en",
          "decimals"
        ],
        "properties": {
          "id": {
            "type": "integer"
          },
          "code": {
            "type": ["string", "null"]
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "symbol_ar": {
            "type": ["string", "null"]
          },
          "symbol_en": {
            "type": ["string", "null"]
          },
          "decimals": {
            "type": "integer",
            "minimum": 0
          }
        }
      },
      "MetadataStoreResource": {
        "type": "object",
        "required": ["id", "name_ar", "name_en", "logo_url", "coupons_count"],
        "properties": {
          "id": {
            "type": "integer"
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "logo_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "coupons_count": {
            "type": "integer",
            "minimum": 0
          }
        }
      },
      "MetadataTermResource": {
        "type": "object",
        "required": ["id", "text_ar", "text_en"],
        "properties": {
          "id": {
            "type": "integer"
          },
          "text_ar": {
            "type": ["string", "null"]
          },
          "text_en": {
            "type": ["string", "null"]
          }
        }
      },
      "OriginalReferrerCommandResponse": {
        "type": "object",
        "required": ["status", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "data": {
            "type": "object",
            "required": ["disposition", "original_referrer"],
            "properties": {
              "disposition": {
                "type": "string",
                "enum": ["applied", "preserved"]
              },
              "original_referrer": {
                "type": "string",
                "pattern": "^[A-Z]{3}\\d{4}$"
              }
            }
          }
        }
      },
      "OwnedCouponsResponse": {
        "type": "object",
        "required": ["status", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "data": {
            "$ref": "#/components/schemas/UserCouponsResource"
          },
          "meta": {
            "type": "object",
            "required": [
              "current_page",
              "last_page",
              "per_page",
              "total",
              "profile_coupons_count",
              "published_coupons_count",
              "pending_coupons_count",
              "allowed_coupons"
            ],
            "properties": {
              "current_page": {
                "type": "integer"
              },
              "last_page": {
                "type": "integer"
              },
              "per_page": {
                "type": "integer"
              },
              "total": {
                "type": "integer"
              },
              "profile_coupons_count": {
                "type": "integer"
              },
              "published_coupons_count": {
                "type": "integer"
              },
              "pending_coupons_count": {
                "type": "integer"
              },
              "allowed_coupons": {
                "type": "integer"
              }
            }
          }
        }
      },
      "PaginatedUserPublicProfileSummaries": {
        "allOf": [
          {
            "$ref": "#/components/schemas/SuccessDataEnvelope"
          },
          {
            "type": "object",
            "required": ["data", "meta"],
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UserPublicProfileSummaryResource"
                }
              },
              "meta": {
                "type": "object",
                "required": [
                  "current_page",
                  "last_page",
                  "per_page",
                  "total",
                  "is_first",
                  "is_last",
                  "is_empty"
                ],
                "properties": {
                  "current_page": {
                    "type": "integer",
                    "example": 1
                  },
                  "last_page": {
                    "type": "integer",
                    "example": 3
                  },
                  "per_page": {
                    "type": "integer",
                    "example": 100
                  },
                  "total": {
                    "type": "integer",
                    "example": 250
                  },
                  "is_first": {
                    "type": "boolean",
                    "example": true
                  },
                  "is_last": {
                    "type": "boolean",
                    "example": false
                  },
                  "is_empty": {
                    "type": "boolean",
                    "example": false
                  }
                }
              }
            }
          }
        ]
      },
      "PaginationMeta": {
        "type": "object",
        "required": [
          "current_page",
          "last_page",
          "per_page",
          "total",
          "is_first",
          "is_last",
          "is_empty"
        ],
        "properties": {
          "current_page": {
            "type": "integer",
            "minimum": 1
          },
          "last_page": {
            "type": "integer",
            "minimum": 1
          },
          "per_page": {
            "type": "integer",
            "minimum": 1
          },
          "total": {
            "type": "integer",
            "minimum": 0
          },
          "is_first": {
            "type": "boolean"
          },
          "is_last": {
            "type": "boolean"
          },
          "is_empty": {
            "type": "boolean"
          }
        }
      },
      "PlanCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/PlanResource"
        },
        "title": "PlanCollection"
      },
      "PlanResource": {
        "type": "object",
        "required": [
          "id",
          "slug",
          "name_en",
          "name_ar",
          "price_sar_monthly",
          "max_active_coupons",
          "per_store_limit",
          "is_recommended",
          "is_default_fallback"
        ],
        "properties": {
          "id": {
            "type": "integer"
          },
          "slug": {
            "type": ["string", "null"]
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "price_sar_monthly": {
            "type": ["number", "integer", "null"]
          },
          "max_active_coupons": {
            "type": ["integer", "null"]
          },
          "per_store_limit": {
            "type": ["integer", "null"]
          },
          "is_recommended": {
            "type": ["boolean", "null"]
          },
          "is_default_fallback": {
            "type": ["boolean", "null"]
          }
        }
      },
      "PublicHandleProfileResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/SuccessDataEnvelope"
          },
          {
            "type": "object",
            "required": ["data"],
            "properties": {
              "data": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/PublicProfileResource"
                  },
                  {
                    "$ref": "#/components/schemas/StorePublicProfileResource"
                  }
                ]
              }
            }
          }
        ]
      },
      "PublicListingRequest": {
        "type": "object",
        "properties": {
          "public_listing_requested": {
            "type": "boolean"
          }
        },
        "required": ["public_listing_requested"],
        "title": "PublicListingRequest"
      },
      "PublicProfileAnalytics": {
        "type": "object",
        "properties": {
          "ga4_measurement_id": {
            "type": "string",
            "example": "G-1234567890"
          },
          "google_ads_conversion_id": {
            "type": "string",
            "example": "AW-1234567890"
          },
          "google_ads_conversion_label": {
            "type": "string",
            "example": "lead_capture"
          },
          "meta_pixel_id": {
            "type": "string",
            "example": "123456789012345"
          },
          "tiktok_pixel_id": {
            "type": "string",
            "example": "C0ABC123DEF456GHI7"
          },
          "snap_pixel_id": {
            "type": "string",
            "example": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
          }
        }
      },
      "PublicProfileLinks": {
        "type": "object",
        "properties": {
          "instagram_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "tiktok_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "x_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "youtube_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "snapchat_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "whatsapp_channel_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "whatsapp_group_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "whatsapp_number_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "mobile_number_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "email_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "telegram_user_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "telegram_channel_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "telegram_group_url": {
            "type": ["string", "null"],
            "format": "uri"
          }
        }
      },
      "PublicProfileResource": {
        "type": "object",
        "required": ["handle", "owner_id", "links"],
        "properties": {
          "handle": {
            "type": "string",
            "example": "creator.handle"
          },
          "owner_id": {
            "type": "integer",
            "example": 42
          },
          "bio": {
            "type": ["string", "null"],
            "example": "Deals, launches, and creator picks."
          },
          "referral_code": {
            "type": ["string", "null"],
            "example": "ABC1234"
          },
          "display_name": {
            "type": ["string", "null"],
            "example": "Amani Khalid"
          },
          "avatar_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "analytics": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/PublicProfileAnalytics"
              },
              {
                "type": "null"
              }
            ]
          },
          "links": {
            "$ref": "#/components/schemas/PublicProfileLinks"
          }
        }
      },
      "RegisterDeviceRequest": {
        "type": "object",
        "properties": {
          "device_uuid": {
            "type": "string",
            "maxLength": 255
          },
          "push_token": {
            "type": "string",
            "maxLength": 512
          },
          "platform": {
            "type": "string",
            "enum": ["ios", "android", "web"]
          },
          "device_name": {
            "type": ["string", "null"],
            "maxLength": 255
          }
        },
        "required": ["device_uuid", "push_token", "platform"],
        "title": "RegisterDeviceRequest"
      },
      "RegisterInstallationRequest": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "onesignal_subscription_id",
          "platform",
          "registration_revision"
        ],
        "properties": {
          "onesignal_subscription_id": {
            "type": "string",
            "format": "uuid"
          },
          "platform": {
            "type": "string",
            "enum": ["ios", "android", "web"]
          },
          "device_name": {
            "type": ["string", "null"],
            "maxLength": 255
          },
          "registration_revision": {
            "type": "integer",
            "minimum": 1
          },
          "reactivate": {
            "type": "boolean",
            "default": false
          }
        }
      },
      "RejectCouponRequest": {
        "type": "object",
        "properties": {
          "note": {
            "type": "string",
            "maxLength": 500
          }
        },
        "required": ["note"],
        "title": "RejectCouponRequest"
      },
      "RejectDealRequest": {
        "type": "object",
        "properties": {
          "note": {
            "type": "string",
            "maxLength": 500
          }
        },
        "required": ["note"],
        "title": "RejectDealRequest"
      },
      "ReservedHandleResource": {
        "type": "object",
        "required": [
          "id",
          "handle",
          "source_type",
          "source_ref",
          "is_active",
          "note",
          "created_at",
          "updated_at"
        ],
        "properties": {
          "id": {
            "type": "integer"
          },
          "handle": {
            "type": ["string", "null"]
          },
          "source_type": {
            "type": ["string", "null"]
          },
          "source_ref": {
            "type": ["string", "null"]
          },
          "is_active": {
            "type": ["boolean", "null"]
          },
          "note": {
            "type": ["string", "null"]
          },
          "created_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "updated_at": {
            "type": ["string", "null"],
            "format": "date-time"
          }
        }
      },
      "SearchQueryCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/SearchQueryResource"
        },
        "title": "SearchQueryCollection"
      },
      "SearchQueryResource": {
        "type": "object",
        "required": ["id", "query", "frequency", "priority", "status"],
        "properties": {
          "id": {
            "type": "integer"
          },
          "query": {
            "type": ["string", "null"]
          },
          "frequency": {
            "type": ["integer", "null"]
          },
          "priority": {
            "type": ["integer", "null"]
          },
          "status": {
            "type": ["string", "null"]
          }
        }
      },
      "StoreActionRequest": {
        "type": "object",
        "title": "StoreActionRequest"
      },
      "StoreCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/StoreResource"
        },
        "title": "StoreCollection"
      },
      "StorePublicProfileLinks": {
        "type": "object",
        "properties": {
          "website_url": {
            "type": ["string", "null"],
            "format": "uri"
          }
        }
      },
      "StorePublicProfileResource": {
        "type": "object",
        "required": ["profile_type", "handle", "owner_id", "links"],
        "properties": {
          "profile_type": {
            "type": "string",
            "enum": ["store"]
          },
          "handle": {
            "type": "string",
            "example": "best-store"
          },
          "owner_id": {
            "type": "integer",
            "example": 501
          },
          "bio": {
            "type": ["string", "null"],
            "example": "Official store profile."
          },
          "referral_code": {
            "type": ["string", "null"]
          },
          "display_name": {
            "type": ["string", "null"],
            "example": "Best Store"
          },
          "avatar_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "analytics": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/PublicProfileAnalytics"
              },
              {
                "type": "null"
              }
            ]
          },
          "links": {
            "$ref": "#/components/schemas/StorePublicProfileLinks"
          }
        }
      },
      "StoreResource": {
        "type": "object",
        "required": [
          "id",
          "slug",
          "name_ar",
          "name_en",
          "alternate_name_ar",
          "alternate_name_en",
          "description_ar",
          "description_en",
          "alternate_description_ar",
          "alternate_description_en",
          "short_description_ar",
          "short_description_en",
          "tagline_ar",
          "tagline_en",
          "promotional_copy_ar",
          "promotional_copy_en",
          "value_proposition_ar",
          "value_proposition_en",
          "product_selection_info_ar",
          "product_selection_info_en",
          "payment_options_info_ar",
          "payment_options_info_en",
          "delivery_info_ar",
          "delivery_info_en",
          "seo_title_ar",
          "seo_title_en",
          "meta_description_ar",
          "meta_description_en",
          "customer_support_phone",
          "customer_support_email",
          "app_gallery_id",
          "app_store_id",
          "play_id",
          "is_new",
          "is_featured",
          "is_spotlighted",
          "created_at",
          "updated_at",
          "website_ar",
          "website_en",
          "likes",
          "dislikes",
          "copies",
          "shares",
          "visits",
          "bookmarks",
          "unbookmarks",
          "follows",
          "unfollows",
          "reports",
          "views",
          "impressions",
          "logo_url",
          "cover_url",
          "seo_image_url"
        ],
        "properties": {
          "id": {
            "type": "integer"
          },
          "slug": {
            "type": ["string", "null"]
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "alternate_name_ar": {
            "type": ["string", "null"]
          },
          "alternate_name_en": {
            "type": ["string", "null"]
          },
          "description_ar": {
            "type": ["string", "null"]
          },
          "description_en": {
            "type": ["string", "null"]
          },
          "alternate_description_ar": {
            "type": ["string", "null"]
          },
          "alternate_description_en": {
            "type": ["string", "null"]
          },
          "short_description_ar": {
            "type": ["string", "null"]
          },
          "short_description_en": {
            "type": ["string", "null"]
          },
          "tagline_ar": {
            "type": ["string", "null"]
          },
          "tagline_en": {
            "type": ["string", "null"]
          },
          "promotional_copy_ar": {
            "type": ["string", "null"]
          },
          "promotional_copy_en": {
            "type": ["string", "null"]
          },
          "value_proposition_ar": {
            "type": ["string", "null"]
          },
          "value_proposition_en": {
            "type": ["string", "null"]
          },
          "product_selection_info_ar": {
            "type": ["string", "null"]
          },
          "product_selection_info_en": {
            "type": ["string", "null"]
          },
          "payment_options_info_ar": {
            "type": ["string", "null"]
          },
          "payment_options_info_en": {
            "type": ["string", "null"]
          },
          "delivery_info_ar": {
            "type": ["string", "null"]
          },
          "delivery_info_en": {
            "type": ["string", "null"]
          },
          "seo_title_ar": {
            "type": ["string", "null"]
          },
          "seo_title_en": {
            "type": ["string", "null"]
          },
          "meta_description_ar": {
            "type": ["string", "null"]
          },
          "meta_description_en": {
            "type": ["string", "null"]
          },
          "customer_support_phone": {
            "type": ["string", "null"]
          },
          "customer_support_email": {
            "type": ["string", "null"],
            "format": "email"
          },
          "app_gallery_id": {
            "type": ["string", "null"]
          },
          "app_store_id": {
            "type": ["string", "null"]
          },
          "play_id": {
            "type": ["string", "null"]
          },
          "is_new": {
            "type": ["boolean", "null"]
          },
          "is_featured": {
            "type": ["boolean", "null"]
          },
          "is_spotlighted": {
            "type": ["boolean", "null"]
          },
          "created_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "updated_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "website_ar": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "website_en": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "likes": {
            "type": ["integer", "null"]
          },
          "dislikes": {
            "type": ["integer", "null"]
          },
          "copies": {
            "type": ["integer", "null"]
          },
          "shares": {
            "type": ["integer", "null"]
          },
          "visits": {
            "type": ["integer", "null"]
          },
          "bookmarks": {
            "type": ["integer", "null"]
          },
          "unbookmarks": {
            "type": ["integer", "null"]
          },
          "follows": {
            "type": ["integer", "null"]
          },
          "unfollows": {
            "type": ["integer", "null"]
          },
          "reports": {
            "type": ["integer", "null"]
          },
          "views": {
            "type": ["integer", "null"]
          },
          "impressions": {
            "type": ["integer", "null"]
          },
          "logo_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "cover_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "seo_image_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "is_followed": {
            "type": ["boolean", "null"]
          },
          "followed_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CategoryResource"
            }
          },
          "coupons": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CouponResource"
            }
          }
        }
      },
      "StoreSummaryResource": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "slug": {
            "type": ["string", "null"]
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "logo_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "cover_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "website_ar": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "website_en": {
            "type": ["string", "null"],
            "format": "uri"
          }
        }
      },
      "SubmitCouponRequest": {
        "type": "object",
        "properties": {
          "public_listing_requested": {
            "type": "boolean"
          },
          "code": {
            "type": "string"
          },
          "minimum_order_amount": {
            "type": "integer",
            "minimum": 0
          },
          "coupon_type": {
            "type": "string",
            "enum": ["DISCOUNT", "CASHBACK"]
          },
          "value_type": {
            "type": "string",
            "enum": ["AMOUNT", "PERCENTAGE"]
          },
          "amount_value_from": {
            "type": "number",
            "minimum": 0
          },
          "amount_value_to": {
            "type": "number"
          },
          "percentage_value_from": {
            "type": "number",
            "minimum": 0,
            "maximum": 100
          },
          "percentage_value_to": {
            "type": "number",
            "maximum": 100
          },
          "terms": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1
            },
            "minItems": 0
          },
          "countries": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1
            },
            "minItems": 0
          }
        },
        "required": [
          "code",
          "minimum_order_amount",
          "coupon_type",
          "value_type",
          "amount_value_from",
          "amount_value_to",
          "percentage_value_from",
          "percentage_value_to",
          "terms",
          "countries"
        ],
        "title": "SubmitCouponRequest"
      },
      "SubmitDealRequest": {
        "type": "object",
        "properties": {
          "country_id": {
            "type": "integer",
            "minimum": 1
          },
          "currency_id": {
            "type": "integer",
            "minimum": 1
          },
          "title_ar": {
            "type": "string",
            "maxLength": 255
          },
          "title_en": {
            "type": "string",
            "maxLength": 255
          },
          "description_ar": {
            "type": ["string", "null"]
          },
          "description_en": {
            "type": ["string", "null"]
          },
          "brand_ar": {
            "type": ["string", "null"],
            "maxLength": 255
          },
          "brand_en": {
            "type": ["string", "null"],
            "maxLength": 255
          },
          "outbound_url_template": {
            "type": "string"
          },
          "current_price_minor": {
            "type": "integer",
            "minimum": 0
          },
          "original_price_minor": {
            "type": "integer",
            "minimum": 0
          },
          "expires_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "terms": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1
            },
            "minItems": 0
          },
          "images": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "path": {
                  "type": "string"
                },
                "alt_ar": {
                  "type": ["string", "null"]
                },
                "alt_en": {
                  "type": ["string", "null"]
                },
                "priority": {
                  "type": "integer",
                  "minimum": 0
                },
                "is_primary": {
                  "type": "boolean"
                }
              },
              "required": ["path"]
            },
            "minItems": 1
          }
        },
        "required": [
          "country_id",
          "currency_id",
          "title_ar",
          "title_en",
          "outbound_url_template",
          "current_price_minor",
          "original_price_minor",
          "terms",
          "images"
        ],
        "title": "SubmitDealRequest"
      },
      "SubmitInteractionRequest": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "LIKE",
              "DISLIKE",
              "COPY",
              "SHARE",
              "VISIT",
              "BOOKMARK",
              "UNBOOKMARK",
              "FOLLOW",
              "UNFOLLOW",
              "REPORT",
              "VIEW",
              "IMPRESSION"
            ]
          },
          "item_type": {
            "type": "string",
            "enum": ["COUPON", "STORE", "CATEGORY", "DEAL"]
          },
          "item_id": {
            "type": "integer",
            "minimum": 1
          },
          "parent_id": {
            "type": ["integer", "null"],
            "minimum": 1
          }
        },
        "required": ["type", "item_type", "item_id"],
        "title": "SubmitInteractionRequest"
      },
      "SubmitReportRequest": {
        "type": "object",
        "properties": {
          "item_type": {
            "type": "string",
            "enum": ["COUPON", "STORE", "CATEGORY", "DEAL"]
          },
          "item_id": {
            "type": "integer",
            "minimum": 1
          },
          "message": {
            "type": "string"
          }
        },
        "required": ["item_type", "item_id", "message"],
        "title": "SubmitReportRequest"
      },
      "SuccessDataEnvelope": {
        "type": "object",
        "required": ["status"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          }
        }
      },
      "SuccessDeviceRegistrationResponse": {
        "type": "object",
        "additionalProperties": false,
        "required": ["status", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "data": {
            "$ref": "#/components/schemas/DeviceRegistrationResource"
          }
        }
      },
      "SuccessDeviceSubscriptionRevocationResponse": {
        "type": "object",
        "additionalProperties": false,
        "required": ["status", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "data": {
            "$ref": "#/components/schemas/DeviceSubscriptionRevocationResource"
          }
        }
      },
      "SuccessResponse": {
        "type": "object",
        "required": ["status"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          }
        }
      },
      "TermCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/TermResource"
        },
        "title": "TermCollection"
      },
      "TermResource": {
        "type": "object",
        "required": ["id", "text_ar", "text_en"],
        "properties": {
          "id": {
            "type": "integer"
          },
          "text_ar": {
            "type": ["string", "null"]
          },
          "text_en": {
            "type": ["string", "null"]
          }
        }
      },
      "TrackingCodeCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/TrackingCodeResource"
        },
        "title": "TrackingCodeCollection"
      },
      "TrackingCodeResource": {
        "type": "object",
        "required": [
          "id",
          "store_id",
          "country_id",
          "tracking_code",
          "store",
          "country"
        ],
        "properties": {
          "id": {
            "type": "integer"
          },
          "store_id": {
            "type": ["integer", "null"]
          },
          "country_id": {
            "type": ["integer", "null"]
          },
          "tracking_code": {
            "type": ["string", "null"]
          },
          "store": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/StoreSummaryResource"
              },
              {
                "type": "null"
              }
            ]
          },
          "country": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/MetadataCountryResource"
              },
              {
                "type": "null"
              }
            ]
          }
        }
      },
      "UpdateCouponRequest": {
        "type": "object",
        "properties": {
          "minimum_order_amount": {
            "type": "integer",
            "minimum": 0
          },
          "coupon_type": {
            "type": "string",
            "enum": ["DISCOUNT", "CASHBACK"]
          },
          "value_type": {
            "type": "string",
            "enum": ["AMOUNT", "PERCENTAGE"]
          },
          "amount_value_from": {
            "type": "number",
            "minimum": 0
          },
          "amount_value_to": {
            "type": "number"
          },
          "percentage_value_from": {
            "type": "number",
            "minimum": 0,
            "maximum": 100
          },
          "percentage_value_to": {
            "type": "number",
            "maximum": 100
          },
          "terms": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1
            },
            "minItems": 0
          },
          "countries": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1
            },
            "minItems": 0
          }
        },
        "required": [
          "minimum_order_amount",
          "coupon_type",
          "value_type",
          "amount_value_from",
          "amount_value_to",
          "percentage_value_from",
          "percentage_value_to",
          "terms",
          "countries"
        ],
        "title": "UpdateCouponRequest"
      },
      "UpdateDealRequest": {
        "type": "object",
        "properties": {
          "country_id": {
            "type": "integer",
            "minimum": 1
          },
          "currency_id": {
            "type": "integer",
            "minimum": 1
          },
          "title_ar": {
            "type": "string",
            "maxLength": 255
          },
          "title_en": {
            "type": "string",
            "maxLength": 255
          },
          "description_ar": {
            "type": ["string", "null"]
          },
          "description_en": {
            "type": ["string", "null"]
          },
          "brand_ar": {
            "type": ["string", "null"],
            "maxLength": 255
          },
          "brand_en": {
            "type": ["string", "null"],
            "maxLength": 255
          },
          "outbound_url_template": {
            "type": "string"
          },
          "current_price_minor": {
            "type": "integer",
            "minimum": 0
          },
          "original_price_minor": {
            "type": "integer",
            "minimum": 0
          },
          "expires_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "terms": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1
            },
            "minItems": 0
          },
          "images": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "path": {
                  "type": "string"
                },
                "alt_ar": {
                  "type": ["string", "null"]
                },
                "alt_en": {
                  "type": ["string", "null"]
                },
                "priority": {
                  "type": "integer",
                  "minimum": 0
                },
                "is_primary": {
                  "type": "boolean"
                }
              },
              "required": ["path"]
            },
            "minItems": 1
          }
        },
        "required": [
          "country_id",
          "currency_id",
          "title_ar",
          "title_en",
          "outbound_url_template",
          "current_price_minor",
          "original_price_minor",
          "terms",
          "images"
        ],
        "title": "UpdateDealRequest"
      },
      "UpdateMyPublicProfileRequest": {
        "type": "object",
        "properties": {
          "handle": {
            "type": ["string", "null"],
            "minLength": 3,
            "maxLength": 30
          },
          "bio": {
            "type": ["string", "null"],
            "maxLength": 500
          },
          "display_name": {
            "type": ["string", "null"],
            "maxLength": 120
          },
          "is_public": {
            "type": "boolean"
          },
          "analytics_enabled": {
            "type": "boolean"
          },
          "instagram_handle": {
            "type": ["string", "null"],
            "maxLength": 64
          },
          "tiktok_handle": {
            "type": ["string", "null"],
            "maxLength": 64
          },
          "x_handle": {
            "type": ["string", "null"],
            "maxLength": 64
          },
          "youtube_handle": {
            "type": ["string", "null"],
            "maxLength": 64
          },
          "snapchat_handle": {
            "type": ["string", "null"],
            "maxLength": 64
          },
          "whatsapp_channel_ref": {
            "type": ["string", "null"],
            "maxLength": 128
          },
          "whatsapp_group_ref": {
            "type": ["string", "null"],
            "maxLength": 128
          },
          "whatsapp_number": {
            "type": ["string", "null"],
            "description": "International number including country code: 8\u201315 digits after formatting is removed; a leading + is optional."
          },
          "mobile_number": {
            "type": ["string", "null"],
            "description": "International number including country code: 8\u201315 digits after formatting is removed; a leading + is optional."
          },
          "email": {
            "type": ["string", "null"],
            "maxLength": 191
          },
          "telegram_user_ref": {
            "type": ["string", "null"],
            "maxLength": 64
          },
          "telegram_channel_ref": {
            "type": ["string", "null"],
            "maxLength": 64
          },
          "telegram_group_ref": {
            "type": ["string", "null"],
            "maxLength": 64
          },
          "ga4_measurement_id": {
            "type": ["string", "null"],
            "maxLength": 120
          },
          "google_ads_conversion_id": {
            "type": ["string", "null"],
            "maxLength": 120
          },
          "google_ads_conversion_label": {
            "type": ["string", "null"],
            "maxLength": 191
          },
          "meta_pixel_id": {
            "type": ["string", "null"],
            "maxLength": 120
          },
          "tiktok_pixel_id": {
            "type": ["string", "null"],
            "maxLength": 191
          },
          "snap_pixel_id": {
            "type": ["string", "null"],
            "maxLength": 191
          }
        },
        "title": "UpdateMyPublicProfileRequest"
      },
      "UpdateNotificationPreferencesRequest": {
        "type": "object",
        "properties": {
          "preferences": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "notification_type": {
                  "type": "string",
                  "enum": [
                    "coupon_status_changed",
                    "admin_user_registered",
                    "admin_coupon_submitted",
                    "referral_registered",
                    "coupon_reported",
                    "deal_launched_in_followed_store"
                  ]
                },
                "channel": {
                  "type": "string",
                  "enum": ["email", "push"]
                },
                "is_enabled": {
                  "type": "boolean"
                }
              },
              "required": ["notification_type", "channel", "is_enabled"]
            }
          }
        },
        "required": ["preferences"],
        "title": "UpdateNotificationPreferencesRequest"
      },
      "UpdateOriginalReferrerRequest": {
        "type": "object",
        "properties": {
          "original_referrer": {
            "type": "string",
            "pattern": "^[A-Z]{3}\\d{4}$"
          }
        },
        "required": ["original_referrer"],
        "title": "UpdateOriginalReferrerRequest"
      },
      "UpdateProfileRequest": {
        "type": "object",
        "properties": {
          "first_name": {
            "type": ["string", "null"],
            "maxLength": 20
          },
          "last_name": {
            "type": ["string", "null"],
            "maxLength": 20
          },
          "date_of_birth": {
            "type": ["string", "null"],
            "format": "date"
          },
          "gender": {
            "type": ["string", "null"],
            "enum": ["MALE", "FEMALE", "UNKNOWN", null]
          },
          "communication_language": {
            "type": "string",
            "enum": ["en", "ar"]
          }
        },
        "title": "UpdateProfileRequest"
      },
      "UpdateSecondaryReferrerRequest": {
        "type": "object",
        "properties": {
          "secondary_referrer": {
            "type": ["string", "null"],
            "pattern": "^[A-Z]{3}\\d{4}$"
          }
        },
        "title": "UpdateSecondaryReferrerRequest"
      },
      "UpdateTrackingCodeRequest": {
        "type": "object",
        "properties": {
          "tracking_code": {
            "type": "string",
            "maxLength": 255
          }
        },
        "required": ["tracking_code"],
        "title": "UpdateTrackingCodeRequest"
      },
      "UploadAvatarRequest": {
        "type": "object",
        "properties": {
          "file": {
            "oneOf": [
              {
                "type": "string",
                "format": "binary",
                "contentMediaType": "image/avif"
              },
              {
                "type": "string",
                "format": "binary",
                "contentMediaType": "image/svg+xml"
              }
            ],
            "description": "AVIF or safe static SVG file whose extension and MIME type match its contents.",
            "maxLength": 10240
          }
        },
        "required": ["file"],
        "title": "UploadAvatarRequest"
      },
      "UserCouponsResource": {
        "type": "object",
        "required": ["coupons"],
        "properties": {
          "coupons": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CouponResource"
            }
          }
        }
      },
      "UserDealsResource": {
        "type": "object",
        "required": ["deals"],
        "properties": {
          "deals": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ManagedDealResource"
            }
          }
        }
      },
      "UserDeviceCollection": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/DeviceRegistrationResource"
        },
        "title": "UserDeviceCollection"
      },
      "UserDeviceResource": {
        "type": "object",
        "required": [
          "id",
          "user_id",
          "device_uuid",
          "push_token",
          "platform",
          "device_name",
          "created_at",
          "updated_at"
        ],
        "properties": {
          "id": {
            "type": "integer"
          },
          "user_id": {
            "type": ["integer", "null"]
          },
          "device_uuid": {
            "type": ["string", "null"]
          },
          "push_token": {
            "type": ["string", "null"]
          },
          "platform": {
            "type": ["string", "null"]
          },
          "device_name": {
            "type": ["string", "null"]
          },
          "created_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "updated_at": {
            "type": ["string", "null"],
            "format": "date-time"
          }
        }
      },
      "UserLimitsResource": {
        "type": "object",
        "required": [
          "profile_coupons_count",
          "published_coupons_count",
          "pending_coupons_count",
          "allowed_coupons",
          "allowed_coupons_per_store",
          "coupons_count",
          "stores_count",
          "remaining_coupons"
        ],
        "properties": {
          "profile_coupons_count": {
            "type": "integer",
            "minimum": 0
          },
          "published_coupons_count": {
            "type": "integer",
            "minimum": 0
          },
          "pending_coupons_count": {
            "type": "integer",
            "minimum": 0
          },
          "allowed_coupons": {
            "type": "integer",
            "minimum": 0
          },
          "allowed_coupons_per_store": {
            "type": "integer",
            "minimum": 0
          },
          "coupons_count": {
            "type": "integer",
            "minimum": 0
          },
          "stores_count": {
            "type": "integer",
            "minimum": 0
          },
          "remaining_coupons": {
            "type": "integer",
            "minimum": 0
          }
        }
      },
      "UserNotificationPreferenceResource": {
        "type": "object",
        "additionalProperties": {
          "type": "object",
          "additionalProperties": {
            "type": "boolean"
          }
        }
      },
      "UserPlanResource": {
        "type": "object",
        "required": [
          "id",
          "slug",
          "name_en",
          "name_ar",
          "status",
          "starts_at",
          "ends_at",
          "price_sar_monthly",
          "is_default_fallback"
        ],
        "properties": {
          "id": {
            "type": "integer",
            "minimum": 1
          },
          "slug": {
            "type": "string"
          },
          "name_en": {
            "type": ["string", "null"]
          },
          "name_ar": {
            "type": ["string", "null"]
          },
          "status": {
            "type": "string"
          },
          "starts_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "ends_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "price_sar_monthly": {
            "type": ["integer", "null"],
            "minimum": 0
          },
          "is_default_fallback": {
            "type": "boolean"
          }
        }
      },
      "UserPublicProfileAnalyticsInput": {
        "type": "object",
        "properties": {
          "ga4_measurement_id": {
            "type": ["string", "null"]
          },
          "google_ads_conversion_id": {
            "type": ["string", "null"]
          },
          "google_ads_conversion_label": {
            "type": ["string", "null"]
          },
          "meta_pixel_id": {
            "type": ["string", "null"]
          },
          "tiktok_pixel_id": {
            "type": ["string", "null"]
          },
          "snap_pixel_id": {
            "type": ["string", "null"]
          }
        }
      },
      "UserPublicProfileLinksInput": {
        "type": "object",
        "properties": {
          "instagram_handle": {
            "type": ["string", "null"]
          },
          "tiktok_handle": {
            "type": ["string", "null"]
          },
          "x_handle": {
            "type": ["string", "null"]
          },
          "youtube_handle": {
            "type": ["string", "null"]
          },
          "snapchat_handle": {
            "type": ["string", "null"]
          },
          "whatsapp_channel_ref": {
            "type": ["string", "null"]
          },
          "whatsapp_group_ref": {
            "type": ["string", "null"]
          },
          "whatsapp_number": {
            "type": ["string", "null"]
          },
          "mobile_number": {
            "type": ["string", "null"]
          },
          "email": {
            "type": ["string", "null"],
            "format": "email"
          },
          "telegram_user_ref": {
            "type": ["string", "null"]
          },
          "telegram_channel_ref": {
            "type": ["string", "null"]
          },
          "telegram_group_ref": {
            "type": ["string", "null"]
          }
        }
      },
      "UserPublicProfileResource": {
        "type": "object",
        "required": [
          "is_public",
          "analytics_enabled",
          "analytics_input",
          "links_input",
          "links"
        ],
        "properties": {
          "handle": {
            "type": ["string", "null"],
            "example": "creator.handle"
          },
          "bio": {
            "type": ["string", "null"],
            "example": "Deals, launches, and creator picks."
          },
          "is_public": {
            "type": "boolean",
            "example": true
          },
          "display_name": {
            "type": ["string", "null"],
            "example": "Amani Khalid"
          },
          "avatar_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "analytics_enabled": {
            "type": "boolean",
            "example": true
          },
          "analytics_input": {
            "$ref": "#/components/schemas/UserPublicProfileAnalyticsInput"
          },
          "analytics": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/PublicProfileAnalytics"
              },
              {
                "type": "null"
              }
            ]
          },
          "links_input": {
            "$ref": "#/components/schemas/UserPublicProfileLinksInput"
          },
          "links": {
            "$ref": "#/components/schemas/PublicProfileLinks"
          }
        }
      },
      "UserPublicProfileResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/SuccessDataEnvelope"
          },
          {
            "type": "object",
            "required": ["data"],
            "properties": {
              "data": {
                "$ref": "#/components/schemas/UserPublicProfileResource"
              }
            }
          }
        ]
      },
      "UserPublicProfileSummaryResource": {
        "type": "object",
        "required": [
          "handle",
          "owner_id",
          "updated_at",
          "published_coupon_count",
          "published_deal_count"
        ],
        "properties": {
          "handle": {
            "type": "string",
            "example": "amani-deals"
          },
          "owner_id": {
            "type": "integer",
            "example": 123
          },
          "display_name": {
            "type": ["string", "null"],
            "example": "Amani Deals"
          },
          "bio": {
            "type": ["string", "null"],
            "example": "Daily picks and offers."
          },
          "avatar_url": {
            "type": ["string", "null"],
            "format": "uri"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "example": "2026-05-01T10:30:00+00:00"
          },
          "last_public_content_at": {
            "type": ["string", "null"],
            "format": "date-time",
            "example": "2026-05-01T10:30:00+00:00"
          },
          "published_coupon_count": {
            "type": "integer",
            "minimum": 0,
            "example": 12
          },
          "published_deal_count": {
            "type": "integer",
            "minimum": 0,
            "example": 3
          }
        }
      },
      "UserResource": {
        "type": "object",
        "required": [
          "first_name",
          "last_name",
          "date_of_birth",
          "gender",
          "role",
          "email",
          "phone_number",
          "referral_code",
          "original_referrer",
          "secondary_referrer",
          "id",
          "email_verified",
          "phone_verified",
          "is_verified",
          "communication_language",
          "avatar_url"
        ],
        "properties": {
          "first_name": {
            "type": ["string", "null"]
          },
          "last_name": {
            "type": ["string", "null"]
          },
          "date_of_birth": {
            "type": ["string", "null"],
            "format": "date"
          },
          "gender": {
            "type": ["string", "null"],
            "enum": ["MALE", "FEMALE", "UNKNOWN", null]
          },
          "role": {
            "type": "string",
            "enum": ["USER", "ADMIN", "REVIEWER"]
          },
          "email": {
            "type": ["string", "null"],
            "format": "email"
          },
          "phone_number": {
            "type": ["string", "null"],
            "pattern": "^\\+966[0-9]{9}$"
          },
          "referral_code": {
            "type": ["string", "null"]
          },
          "original_referrer": {
            "type": ["string", "null"],
            "pattern": "^[A-Z]{3}\\d{4}$"
          },
          "secondary_referrer": {
            "type": ["string", "null"],
            "pattern": "^[A-Z]{3}\\d{4}$"
          },
          "id": {
            "type": "integer"
          },
          "email_verified": {
            "type": "boolean"
          },
          "phone_verified": {
            "type": "boolean"
          },
          "is_verified": {
            "type": "boolean"
          },
          "communication_language": {
            "type": ["string", "null"]
          },
          "avatar_url": {
            "type": ["string", "null"]
          }
        }
      },
      "UserResourceResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/SuccessDataEnvelope"
          },
          {
            "type": "object",
            "required": ["data"],
            "properties": {
              "data": {
                "$ref": "#/components/schemas/UserResource"
              }
            }
          }
        ]
      },
      "UserSessionCollectionResponse": {
        "type": "object",
        "required": ["status", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserSessionResource"
            }
          }
        }
      },
      "UserSessionResource": {
        "type": "object",
        "required": [
          "id",
          "label",
          "created_at",
          "last_used_at",
          "expires_at",
          "current"
        ],
        "properties": {
          "id": {
            "type": "integer",
            "minimum": 1
          },
          "label": {
            "type": "string"
          },
          "created_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "last_used_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "expires_at": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "current": {
            "type": "boolean"
          }
        }
      },
      "UserStatusData": {
        "type": "object",
        "required": ["dashboard", "limits", "current_plan"],
        "properties": {
          "dashboard": {
            "$ref": "#/components/schemas/DashboardResource"
          },
          "limits": {
            "$ref": "#/components/schemas/UserLimitsResource"
          },
          "current_plan": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/UserPlanResource"
              },
              {
                "type": "null"
              }
            ]
          }
        }
      },
      "UserStatusResource": {
        "type": "object",
        "properties": {
          "dashboard": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "$ref": "#/components/schemas/DashboardResource"
              }
            ]
          },
          "limits": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "$ref": "#/components/schemas/UserLimitsResource"
              }
            ]
          },
          "current_plan": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/UserPlanResource"
              }
            ]
          }
        },
        "required": ["dashboard", "limits", "current_plan"],
        "title": "UserStatusResource"
      },
      "UserStatusResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/SuccessDataEnvelope"
          },
          {
            "type": "object",
            "required": ["data"],
            "properties": {
              "data": {
                "$ref": "#/components/schemas/UserStatusData"
              }
            }
          }
        ]
      },
      "ValidationErrorResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/ErrorResponse"
          },
          {
            "type": "object",
            "properties": {
              "errors": {
                "type": "object",
                "additionalProperties": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          }
        ]
      },
      "WebhookAcceptedResponse": {
        "type": "object",
        "required": ["status", "data"],
        "properties": {
          "status": {
            "type": "string",
            "enum": ["success"]
          },
          "data": {
            "$ref": "#/components/schemas/WebhookResource"
          }
        }
      },
      "WebhookResource": {
        "type": "object",
        "required": ["message", "event_status"],
        "properties": {
          "message": {
            "type": "string"
          },
          "event_id": {
            "type": "string"
          },
          "event_status": {
            "type": "string"
          },
          "processed_at": {
            "type": "string",
            "format": "date-time"
          },
          "error": {
            "type": "string"
          },
          "result": {
            "description": "Webhook-specific result payload."
          }
        }
      }
    },
    "responses": {
      "AuthenticationException": {
        "description": "Authentication is required.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          }
        },
        "headers": {
          "X-Request-ID": {
            "$ref": "#/components/headers/RequestIdHeader"
          },
          "X-Client-ID": {
            "$ref": "#/components/headers/ClientIdEchoHeader"
          },
          "X-Installation-ID": {
            "$ref": "#/components/headers/InstallationIdEchoHeader"
          },
          "X-Session-ID": {
            "$ref": "#/components/headers/SessionIdEchoHeader"
          }
        }
      },
      "AuthorizationException": {
        "description": "The authenticated principal is not authorized.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          }
        },
        "headers": {
          "X-Request-ID": {
            "$ref": "#/components/headers/RequestIdHeader"
          },
          "X-Client-ID": {
            "$ref": "#/components/headers/ClientIdEchoHeader"
          },
          "X-Installation-ID": {
            "$ref": "#/components/headers/InstallationIdEchoHeader"
          },
          "X-Session-ID": {
            "$ref": "#/components/headers/SessionIdEchoHeader"
          }
        }
      },
      "Conflict": {
        "description": "The request conflicts with current resource state.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          }
        },
        "headers": {
          "X-Request-ID": {
            "$ref": "#/components/headers/RequestIdHeader"
          },
          "X-Client-ID": {
            "$ref": "#/components/headers/ClientIdEchoHeader"
          },
          "X-Installation-ID": {
            "$ref": "#/components/headers/InstallationIdEchoHeader"
          },
          "X-Session-ID": {
            "$ref": "#/components/headers/SessionIdEchoHeader"
          }
        }
      },
      "Gone": {
        "description": "The requested endpoint has been retired.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          }
        },
        "headers": {
          "X-Request-ID": {
            "$ref": "#/components/headers/RequestIdHeader"
          },
          "X-Client-ID": {
            "$ref": "#/components/headers/ClientIdEchoHeader"
          },
          "X-Installation-ID": {
            "$ref": "#/components/headers/InstallationIdEchoHeader"
          },
          "X-Session-ID": {
            "$ref": "#/components/headers/SessionIdEchoHeader"
          }
        }
      },
      "NotFoundHttpException": {
        "description": "The requested resource was not found.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          }
        },
        "headers": {
          "X-Request-ID": {
            "$ref": "#/components/headers/RequestIdHeader"
          },
          "X-Client-ID": {
            "$ref": "#/components/headers/ClientIdEchoHeader"
          },
          "X-Installation-ID": {
            "$ref": "#/components/headers/InstallationIdEchoHeader"
          },
          "X-Session-ID": {
            "$ref": "#/components/headers/SessionIdEchoHeader"
          }
        }
      },
      "ServerError": {
        "description": "Unexpected server error.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          }
        },
        "headers": {
          "X-Request-ID": {
            "$ref": "#/components/headers/RequestIdHeader"
          },
          "X-Client-ID": {
            "$ref": "#/components/headers/ClientIdEchoHeader"
          },
          "X-Installation-ID": {
            "$ref": "#/components/headers/InstallationIdEchoHeader"
          },
          "X-Session-ID": {
            "$ref": "#/components/headers/SessionIdEchoHeader"
          }
        }
      },
      "ServiceUnavailable": {
        "description": "The service is temporarily unavailable.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          }
        },
        "headers": {
          "X-Request-ID": {
            "$ref": "#/components/headers/RequestIdHeader"
          },
          "X-Client-ID": {
            "$ref": "#/components/headers/ClientIdEchoHeader"
          },
          "X-Installation-ID": {
            "$ref": "#/components/headers/InstallationIdEchoHeader"
          },
          "X-Session-ID": {
            "$ref": "#/components/headers/SessionIdEchoHeader"
          }
        }
      },
      "TooManyRequests": {
        "description": "Request rate limit exceeded.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ErrorResponse"
            }
          }
        },
        "headers": {
          "Retry-After": {
            "$ref": "#/components/headers/RetryAfterHeader"
          },
          "X-RateLimit-Limit": {
            "$ref": "#/components/headers/RateLimitLimitHeader"
          },
          "X-RateLimit-Remaining": {
            "$ref": "#/components/headers/RateLimitRemainingHeader"
          },
          "X-Request-ID": {
            "$ref": "#/components/headers/RequestIdHeader"
          },
          "X-Client-ID": {
            "$ref": "#/components/headers/ClientIdEchoHeader"
          },
          "X-Installation-ID": {
            "$ref": "#/components/headers/InstallationIdEchoHeader"
          },
          "X-Session-ID": {
            "$ref": "#/components/headers/SessionIdEchoHeader"
          }
        }
      },
      "ValidationException": {
        "description": "Request validation failed.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ValidationErrorResponse"
            }
          }
        },
        "headers": {
          "X-Request-ID": {
            "$ref": "#/components/headers/RequestIdHeader"
          },
          "X-Client-ID": {
            "$ref": "#/components/headers/ClientIdEchoHeader"
          },
          "X-Installation-ID": {
            "$ref": "#/components/headers/InstallationIdEchoHeader"
          },
          "X-Session-ID": {
            "$ref": "#/components/headers/SessionIdEchoHeader"
          }
        }
      }
    },
    "parameters": {
      "AcceptLanguageHeader": {
        "name": "Accept-Language",
        "in": "header",
        "required": false,
        "description": "Optional quality-weighted locale preference used to localize responses. Supported locales: en, ar.",
        "schema": {
          "type": "string",
          "examples": ["en", "ar", "ar,en;q=0.9"]
        }
      },
      "ClientIdHeader": {
        "name": "X-Client-ID",
        "in": "header",
        "required": false,
        "description": "Optional client identifier used for request tracing.",
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "InstallationCredentialHeader": {
        "name": "X-Installation-Credential",
        "in": "header",
        "required": true,
        "description": "Base64url-encoded 32-byte installation credential. The server stores only its SHA-256 hash.",
        "schema": {
          "type": "string",
          "pattern": "^[A-Za-z0-9_-]{43}$",
          "minLength": 43,
          "maxLength": 43
        }
      },
      "InstallationIdHeader": {
        "name": "X-Installation-ID",
        "in": "header",
        "required": false,
        "description": "Optional installation identifier used for request tracing.",
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "ReferralBoostedHeader": {
        "name": "X-Boosted-Referral-Code",
        "in": "header",
        "required": false,
        "description": "Boosted campaign referral code used for referral-aware responses and anonymous attribution when paired with X-Visitor-Id.",
        "schema": {
          "type": "string",
          "pattern": "^[A-Z]{3}\\d{4}$"
        }
      },
      "ReferralOriginalHeader": {
        "name": "X-Original-Referrer",
        "in": "header",
        "required": false,
        "description": "Original referral code used for referral-aware responses and anonymous attribution when paired with X-Visitor-Id.",
        "schema": {
          "type": "string",
          "pattern": "^[A-Z]{3}\\d{4}$"
        }
      },
      "ReferralSecondaryHeader": {
        "name": "X-Secondary-Referrer",
        "in": "header",
        "required": false,
        "description": "Secondary referral code used for referral-aware responses and anonymous attribution when paired with X-Visitor-Id.",
        "schema": {
          "type": "string",
          "pattern": "^[A-Z]{3}\\d{4}$"
        }
      },
      "ReferralSpotlightHeader": {
        "name": "X-Spotlight-Referral-Code",
        "in": "header",
        "required": false,
        "description": "Spotlight campaign referral code used for referral-aware responses and anonymous attribution when paired with X-Visitor-Id.",
        "schema": {
          "type": "string",
          "pattern": "^[A-Z]{3}\\d{4}$"
        }
      },
      "RequiredInstallationIdHeader": {
        "name": "X-Installation-ID",
        "in": "header",
        "required": true,
        "description": "Stable UUID v4 generated once for this app installation.",
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "SessionIdHeader": {
        "name": "X-Session-ID",
        "in": "header",
        "required": false,
        "description": "Optional client session identifier used for request tracing.",
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "VisitorIdHeader": {
        "name": "X-Visitor-Id",
        "in": "header",
        "required": false,
        "description": "Purpose-gated anonymous attribution identifier retained for seven days.",
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      }
    },
    "headers": {
      "ClientIdEchoHeader": {
        "description": "Echoed when the request supplied a valid X-Client-ID UUID.",
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "InstallationIdEchoHeader": {
        "description": "Echoed when the request supplied a valid X-Installation-ID UUID.",
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "RateLimitLimitHeader": {
        "description": "Maximum requests allowed in the current rate-limit window.",
        "schema": {
          "type": "integer",
          "minimum": 0
        }
      },
      "RateLimitRemainingHeader": {
        "description": "Requests remaining in the current rate-limit window.",
        "schema": {
          "type": "integer",
          "minimum": 0
        }
      },
      "RequestIdHeader": {
        "description": "Server-generated request correlation identifier.",
        "required": true,
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "RetryAfterHeader": {
        "description": "Seconds until the request may be retried.",
        "schema": {
          "type": "integer",
          "minimum": 0
        }
      },
      "SessionIdEchoHeader": {
        "description": "Echoed when the request supplied a valid X-Session-ID UUID.",
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      }
    },
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "Sanctum personal access token"
      },
      "webhookBearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "Webhook secret token"
      }
    }
  },
  "tags": []
}
