Guidewire · Schema

Guidewire Policy

JSON Schema for a Guidewire PolicyCenter insurance policy including coverages, insured parties, and premium information.

InsurancePolicyClaimsBillingP&C

Properties

Name Type Description
id string Guidewire PublicID for the policy
policyNumber string Human-readable policy number
status string Current policy status
product string Insurance product type (e.g., BusinessOwners, CommercialProperty, PersonalAuto)
effectiveDate string Policy effective date
expirationDate string Policy expiration date
issuedDate string Date policy was issued
totalPremium number Total annual premium amount
currency string
account object
insured object
coverages array
createdDate string
updatedDate string
View JSON Schema on GitHub

JSON Schema

guidewire-policy-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://api-evangelist.github.io/guidewire/json-schema/guidewire-policy-schema.json",
  "title": "Guidewire Policy",
  "description": "JSON Schema for a Guidewire PolicyCenter insurance policy including coverages, insured parties, and premium information.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Guidewire PublicID for the policy"
    },
    "policyNumber": {
      "type": "string",
      "description": "Human-readable policy number"
    },
    "status": {
      "type": "string",
      "enum": ["In Force", "Expired", "Cancelled", "Pending Cancelled"],
      "description": "Current policy status"
    },
    "product": {
      "type": "string",
      "description": "Insurance product type (e.g., BusinessOwners, CommercialProperty, PersonalAuto)"
    },
    "effectiveDate": {
      "type": "string",
      "format": "date",
      "description": "Policy effective date"
    },
    "expirationDate": {
      "type": "string",
      "format": "date",
      "description": "Policy expiration date"
    },
    "issuedDate": {
      "type": "string",
      "format": "date",
      "description": "Date policy was issued"
    },
    "totalPremium": {
      "type": "number",
      "minimum": 0,
      "description": "Total annual premium amount"
    },
    "currency": {
      "type": "string",
      "default": "USD",
      "pattern": "^[A-Z]{3}$"
    },
    "account": { "$ref": "#/$defs/AccountRef" },
    "insured": { "$ref": "#/$defs/ContactRef" },
    "coverages": {
      "type": "array",
      "items": { "$ref": "#/$defs/Coverage" }
    },
    "createdDate": {
      "type": "string",
      "format": "date-time"
    },
    "updatedDate": {
      "type": "string",
      "format": "date-time"
    }
  },
  "required": ["id", "policyNumber", "status", "product", "effectiveDate"],
  "$defs": {
    "AccountRef": {
      "type": "object",
      "properties": {
        "id": { "type": "string" },
        "accountNumber": { "type": "string" },
        "name": { "type": "string" }
      },
      "required": ["id"]
    },
    "ContactRef": {
      "type": "object",
      "properties": {
        "id": { "type": "string" },
        "displayName": { "type": "string" }
      },
      "required": ["id"]
    },
    "Coverage": {
      "type": "object",
      "description": "An insurance coverage line on the policy",
      "properties": {
        "id": { "type": "string" },
        "type": {
          "type": "string",
          "description": "Coverage type code (e.g., 'BOPBuildingCov', 'BOPBusinessPersonalPropertyCov')"
        },
        "limit": {
          "type": "number",
          "minimum": 0,
          "description": "Coverage limit in policy currency"
        },
        "deductible": {
          "type": "number",
          "minimum": 0,
          "description": "Coverage deductible amount"
        },
        "premium": {
          "type": "number",
          "minimum": 0,
          "description": "Premium attributable to this coverage"
        },
        "description": {
          "type": "string"
        },
        "terms": {
          "type": "array",
          "items": { "$ref": "#/$defs/CoverageTerm" }
        }
      },
      "required": ["id", "type"]
    },
    "CoverageTerm": {
      "type": "object",
      "description": "A specific term or condition on a coverage",
      "properties": {
        "id": { "type": "string" },
        "name": { "type": "string" },
        "value": { "type": "string" }
      }
    }
  }
}