{
  "openapi": "3.0.1",
  "info": {
    "title": "Washington Trails Association Hike & Trip Report Finder",
    "description": "Find Washington State hikes by region or keyword with length, elevation, rating and feature data, pull full trail stats and coordinates by hike URL, or check recent trip report activity.",
    "version": "1.1",
    "x-build-id": "Mnfe02NPtoG0Bk2Br"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/dataspryva~washington-trails-association-hike-and-trip-report/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-dataspryva-washington-trails-association-hike-and-trip-report",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/dataspryva~washington-trails-association-hike-and-trip-report/runs": {
      "post": {
        "operationId": "runs-sync-dataspryva-washington-trails-association-hike-and-trip-report",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/dataspryva~washington-trails-association-hike-and-trip-report/run-sync": {
      "post": {
        "operationId": "run-sync-dataspryva-washington-trails-association-hike-and-trip-report",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "searchTrails",
              "getTrailDetails",
              "getTripReports",
              "searchTripReports"
            ],
            "type": "string",
            "description": "What to fetch from wta.org.",
            "default": "searchTrails"
          },
          "searchQuery": {
            "title": "Full-text query",
            "type": "string",
            "description": "Free-text search of WTA hike descriptions (modes searchTrails, searchTripReports)."
          },
          "nameQuery": {
            "title": "Hike name",
            "type": "string",
            "description": "Match the hike name only (modes searchTrails, getTripReports, searchTripReports)."
          },
          "region": {
            "title": "Region",
            "enum": [
              "all",
              "Central Cascades",
              "Central Washington",
              "Eastern Washington",
              "Issaquah Alps",
              "Mount Rainier Area",
              "North Cascades",
              "Olympic Peninsula",
              "Puget Sound and Islands",
              "Snoqualmie Region",
              "South Cascades",
              "Southwest Washington"
            ],
            "type": "string",
            "description": "Washington region. Choose All Washington to search statewide (modes searchTrails, getTripReports, searchTripReports)."
          },
          "subregion": {
            "title": "Sub-region",
            "enum": [
              "all",
              "83c2ab06fbf236015c8848042f706d58",
              "2b0ca41464d9baca77ced16fb4d40760",
              "684278bc46c11ebe3c5b7212b6f8e486",
              "f6845d37f1edba9dc2bc8a75346f5bd5",
              "637634387ca38685f89162475c7fc1d2",
              "39c3197019b541c4b4b2970281fd85ed",
              "3a415482d61dc1f893288c1bcf5cd8ae",
              "6febb0079f87770b5e790a71aafa3770",
              "b4be8a42f05d2054cbb2ca031b9a6a03",
              "7a4397f2ffde7d0b490ff1ca77cceb9e",
              "fe742c316d095b81d23d712efa977d3d",
              "3eff611193d7d4b57590df1f40b48800",
              "d305615b5db417f18661c5233d2ce950",
              "bec6f9858a88f32a0912ed21d9c63b51",
              "325fdb0c3072b1b9acca522fb9e69ec2",
              "70056b3c13ba158deec7750ef9701a94",
              "9f13d8a3fcd2e1ab7a5b5aaab5997a9e",
              "98ea7186f4ff4bbba5329613f9a89bfb",
              "883e708ab442592f904fd87c1c909f6b",
              "c8814620167ff2c018e9b0d6e961f0c1",
              "cbe4acbaa2c01f9a5dbf4deece4e6ad9",
              "3b53cfc78db378ecf7599df0fa14a51c",
              "cc329f21ff637826168e61bc9db77d65",
              "6194b417d1ae41b1ecd0d297b3fd2dea",
              "5674705352f9b856f2df1da7cbb8e0b1",
              "5952810559bc6d85f808011a53ea6fcf",
              "b52b426625b55325e408adfacae3b6c5",
              "425fd9e8fd7edb23fc53782f16c2ea05",
              "bfbc0abe0fd04783aaad717ea2699866",
              "3b2e0197b8be6c19a273c919b3301405",
              "3ca3cd096bfedde6ff95b0859278cc75",
              "6135b6a861b5ac0c9b17a2f9b60c9295",
              "e4421728558408ef04e0a46afb2aa7ea",
              "92528ff6af30075eec65f35159defc50",
              "7e0a6ce03ba1204d6bd3fdf64d3ad805",
              "df2c2da1637452abe74a5d10837c2e03",
              "d9dddf65d66479f065d40c1aeac18da3",
              "db086e5e85941a02ae188f726f7e9e2c",
              "5d45ee6e4b5b077d069382b6aac9d388",
              "f06510bd295c2d640ee2594d1b7a2ff6",
              "767d751df8b6495999e96486d4d32d49",
              "ac28fa6c89800fca796a2e61b879f416",
              "b1376aba679a6bf3d6402cf91f16a44e",
              "73b109ca9145e4433f3089a1789d29bf",
              "17dcd22410be73abfd45d2703e123a35",
              "6f227fc5711324cee6170aa6d4b52cec",
              "74fe67d98acee7d0decda17c2441a4d2",
              "7f27f833998f4bf38a1c816fdb4cac51",
              "35adb6fb84290947f778381d9d24a470",
              "f0095f8e8f394f4210f50999bf8abf2c",
              "99c63956051e489f96527d6e4ed0915c"
            ],
            "type": "string",
            "description": "Optional sub-region. Selecting one also selects its parent region.",
            "default": "all"
          },
          "features": {
            "title": "Trail features",
            "uniqueItems": true,
            "type": "array",
            "description": "Require all selected features (mode searchTrails). Empty = no feature filter.",
            "items": {
              "type": "string",
              "enum": [
                "Coast",
                "Rivers",
                "Lakes",
                "Waterfalls",
                "Old growth",
                "Fall foliage",
                "Wildflowers/Meadows",
                "Mountain views",
                "Summits",
                "Wildlife",
                "Ridges/passes",
                "Established campsites"
              ],
              "enumTitles": [
                "Coast",
                "Rivers",
                "Lakes",
                "Waterfalls",
                "Old growth",
                "Fall foliage",
                "Wildflowers/Meadows",
                "Mountain views",
                "Summits",
                "Wildlife",
                "Ridges/passes",
                "Established campsites"
              ]
            },
            "default": []
          },
          "dogPolicy": {
            "title": "Dog policy",
            "enum": [
              "any",
              "allowed-on-leash",
              "not-allowed"
            ],
            "type": "string",
            "description": "Filter by dog access (mode searchTrails).",
            "default": "any"
          },
          "kidFriendly": {
            "title": "Good for kids",
            "type": "boolean",
            "description": "Only kid-friendly trails (mode searchTrails).",
            "default": false
          },
          "wheelchairFriendly": {
            "title": "Wheelchair friendly",
            "type": "boolean",
            "description": "Only wheelchair-friendly trails (mode searchTrails).",
            "default": false
          },
          "minRating": {
            "title": "Minimum rating",
            "minimum": 0,
            "maximum": 5,
            "type": "number",
            "description": "Minimum average community rating, 0–5 (mode searchTrails)."
          },
          "minVoteCount": {
            "title": "Minimum rating votes",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "Minimum number of rating votes (mode searchTrails; applied after the listing fetch)."
          },
          "minLengthMiles": {
            "title": "Minimum length (miles)",
            "minimum": 0,
            "maximum": 200,
            "type": "number",
            "description": "Only trails at least this long (mode searchTrails). Trails with unknown length are excluded."
          },
          "maxLengthMiles": {
            "title": "Maximum length (miles)",
            "minimum": 0,
            "maximum": 200,
            "type": "number",
            "description": "Only trails at most this long (mode searchTrails). Trails with unknown length are excluded."
          },
          "minElevationGainFeet": {
            "title": "Minimum elevation gain (ft)",
            "minimum": 0,
            "maximum": 30000,
            "type": "integer",
            "description": "Only trails with at least this gain (mode searchTrails). Unknown gain is excluded."
          },
          "maxElevationGainFeet": {
            "title": "Maximum elevation gain (ft)",
            "minimum": 0,
            "maximum": 30000,
            "type": "integer",
            "description": "Only trails with at most this gain (mode searchTrails). Unknown gain is excluded."
          },
          "maxHighPointFeet": {
            "title": "Maximum high point (ft)",
            "minimum": 0,
            "maximum": 15000,
            "type": "integer",
            "description": "Only trails whose highest point is at most this elevation (mode searchTrails)."
          },
          "passes": {
            "title": "Required pass",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep trails that require at least one selected pass (mode searchTrails). Empty = no pass filter.",
            "items": {
              "type": "string",
              "enum": [
                "none",
                "discover-pass",
                "national-park-pass",
                "northwest-forest-pass",
                "interagency-pass",
                "oregon-state-parks-day-use",
                "sno-parks-permit"
              ],
              "enumTitles": [
                "No pass",
                "Discover Pass",
                "National Park pass",
                "Northwest Forest Pass",
                "Interagency pass",
                "Oregon State Parks day-use",
                "Sno-Parks permit"
              ]
            },
            "default": []
          },
          "reportRecency": {
            "title": "Trip-report recency",
            "enum": [
              "anytime",
              "30-to-90-days",
              "90-plus-days"
            ],
            "type": "string",
            "description": "Filter by how recently a trail received a trip report (mode searchTrails).",
            "default": "anytime"
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "recently-updated",
              "rating",
              "difficulty",
              "mileage",
              "elevation-gain",
              "high-point",
              "name"
            ],
            "type": "string",
            "description": "Result order (mode searchTrails).",
            "default": "recently-updated"
          },
          "latitude": {
            "title": "Latitude",
            "minimum": -90,
            "maximum": 90,
            "type": "number",
            "description": "Center latitude for a radius search (mode searchTrails). Requires longitude and radiusMiles."
          },
          "longitude": {
            "title": "Longitude",
            "minimum": -180,
            "maximum": 180,
            "type": "number",
            "description": "Center longitude for a radius search (mode searchTrails). Requires latitude and radiusMiles."
          },
          "radiusMiles": {
            "title": "Radius (miles)",
            "minimum": 1,
            "maximum": 200,
            "type": "number",
            "description": "Search radius in miles (mode searchTrails)."
          },
          "boundingBox": {
            "title": "Bounding box",
            "type": "string",
            "description": "Map area as `south,west,north,east` (mode searchTrails). Takes priority over latitude/longitude/radius."
          },
          "trailUrls": {
            "title": "Trail URLs or slugs",
            "type": "array",
            "description": "WTA hike URLs, /go-hiking/hikes/<slug> paths, or bare slugs (modes getTrailDetails, getTripReports).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "fetchDetails": {
            "title": "Fetch trail details",
            "type": "boolean",
            "description": "Add difficulty, description, parking pass, land manager, directions, alerts and trip-report count with one detail page per trail (modes searchTrails, getTripReports).",
            "default": false
          },
          "author": {
            "title": "Report author",
            "type": "string",
            "description": "Exact WTA author username (mode searchTripReports)."
          },
          "tripDateFrom": {
            "title": "Report date from",
            "type": "string",
            "description": "Earliest trip date, YYYY-MM-DD (mode searchTripReports)."
          },
          "tripDateTo": {
            "title": "Report date to",
            "type": "string",
            "description": "Latest trip date, YYYY-MM-DD (mode searchTripReports)."
          },
          "tripMonth": {
            "title": "Month",
            "enum": [
              "all",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "7",
              "8",
              "9",
              "10",
              "11",
              "12"
            ],
            "type": "string",
            "description": "Trip month across any year (mode searchTripReports).",
            "default": "all"
          },
          "hikeTypes": {
            "title": "Hike types",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep reports matching any selected hike type (mode searchTripReports).",
            "items": {
              "type": "string",
              "enum": [
                "day-hike",
                "overnight",
                "multi-night-backpack",
                "snowshoe-xc-ski"
              ],
              "enumTitles": [
                "Day hike",
                "Overnight",
                "Multi-night backpack",
                "Snowshoe / XC ski"
              ]
            },
            "default": []
          },
          "reportFeatures": {
            "title": "Report features",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep reports matching any selected feature (mode searchTripReports).",
            "items": {
              "type": "string",
              "enum": [
                "has-photos",
                "hiked-by-kids",
                "hiked-with-dog",
                "was-workparty"
              ],
              "enumTitles": [
                "Has photos",
                "Hiked by kids",
                "Hiked with a dog",
                "Was a work party"
              ]
            },
            "default": []
          },
          "reportHighlights": {
            "title": "Report highlights",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep reports mentioning any selected highlight (mode searchTripReports).",
            "items": {
              "type": "string",
              "enum": [
                "wildflowers-blooming",
                "fall-foliage",
                "ripe-berries"
              ],
              "enumTitles": [
                "Wildflowers blooming",
                "Fall foliage",
                "Ripe berries"
              ]
            },
            "default": []
          },
          "trailConditions": {
            "title": "Trail conditions",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep reports matching any selected trail condition (mode searchTripReports).",
            "items": {
              "type": "string",
              "enum": [
                "good",
                "difficult",
                "bugs-ok",
                "snow-free",
                "snow-on-trail"
              ],
              "enumTitles": [
                "Good",
                "Difficult",
                "Bugs okay",
                "Snow free",
                "Snow on trail"
              ]
            },
            "default": []
          },
          "roadConditions": {
            "title": "Road conditions",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep reports matching any selected road condition (mode searchTripReports).",
            "items": {
              "type": "string",
              "enum": [
                "all-vehicles",
                "high-clearance",
                "impassable"
              ],
              "enumTitles": [
                "All vehicles",
                "High clearance",
                "Impassable"
              ]
            },
            "default": []
          },
          "fetchReportDetails": {
            "title": "Fetch report details",
            "type": "boolean",
            "description": "Open each report page for trail URL, hike type, trail/road/bug/snow conditions and full photo URLs (mode searchTripReports).",
            "default": false
          },
          "tripReportsPerTrail": {
            "title": "Reports per trail",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "Recent reports to include per trail (mode getTripReports).",
            "default": 5
          },
          "includeReportText": {
            "title": "Include report text",
            "type": "boolean",
            "description": "Attach full text and tags to the recent reports (mode getTripReports; up to 5 per trail).",
            "default": false
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Hard cap on emitted records.",
            "default": 50
          },
          "proxyConfiguration": {
            "title": "Proxy configuration (optional)",
            "type": "object",
            "description": "Optional override. The actor works without any proxy."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}