{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-site-response-schema.json",
  "title": "SiteResponse",
  "x-generated": "2026-10-28",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/telenor-sverige-geographic-sites-management-openapi.yml#/components/schemas/SiteResponse",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The ID of the site."
    },
    "objectId": {
      "type": "string",
      "description": "The object ID of the site."
    },
    "name": {
      "type": "string",
      "description": "The name of the site."
    },
    "role": {
      "type": "string",
      "description": "The role of the site."
    },
    "address": {
      "$ref": "#/$defs/Address",
      "description": "The main address of the site."
    },
    "coordinates": {
      "$ref": "#/$defs/Rt90CoordinatesDto",
      "description": "RT90 coordinates of the site."
    },
    "status": {
      "type": "string",
      "description": "The status of the site.",
      "enum": [
        "ACTIVE",
        "INACTIVE",
        "OTHER"
      ]
    },
    "movable": {
      "type": "boolean",
      "description": "Indicates if the site is movable or not. If movable, the site has no address or coordinates."
    }
  },
  "$defs": {
    "Address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string",
          "description": "The street name."
        },
        "complement": {
          "type": "string",
          "description": "The complement of the address."
        },
        "postalCode": {
          "type": "string",
          "description": "The postal code of the address."
        },
        "city": {
          "type": "string",
          "description": "The city of the address."
        },
        "floorNumber": {
          "type": "string",
          "description": "The floor number of the address."
        },
        "roomNumber": {
          "type": "string",
          "description": "The room number of the address."
        },
        "country": {
          "type": "string",
          "description": "The country of the address."
        }
      }
    },
    "Rt90CoordinatesDto": {
      "type": "object",
      "properties": {
        "rt90X": {
          "type": "integer",
          "format": "int32"
        },
        "rt90Y": {
          "type": "integer",
          "format": "int32"
        }
      },
      "required": [
        "rt90X",
        "rt90Y"
      ]
    }
  }
}