Baloise · Schema
Contract
CompanyInsuranceFinancial ServicesSwitzerlandOpen SourceAPI GovernanceSpectralLinting
Properties
| Name | Type | Description |
|---|---|---|
| creationDate | string | The day the contract was issued |
| startDate | string | Start of contract which means start of insurance coverage |
| endDate | string | End of contract which means end of insurance coverage |
| totalNetPrice | object | |
| roles | array | All roles in the contract, e.g. insuranceHolder |
| product | object | |
| agent | object | |
| fileHandles | array | A contract is only complete with its corresponding documents. This is the contract issued by the SaaS provider and maybe some further documents like e.g. customer provided documents like e.g. receipts |
| stampTaxCode | integer | The tax stamp code for this contract |
| termsOfService | object | |
| action | object | |
| identifier | object | |
| payment | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/baloise/main/json-schema/baloise-contract-schema.json",
"title": "Contract",
"x-generated": "2026-10-09",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/baloise-corellia-contracts-openapi.yml#/components/schemas/Contract",
"required": [
"action",
"creationDate",
"endDate",
"fileHandles",
"identifier",
"payment",
"product",
"roles",
"stampTaxCode",
"startDate",
"termsOfService",
"totalNetPrice"
],
"type": "object",
"properties": {
"creationDate": {
"type": "string",
"description": "The day the contract was issued",
"format": "date"
},
"startDate": {
"type": "string",
"description": "Start of contract which means start of insurance coverage",
"format": "date"
},
"endDate": {
"type": "string",
"description": "End of contract which means end of insurance coverage",
"format": "date"
},
"totalNetPrice": {
"$ref": "#/$defs/MonetaryAmount"
},
"roles": {
"maxItems": 99,
"minItems": 1,
"type": "array",
"description": "All roles in the contract, e.g. insuranceHolder",
"items": {
"$ref": "#/$defs/Role"
}
},
"product": {
"$ref": "#/$defs/Product"
},
"agent": {
"$ref": "#/$defs/Agent"
},
"fileHandles": {
"maxItems": 2,
"minItems": 0,
"type": "array",
"description": "A contract is only complete with its corresponding documents. This is the contract issued by the SaaS provider and maybe some further documents like e.g. customer provided documents like e.g. receipts. At least one contract document is required. In case of migration contracts zero documents are accepted.",
"items": {
"$ref": "#/$defs/FileHandle"
}
},
"stampTaxCode": {
"type": "integer",
"description": "The tax stamp code for this contract",
"format": "int32"
},
"termsOfService": {
"$ref": "#/$defs/TermsOfService"
},
"action": {
"$ref": "#/$defs/Action"
},
"identifier": {
"$ref": "#/$defs/Identifier"
},
"payment": {
"$ref": "#/$defs/Payment"
}
},
"$defs": {
"Action": {
"required": [
"reason",
"type"
],
"type": "object",
"properties": {
"type": {
"type": "integer",
"description": "The type of the action",
"format": "int32"
},
"reason": {
"type": "integer",
"description": "The reason for this type",
"format": "int32"
},
"effective": {
"type": "string",
"description": "The date when this change should be effective",
"format": "date"
}
}
},
"Address": {
"required": [
"city",
"houseNumber",
"street",
"zipCode"
],
"type": "object",
"properties": {
"sequentialAddressNumber": {
"type": "integer",
"description": "The sequential address number within the Baloise internal partner system.",
"format": "int32"
},
"street": {
"maxLength": 35,
"minLength": 0,
"type": "string"
},
"houseNumber": {
"maxLength": 10,
"minLength": 0,
"type": "string"
},
"zipCode": {
"maxLength": 4,
"minLength": 4,
"type": "string"
},
"city": {
"maxLength": 30,
"minLength": 0,
"type": "string"
}
}
},
"Agent": {
"required": [
"agentNumber"
],
"type": "object",
"properties": {
"agentNumber": {
"maxLength": 8,
"minLength": 0,
"type": "string",
"description": "Identification of an Agent"
},
"email": {
"maxLength": 70,
"minLength": 2,
"type": "string",
"description": "A valid email adress"
}
},
"description": "The agent who induced the contract issuance, usually is eligible for receiving commission"
},
"Company": {
"type": "object",
"properties": {
"name": {
"maxLength": 70,
"minLength": 3,
"type": "string",
"description": "Required when partnerNr not set!"
},
"uidNumber": {
"maxLength": 15,
"minLength": 0,
"type": "string",
"description": "Identifies a company uniquely, example CHE-105.805.649"
},
"legalForm": {
"maxLength": 2,
"minLength": 2,
"type": "string",
"description": "Identifies the legal form of the company by CrediReform codes. Has to be provided if UID is missing.",
"enum": [
"PRIVATPERSON",
"EINZELUNTERNEHMEN",
"GEWERBEBETRIEB",
"EINFACHE_GESELLSCHAFT",
"KOLLEKTIVGESELLSCHAFT",
"KOMMANDITGESELLSCHAFT",
"TREUHAENDERSCHAFT_TREUUNTERNEHMEN",
"ERBENGEMEINSCHAFT",
"EUROPAEISCHE_GESELLSCHAFT",
"GENOSSENSCHAFT",
"AKTIENGESELLSCHAFT",
"KOMMANDIT_AKTIENGESELLSCHAFT",
"GMBH",
"STIFTUNG",
"VEREIN",
"ANSTALT_LI",
"FORMLOSER_BERICHT",
"ZWEIGNIEDERL_AUSLAEND_GESELLSCH",
"INSTITUT_DES_OEFFENTL_RECHTS"
]
},
"contactSalutation": {
"type": "string",
"description": "A contact is a person representing the company. Required when partnerNr not set!",
"enum": [
"Mr",
"Mrs"
]
},
"contactLastName": {
"maxLength": 35,
"minLength": 2,
"type": "string",
"description": "A contact is a person representing the company. Required when partnerNr not set!"
},
"contactFirstName": {
"maxLength": 35,
"minLength": 2,
"type": "string",
"description": "A contact is a person representing the company. Required when partnerNr not set!"
},
"address": {
"$ref": "#/$defs/Address"
},
"partnerNr": {
"type": "integer",
"description": "The PartnerNr of the partner.",
"format": "int32"
}
}
},
"Coverable": {
"required": [
"code",
"coverages"
],
"type": "object",
"properties": {
"code": {
"type": "integer",
"description": "A code uniquely identifying a type of coverable",
"format": "int32"
},
"riskLocation": {
"$ref": "#/$defs/Address"
},
"coverages": {
"maxItems": 99,
"minItems": 1,
"type": "array",
"items": {
"$ref": "#/$defs/Coverage"
}
}
}
},
"Coverage": {
"required": [
"code",
"premium",
"sumInsured"
],
"type": "object",
"properties": {
"code": {
"type": "integer",
"description": "A code uniquely identifying a type of coverage",
"format": "int32"
},
"premium": {
"$ref": "#/$defs/MonetaryAmount"
},
"deductible": {
"$ref": "#/$defs/MonetaryAmount"
},
"sumInsured": {
"$ref": "#/$defs/MonetaryAmount"
},
"measurandType": {
"type": "integer",
"format": "int32"
},
"measurandValue": {
"$ref": "#/$defs/MonetaryAmount"
},
"discountType": {
"type": "integer",
"format": "int32"
},
"discountValue": {
"$ref": "#/$defs/MonetaryAmount"
},
"extraChargeType": {
"type": "integer",
"format": "int32"
},
"extraChargeValue": {
"$ref": "#/$defs/MonetaryAmount"
}
}
},
"FileHandle": {
"required": [
"handle"
],
"type": "object",
"properties": {
"handle": {
"type": "string",
"description": "Reference to an uploaded document. This can be a PDF or a picture (e.g. JPG) of a contract or a purchase receipt."
}
}
},
"Identifier": {
"required": [
"id",
"type"
],
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Id depending on the type."
},
"type": {
"type": "string",
"description": "The type of the id. EXT or INT.",
"enum": [
"INT",
"EXT"
]
}
}
},
"MonetaryAmount": {
"required": [
"amount"
],
"type": "object",
"properties": {
"amount": {
"type": "number",
"description": "An amount with two decimal digit like an insured sum or a deductible (e.g. 100,22)."
}
}
},
"Payment": {
"required": [
"code",
"recurringType"
],
"type": "object",
"properties": {
"code": {
"type": "integer",
"description": "A code uniquely identifying the type of payment e.g. invoice or creditcard, Paypal etc.",
"format": "int32"
},
"recurringType": {
"type": "integer",
"description": "The recurring type code.",
"format": "int32"
},
"dueDate": {
"type": "string",
"description": "The due date for the recurring type",
"format": "date"
}
}
},
"Person": {
"type": "object",
"properties": {
"salutation": {
"type": "string",
"description": "Required when partnerNr not set!",
"enum": [
"Mr",
"Mrs"
]
},
"lastName": {
"maxLength": 35,
"minLength": 2,
"type": "string",
"description": "Required when partnerNr not set!"
},
"firstName": {
"maxLength": 35,
"minLength": 2,
"type": "string",
"description": "Required when partnerNr not set!"
},
"dateOfBirth": {
"type": "string",
"format": "date"
},
"phoneNumber": {
"$ref": "#/$defs/PhoneNumber"
},
"emailAddress": {
"maxLength": 70,
"minLength": 2,
"type": "string",
"description": "A valid email address"
},
"language": {
"maxLength": 2,
"minLength": 2,
"type": "string",
"description": "The language for correspondence with the customer. According to ISO 639-1 language codes, only the values 'de', 'fr', 'it' or 'en' are accepted. Required when partnerNr not set!"
},
"address": {
"$ref": "#/$defs/Address"
},
"partnerNr": {
"type": "integer",
"description": "The PartnerNr of the partner.",
"format": "int32"
}
}
},
"PhoneNumber": {
"required": [
"phoneNumber"
],
"type": "object",
"properties": {
"countryCode": {
"type": "string",
"description": "Country code, default is +41."
},
"phoneNumber": {
"maxLength": 20,
"minLength": 5,
"type": "string",
"description": "Phone number, without the leading zero."
}
}
},
"Product": {
"required": [
"code",
"coverables",
"pricingMonthYear"
],
"type": "object",
"properties": {
"code": {
"type": "integer",
"description": "A code uniquely identifying the product",
"format": "int32"
},
"pricingMonthYear": {
"maxLength": 4,
"minLength": 4,
"type": "string",
"description": "The month/year in which the pricing for the contract was set. Format MMYY"
},
"coverables": {
"maxItems": 99,
"minItems": 1,
"type": "array",
"items": {
"$ref": "#/$defs/Coverable"
}
}
}
},
"Role": {
"required": [
"role"
],
"type": "object",
"properties": {
"role": {
"type": "string",
"enum": [
"insuranceholder",
"payer"
]
},
"person": {
"$ref": "#/$defs/Person"
},
"company": {
"$ref": "#/$defs/Company"
}
}
},
"TermsOfService": {
"required": [
"edition",
"type"
],
"type": "object",
"properties": {
"type": {
"type": "integer",
"description": "The type of service terms",
"format": "int32"
},
"edition": {
"type": "integer",
"description": "The edition of the service terms",
"format": "int32"
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/baloise-contract"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.