{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/curbwaste/json-schema/curbwaste-public-locations-list-response-schema.json",
  "title": "PublicLocationsListResponse",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/curbwaste-locations-api-openapi.yml#/components/schemas/PublicLocationsListResponse",
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/PublicLocation"
      }
    },
    "page": {
      "type": "number"
    },
    "limit": {
      "type": "number"
    },
    "total": {
      "type": "number"
    }
  },
  "required": [
    "data",
    "page",
    "limit",
    "total"
  ],
  "$defs": {
    "PublicLocation": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "customerId": {
          "type": "string"
        },
        "name": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "status": {
          "type": "string"
        },
        "locationNote": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "purchaseOrderNumber": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "address": {
          "$ref": "#/$defs/PublicLocationAddress"
        },
        "createdAt": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "updatedAt": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "reused": {
          "type": "boolean"
        },
        "reactivated": {
          "type": "boolean"
        }
      },
      "required": [
        "id",
        "customerId",
        "name",
        "status",
        "locationNote",
        "purchaseOrderNumber",
        "address",
        "createdAt",
        "updatedAt"
      ]
    },
    "PublicLocationAddress": {
      "type": "object",
      "properties": {
        "address": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "city": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "state": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "zipcode": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "streetNo": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "county": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "borough": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "geoPlaceId": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "string"
            }
          ]
        },
        "location": {
          "oneOf": [
            {
              "type": "null"
            },
            {
              "type": "object",
              "properties": {
                "lat": {
                  "type": "number"
                },
                "lng": {
                  "type": "number"
                }
              },
              "required": [
                "lat",
                "lng"
              ]
            }
          ]
        }
      },
      "required": [
        "address",
        "city",
        "state",
        "zipcode",
        "streetNo",
        "county",
        "borough",
        "geoPlaceId",
        "location"
      ]
    }
  }
}