{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/epa/refs/heads/main/json-schema/cam-monitor-plan-monitor-method-dto-schema.json",
  "title": "MonitorMethodDTO",
  "description": "MonitorMethodDTO schema from Monitor Plan Management OpenAPI Specification",
  "type": "object",
  "properties": {
    "parameterCode": {
      "type": "string",
      "description": "Code used to identify the parameter.",
      "example": "SO2"
    },
    "monitoringMethodCode": {
      "type": "string",
      "description": "Code used to identify the monitoring methodology.",
      "example": "CEM"
    },
    "substituteDataCode": {
      "type": "string",
      "description": "Code used to identify the substitute data approach type.",
      "example": "SPTS"
    },
    "bypassApproachCode": {
      "type": "string",
      "description": "Code used to identify the value to be used for an unmonitored bypass stack.",
      "example": "BYMAX"
    },
    "beginDate": {
      "format": "date-time",
      "type": "string",
      "description": "Date on which information became effective or activity started.",
      "example": "2007-11-27"
    },
    "beginHour": {
      "type": "number",
      "description": "Hour in which information became effective.",
      "example": 17
    },
    "endDate": {
      "format": "date-time",
      "type": "string",
      "description": "Last date in which information was effective.  This date will be null for active records.",
      "example": null
    },
    "endHour": {
      "type": "number",
      "description": "Last hour in which information was effective.  This value will be null for active records.",
      "example": null
    },
    "id": {
      "type": "string",
      "description": "Unique identifier of a monitoring method record.",
      "example": "MELISSAMAT-7BA7D94FDB4F4D4A8E1161E4B46150F6"
    },
    "locationId": {
      "type": "string",
      "description": "Unique identifier of a monitoring location record.",
      "example": "5770"
    },
    "userId": {
      "type": "string",
      "description": "User account or source of data that added or updated record.",
      "example": "abcde"
    },
    "addDate": {
      "type": "string",
      "description": "Date and time in which record was added.",
      "example": "2009-02-20"
    },
    "updateDate": {
      "type": "string",
      "description": "Date and time in which record was last updated.",
      "example": "2009-02-20"
    },
    "active": {
      "type": "boolean",
      "description": "Flag for active monitor location record",
      "example": true
    }
  },
  "required": [
    "parameterCode",
    "monitoringMethodCode",
    "substituteDataCode",
    "bypassApproachCode",
    "beginDate",
    "beginHour",
    "endDate",
    "endHour",
    "id",
    "locationId",
    "userId",
    "addDate",
    "updateDate",
    "active"
  ]
}