Visma Idella BV public resources, OpenAPI and other SCHEMA specifications
π€ [Visma Idella][info@visma-idella.nl]
This repository contains the data contracts for the VIPS product lines. It serves as the source of truth for the public-facing APIs and events, structured by product line.
This repository is the central location for all data contracts related to the VIPS product lines. It is designed to be the single source of truth that drives consistency across our services. The repository is organized by product line, with each line containing its own set of json-schemas, open-api, and cloudevents definitions.
The repository is organized by product line, starting with pensions. Each product line folder contains subfolders for the different types of contracts:
/
βββ pensions/
βββ json-schemas/
β βββ generic/
β β βββ name-of-the-entity/
β β βββ 1.0.0/
β β βββ name-of-the-entity.schema.json
β β βββ name-of-the-entity.example.json
β βββ microservice-a/
β βββ name-of-the-entity/
β βββ 1.0.0/
β βββ name-of-the-entity.schema.json
β βββ name-of-the-entity.example.json
βββ open-api/
β βββ name-of-the-api/
β βββ v1.0/
β β βββ name-of-the-api.oas.yaml
β βββ v1.1/
β β βββ name-of-the-api.oas.yaml
β βββ v2.0/
β βββ name-of-the-api.oas.yaml
βββ cloudevents/
βββ internal-events/
β βββ group-name/
β βββ v1.0/
β β βββ entity-name-data.schema.json
β β βββ entity-name-data.simple-example.json
β β βββ entity-name-data.complex-example.json
β βββ v1.1/
β β βββ entity-name-data.schema.json
β β βββ entity-name-data.simple-example.json
β βββ v2.0/
β βββ entity-name-data.schema.json
β βββ entity-name-data.simple-example.json
β βββ entity-name-data.complex-example.json
βββ external-events/
βββ external-group-name/
βββ v1.0/
βββ entity-name-data.schema.json
βββ entity-name-data.simple-example.json
βββ entity-name-data.complex-example.json
All contracts within this repository adhere to the following standards:
- File and Folder Naming: All file and folder names use
kebab-case. - JSON Schema Properties: Properties are written in
lower_snake_case. - Enums: Enum values are written in
UPPER_SNAKE_CASE. - OpenAPI Version: All
open-apispecifications are written in OAS 3.1. - JSON Schema Versioning: For
json-schemas, each entity has its own folder. Inside, a subfolder for each semantic version (e.g.,1.0.0) contains thename-of-the-entity.schema.jsonand a correspondingname-of-the-entity.example.jsonfile. - Grouping of JSON Schemas: json-schemas are grouped based on the microservice that is the source of truth for them