{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "getOrganizations",
  "description": "JSON Schema for getOrganizations response from Ribbon Health H1 API",
  "required": [
    "data",
    "parameters"
  ],
  "type": "object",
  "properties": {
    "parameters": {
      "type": "object",
      "properties": {
        "page": {
          "type": "integer",
          "description": "The page of the results which was returned.",
          "format": "int32",
          "example": 1
        },
        "page_size": {
          "type": "integer",
          "description": "How many results are in each page.",
          "format": "int32",
          "example": 25
        },
        "total_count": {
          "type": "integer",
          "description": "The total number of results matched, across all pages.",
          "format": "int32",
          "example": 141
        },
        "sort_by": {
          "type": "string",
          "description": "The main criteria used to sort results in the record set.",
          "example": "distance"
        },
        "distance": {
          "type": "integer",
          "description": "The proximity radius of locations returned.",
          "format": "int32",
          "example": 10
        },
        "geo": {
          "type": "object",
          "properties": {
            "latitude": {
              "type": "number",
              "description": "The latitude the search was focused on.",
              "example": 40.7351327
            },
            "longitude": {
              "type": "number",
              "description": "The longitude the search was focused on.",
              "example": -73.9881657
            }
          }
        },
        "address": {
          "type": "string",
          "description": "String input of an address that will be interpreted and geocoded in real time.",
          "nullable": true,
          "example": "Jacksonville, FL, USA"
        },
        "name": {
          "type": "string",
          "description": "String input that is fuzzy matched to against the `organization.name` field.",
          "example": "baptist"
        }
      }
    },
    "data": {
      "type": "array",
      "description": "",
      "items": {
        "type": "object",
        "properties": {
          "uuid": {
            "type": "string",
            "description": "A UUID uniquely identifying this organization",
            "format": "uuid",
            "example": "a1dbf998-a65b-4780-8361-648357785d96"
          },
          "name": {
            "type": "string",
            "example": "Baptist Health (Jacksonville)"
          },
          "organization_types": {
            "type": "array",
            "description": "The types of this organization. We currently only support `Health System` organizations, but plan to expand this in the future",
            "items": {
              "type": "string",
              "enum": [
                "Health System"
              ],
              "x-enum-elements": [
                {
                  "name": "Enum_Health System",
                  "description": ""
                }
              ]
            }
          },
          "websites": {
            "type": "array",
            "description": "Website(s) of this organization",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "type": "string",
                  "example": "https://www.baptistjax.com/"
                }
              }
            }
          },
          "ids": {
            "type": "array",
            "description": "",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "example": "5"
                },
                "id_type": {
                  "type": "string",
                  "example": "AHA_ID"
                }
              }
            }
          },
          "address": {
            "type": "string",
            "example": "841 Prudential Dr # 1601, Jacksonville, FL 32207, US"
          },
          "address_details": {
            "type": "object",
            "properties": {
              "zip": {
                "type": "string",
                "example": "32207"
              },
              "city": {
                "type": "string",
                "example": "Jacksonville"
              },
              "state": {
                "type": "string",
                "example": "FL"
              },
              "street": {
                "type": "string",
                "example": "841 Prudential Dr # 1601"
              },
              "address_line_1": {
                "type": "string",
                "example": "841 Prudential Dr"
              },
              "address_line_2": {
                "type": "string",
                "example": "# 1601"
              }
            }
          },
          "latitude": {
            "type": "number",
            "example": 30.3159499
          },
          "longitude": {
            "type": "number",
            "example": 81.6630919
          },
          "phone_numbers": {
            "type": "array",
            "description": "",
            "items": {
              "type": "object",
              "properties": {
                "phone": {
                  "type": "string",
                  "example": "9042022000"
                },
                "detail": {
                  "type": "string",
                  "example": "primary"
                }
              }
            }
          }
        }
      }
    }
  }
}