{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/curtin/main/json-schema/curtin-web-search-schema.json",
  "title": "Curtin Web Search Response (mimas/v1)",
  "description": "Response body of https://www.curtin.edu.au/wp-json/mimas/v1/search/elastic. Curtin returns a raw Elasticsearch response when a `query` parameter is supplied, and an empty array when it is not. Derived from live keyless probes on 2026-08-30.",
  "x-provenance": {
    "generated": "2026-08-30",
    "method": "derived",
    "x-operator": "institution",
    "source": [
      "https://www.curtin.edu.au/wp-json/mimas/v1/search/elastic?query=engineering"
    ],
    "x-evidence-method": "probed",
    "x-authorship": "Generated by API Evangelist from live unauthenticated probes. Curtin University publishes no schema for this API."
  },
  "oneOf": [
    {
      "$ref": "#/$defs/elasticResponse"
    },
    {
      "type": "array",
      "maxItems": 0,
      "description": "Returned when `query` is absent or misnamed"
    }
  ],
  "$defs": {
    "elasticResponse": {
      "type": "object",
      "required": [
        "hits"
      ],
      "properties": {
        "took": {
          "type": "integer"
        },
        "timed_out": {
          "type": "boolean"
        },
        "_shards": {
          "type": "object",
          "properties": {
            "total": {
              "type": "integer"
            },
            "successful": {
              "type": "integer"
            },
            "skipped": {
              "type": "integer"
            },
            "failed": {
              "type": "integer"
            }
          }
        },
        "hits": {
          "type": "object",
          "properties": {
            "total": {
              "type": "object",
              "properties": {
                "value": {
                  "type": "integer"
                },
                "relation": {
                  "type": "string"
                }
              }
            },
            "hits": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/hit"
              }
            }
          }
        },
        "suggest": {
          "type": "object"
        }
      }
    },
    "hit": {
      "type": "object",
      "properties": {
        "_index": {
          "type": "string",
          "description": "e.g. curtin-learning-offerings-prod-v20260830170034"
        },
        "_id": {
          "type": "string"
        },
        "_score": {
          "type": "number"
        },
        "_ignored": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "_source": {
          "type": "object",
          "properties": {
            "search_tab": {
              "type": "string"
            },
            "content_type": {
              "type": "string"
            }
          }
        },
        "highlight": {
          "type": "object",
          "properties": {
            "search_as_you_type": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        }
      }
    }
  }
}