{
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "$id": "https://firmtape.com/contracts/public/events/alerts/level_touch.schema.json",
 "title": "level_touch",
 "description": "Sent when the price touches the flip, the call wall or the put wall and turns back your chosen number of points on the side it came from.",
 "allOf": [
  {
   "$ref": "envelope.schema.json"
  }
 ],
 "properties": {
  "type": {
   "const": "level_touch",
   "description": "`level_touch`."
  },
  "direction": {
   "enum": [
    "above",
    "below"
   ],
   "description": "The side the price came from and went back to."
  },
  "threshold_points": {
   "type": "number",
   "description": "The size you picked."
  }
 },
 "x-when": [
  "A touch is the price within 2 SPX points of the level, or past it without the closes that would make it a hold beyond.",
  "Armed only once the price has been more than your number of points away on that side.",
  "Not sent for where the price already is when the level is first seen."
 ],
 "x-features": [
  "level-alerts",
  "webhooks"
 ],
 "examples": [
  {
   "version": 1,
   "id": "evt_3f9a0c6e21d4b7a8e5f10c2d",
   "type": "level_touch",
   "symbol": "SPX",
   "price": 6710.5,
   "book": "volume",
   "ts": "2026-10-29T14:32:05-04:00",
   "day": "2026-10-29",
   "levels": {
    "flip": 6715.5,
    "call_wall": 6750,
    "put_wall": 6700,
    "put_support": 6700
   },
   "level": {
    "kind": "put_wall",
    "value": 6700
   },
   "direction": "above",
   "threshold_points": 10,
   "text": "SPX touched the put wall 6,700.00 and turned back up 10.00"
  }
 ],
 "x-source": "alerts",
 "x-product": "live",
 "x-plan": "live",
 "x-version": 1,
 "x-since": "2026-10-29",
 "x-switch-on": "Account, Level alerts: a webhook address, and the event on the watchlist.",
 "required": [
  "threshold_points"
 ]
}