openapi: "3.0.3" info: title: RegelRecht Engine API version: 0.0.1 servers: - url: https://rvig-engine.bzlg.apps.digilab.network/v0 description: Production server (Fictief RvIG) - url: https://bd-engine.bzlg.apps.digilab.network/v0 description: Production server (Fictieve Belastingdienst) - url: https://toeslagen-engine.bzlg.apps.digilab.network/v0 description: Production server (Fictieve Dienst Toeslagen) - url: https://uwv-engine.bzlg.apps.digilab.network/v0 description: Production server (Fictief UWV) - url: https://rvz-engine.bzlg.apps.digilab.network/v0 description: Production server (Fictief Register Zorgverzekeringen) - url: https://svb-engine.bzlg.apps.digilab.network/v0 description: Production server (Fictieve Sociale Verzekeringsbank) - url: https://ind-engine.bzlg.apps.digilab.network/v0 description: Production server (Fictieve IND) - url: https://vws-engine.bzlg.apps.digilab.network/v0 description: Production server (Fictief Ministerie van VWS) - url: http://rvig-engine.127-0-0-1.nip.io:8080/v0 description: Local development server (Fictief RvIG) - url: http://bd-engine.127-0-0-1.nip.io:8080/v0 description: Local development server (Fictieve Belastingdienst) - url: http://toeslagen-engine.127-0-0-1.nip.io:8080/v0 description: Local development server (Fictieve Dienst Toeslagen) - url: http://uwv-engine.127-0-0-1.nip.io:8080/v0 description: Local development server (Fictief UWV) - url: http://rvz-engine.127-0-0-1.nip.io:8080/v0 description: Local development server (Fictief Register Zorgverzekeringen) - url: http://svb-engine.127-0-0-1.nip.io:8080/v0 description: Local development server (Fictieve Sociale Verzekeringsbank) - url: http://ind-engine.127-0-0-1.nip.io:8080/v0 description: Local development server (Fictieve IND) - url: http://vws-engine.127-0-0-1.nip.io:8080/v0 description: Local development server (Fictief Ministerie van VWS) tags: - name: Law - name: Profile - name: Claim - name: Case paths: /evaluate: post: tags: - Law description: Evaluate the law operationId: evaluate requestBody: $ref: "#/components/requestBodies/EvaluateRequest" responses: "201": $ref: "#/components/responses/ResponseEvaluate" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /profiles: get: tags: - Profile description: Get all profiles operationId: profileList parameters: - $ref: "#/components/parameters/queryEffectiveDate" responses: "200": $ref: "#/components/responses/ResponseProfileList" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /profiles/{bsn}: get: tags: - Profile description: Get all profiles operationId: profileGet parameters: - $ref: "#/components/parameters/pathBSN" - $ref: "#/components/parameters/queryEffectiveDate" responses: "200": $ref: "#/components/responses/ProfileResponse" "400": $ref: "#/components/responses/BadRequestErrorResponse" "404": $ref: "#/components/responses/ResourceNotFoundErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /discoverable-service-laws: get: tags: - Law description: Get all discoverable service & laws operationId: serviceLawsDiscoverableList parameters: - $ref: "#/components/parameters/queryDiscoverableBy" responses: "200": $ref: "#/components/responses/ServiceListResponse" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /rule-spec: get: tags: - Law description: Get rule spec operationId: ruleSpecGet parameters: - $ref: "#/components/parameters/queryService" - $ref: "#/components/parameters/queryLaw" - $ref: "#/components/parameters/queryReferenceDate" responses: "200": $ref: "#/components/responses/RuleSpecResponse" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /claims: post: tags: - Claim summary: Submit a new claim description: Submit a new claim. Can be linked to an existing case or standalone. If autoApprove is true, the claim will be automatically approved. operationId: ClaimSubmit requestBody: $ref: "#/components/requestBodies/ClaimSubmitRequest" responses: "201": $ref: "#/components/responses/ResponseClaimSubmit" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /claims/{claimId}/reject: post: tags: - Claim summary: Reject a claim description: Reject a claim with reason operationId: ClaimReject parameters: - $ref: "#/components/parameters/pathClaimID" requestBody: $ref: "#/components/requestBodies/ClaimRejectRequest" responses: "200": $ref: "#/components/responses/ResponseClaimReject" "400": $ref: "#/components/responses/BadRequestErrorResponse" "404": $ref: "#/components/responses/ResourceNotFoundErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /claims/{claimId}/approve: post: tags: - Claim summary: Approve a claim description: Approve a claim with verified value operationId: claimApprove parameters: - $ref: "#/components/parameters/pathClaimID" requestBody: $ref: "#/components/requestBodies/ClaimApproveRequest" responses: "200": $ref: "#/components/responses/ResponseClaimApprove" "400": $ref: "#/components/responses/BadRequestErrorResponse" "404": $ref: "#/components/responses/ResourceNotFoundErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /claims/{bsn}: get: tags: - Claim description: Get all claims parameters: - $ref: "#/components/parameters/pathBSN" - $ref: "#/components/parameters/queryOnlyApproved" - $ref: "#/components/parameters/queryIncludeRejected" operationId: claimListBasedOnBSN responses: "200": $ref: "#/components/responses/ClaimListResponse" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /claims/{bsn}/{service}/{law}: get: tags: - Claim description: Get all claims parameters: - $ref: "#/components/parameters/pathBSN" - $ref: "#/components/parameters/pathService" - $ref: "#/components/parameters/pathLaw" - $ref: "#/components/parameters/queryOnlyApproved" - $ref: "#/components/parameters/queryIncludeRejected" operationId: claimListBasedOnBSNServiceLaw responses: "200": $ref: "#/components/responses/ClaimListWithKeyResponse" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /case: post: tags: - Case description: Submit a case operationId: caseSubmit requestBody: $ref: "#/components/requestBodies/CaseSubmitRequest" responses: "201": $ref: "#/components/responses/ResponseCaseSubmit" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /case/{caseID}: get: tags: - Case description: Get a case based on a case id parameters: - $ref: "#/components/parameters/pathCaseID" operationId: caseGet responses: "200": $ref: "#/components/responses/ResponseCase" "400": $ref: "#/components/responses/BadRequestErrorResponse" "404": $ref: "#/components/responses/ResourceNotFoundErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /cases/{caseID}/review: post: summary: Complete a manual review for a case description: Submit a verification decision for a case that requires manual review operationId: caseReview tags: - Case parameters: - $ref: "#/components/parameters/pathCaseID" requestBody: $ref: "#/components/requestBodies/CaseReviewRequest" responses: "200": $ref: "#/components/responses/ResponseCaseReview" "400": $ref: "#/components/responses/BadRequestErrorResponse" "404": $ref: "#/components/responses/ResourceNotFoundErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /cases/{caseID}/object: post: summary: Object to a decision on a case description: Submit a objection to a decision of a case operationId: caseObject tags: - Case parameters: - $ref: "#/components/parameters/pathCaseID" requestBody: $ref: "#/components/requestBodies/CaseObjectRequest" responses: "200": $ref: "#/components/responses/ResponseCaseObject" "400": $ref: "#/components/responses/BadRequestErrorResponse" "404": $ref: "#/components/responses/ResourceNotFoundErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /cases/{bsn}: get: tags: - Case description: Get all cases based on a bsn parameters: - $ref: "#/components/parameters/pathBSN" operationId: caseListBasedOnBSN responses: "200": $ref: "#/components/responses/ResponseCaseList" "400": $ref: "#/components/responses/BadRequestErrorResponse" "404": $ref: "#/components/responses/ResourceNotFoundErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /cases/{bsn}/{service}/{law}: get: tags: - Case description: Get a case based on bsn, service and law parameters: - $ref: "#/components/parameters/pathBSN" - $ref: "#/components/parameters/pathService" - $ref: "#/components/parameters/pathLaw" operationId: caseBasedOnBSNServiceLaw responses: "200": $ref: "#/components/responses/ResponseCase" "400": $ref: "#/components/responses/BadRequestErrorResponse" "404": $ref: "#/components/responses/ResourceNotFoundErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /cases/{service}/{law}: get: tags: - Case description: Get all cases based on service and law parameters: - $ref: "#/components/parameters/pathService" - $ref: "#/components/parameters/pathLaw" operationId: caseListBasedOnServiceLaw responses: "200": $ref: "#/components/responses/ResponseCaseList" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /case/{caseID}/events: get: tags: - Case - Events description: Get a list of events based on a case id parameters: - $ref: "#/components/parameters/pathCaseID" operationId: eventListBasedOnCaseID responses: "200": $ref: "#/components/responses/ResponseEventList" "400": $ref: "#/components/responses/BadRequestErrorResponse" "404": $ref: "#/components/responses/ResourceNotFoundErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /events: get: tags: - Events description: Get a list of events operationId: eventList responses: "200": $ref: "#/components/responses/ResponseEventList" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /engine/reset: post: summary: Reset the engine description: Resets the entire engine, clearing all data and returning it to its initial state operationId: resetEngine tags: - Engine responses: "201": $ref: "#/components/responses/EmptyResponse" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" /source-dataframe: post: summary: Set a source data frame description: Inserts data into the engine by setting a source data frame for a specific service and table operationId: setSourceDataFrame tags: - DataFrames requestBody: $ref: "#/components/requestBodies/DataFrameRequest" responses: "201": $ref: "#/components/responses/EmptyResponse" "400": $ref: "#/components/responses/BadRequestErrorResponse" "500": $ref: "#/components/responses/InternalServerErrorResponse" components: schemas: bsn: description: Burgerservicenummer of a Dutch citizen type: string pattern: "^[0-9]{9}$" example: "111222333" caseID: description: Identifier of a case type: string format: uuid claimID: description: Identifier of a claim type: string format: uuid discoverableBy: description: DiscoverableBy is a string that can be used to filter lists type: string example: CITIZEN referenceDate: description: reference date type: string format: date example: 2025-01-31 Error: description: The error that occured while processing this request. type: object properties: message: type: string example: foo went wrong required: - message Evaluate: description: Evaluate. type: object properties: service: type: string description: Specify the service that needs to be executed law: type: string description: Specify the law that needs to be executed parameters: type: object additionalProperties: true effectiveDate: type: string format: date description: Can be used to set the effective execution date example: "2025-01-31" referenceDate: type: string format: date description: Can be used to set the reference date of data example: "2025-01-31" input: type: object additionalProperties: true output: type: string description: specify a requested output value approved: type: boolean description: only use approved claims, default to true required: - service - law example: service: "TOESLAGEN" law: "zorgtoeslagwet" parameters: { "BSN": "100000001" } ResponseEvaluateSchema: description: Evaluate response type: object properties: output: type: object additionalProperties: true example: "hoogte_toeslag": 123456 "is_verzekerde_zorgtoeslag": true input: type: object additionalProperties: true example: "$DREMPELINKOMEN_ALLEENSTAANDE": 3971900, "$HEEFT_PARTNER": false, "$INKOMEN": 1234500, "$IS_VERZEKERDE": true, "$LEEFTIJD": 35, "$MINIMUM_LEEFTIJD": 18, "$PERCENTAGE_DREMPELINKOMEN_ALLEENSTAAND": 0.01896, "$STANDAARDPREMIE": 211200, "$VERMOGEN": 123400, "$VERMOGENSGRENS_ALLEENSTAANDE": 14189600, "$prev_january_first": "2024-01-01" requirementsMet: type: boolean description: Will be true when all requirements where met rulespecId: type: string format: uuid description: Identifier of the rulespec missingRequired: type: boolean description: Will be true when a required value is missing example: false path: $ref: "#/components/schemas/PathNode" required: - output - input - requirementsMet - rulespecId - missingRequired - path PathNode: description: path node type: object properties: type: type: string name: type: string result: {} resolveType: type: string required: type: boolean details: type: object additionalProperties: true children: type: array items: $ref: "#/components/schemas/PathNode" required: - type - name Profile: description: Profile type: object properties: bsn: $ref: "#/components/schemas/bsn" name: type: string description: Name of the burger description: type: string description: Description of the burger sources: type: object description: All sources for a certain profile additionalProperties: $ref: "#/components/schemas/Source" required: - bsn - name - description - sources ProfileList: description: List of all burgers type: array items: $ref: "#/components/schemas/Profile" Source: type: object description: A source additionalProperties: type: array items: type: object additionalProperties: true # 'any' type is not directly supported, using 'object' as a close representation Service: description: Service type: object properties: name: type: string description: Service name laws: type: array items: $ref: "#/components/schemas/Law" required: - name - laws example: name: BELASTINGDIENST laws: - name: wet_inkomstenbelasting discoverableBy: - CITIZEN Law: description: Law type: object properties: name: type: string description: Name of the law discoverableBy: type: array description: Who can discover this law items: type: string required: - name - discoverableBy example: name: wet_inkomstenbelasting discoverableBy: - CITIZEN ServiceList: description: List of all services type: array items: $ref: "#/components/schemas/Service" RuleSpec: type: object required: - uuid - name - law - valid_from - service - description - properties properties: uuid: type: string format: uuid description: Unique identifier for the rule specification name: type: string description: Name of the rule specification law: type: string description: Associated law reference law_type: type: string nullable: true description: Type of law legal_character: type: string nullable: true description: Legal character of the rule decision_type: type: string nullable: true description: Type of decision discoverable: type: string nullable: true description: Discoverability setting valid_from: type: string format: date-time description: Date from which the rule is valid service: type: string description: Associated service identifier description: type: string description: Description of the rule specification references: type: array items: $ref: "#/components/schemas/Reference" description: Legal references properties: $ref: "#/components/schemas/Properties" requirements: type: array items: $ref: "#/components/schemas/Requirement" description: Requirements for the rule actions: type: array items: $ref: "#/components/schemas/Action" description: Actions associated with the rule Reference: type: object required: - law - article - url properties: law: type: string description: Law reference article: type: string description: Article reference url: type: string format: uri description: URL to the legal reference Properties: type: object properties: parameters: type: array items: $ref: "#/components/schemas/ParameterField" description: Parameter fields sources: type: array items: $ref: "#/components/schemas/SourceField" description: Source fields input: type: array items: $ref: "#/components/schemas/InputField" description: Input fields output: type: array items: $ref: "#/components/schemas/OutputField" description: Output fields definitions: type: object additionalProperties: true description: Additional definitions applies: type: array items: $ref: "#/components/schemas/Apply" description: Application rules Apply: type: object required: - name - aggregate - events - update properties: name: type: string description: Name of the application rule aggregate: type: string description: Aggregate identifier events: type: array items: $ref: "#/components/schemas/ApplyEvent" description: Associated events update: type: array items: $ref: "#/components/schemas/Update" description: Update rules ApplyEvent: type: object required: - type - filter properties: type: type: string description: Event type filter: type: object additionalProperties: true description: Event filter criteria Update: type: object required: - method - mapping properties: method: type: string description: Update method mapping: type: object additionalProperties: type: string description: Field mapping configuration BaseField: type: object required: - name - description - type properties: name: type: string description: Field name description: type: string description: Field description type: type: string description: Field type type_spec: $ref: "#/components/schemas/TypeSpec" temporal: $ref: "#/components/schemas/Temporal" required: type: boolean nullable: true description: Whether the field is required TypeSpec: type: object properties: type: type: string description: Specific type definition unit: type: string nullable: true description: Unit of measurement precision: type: integer nullable: true description: Precision for numeric types min: type: number format: double nullable: true description: Minimum value max: type: number format: double nullable: true description: Maximum value required: - type Temporal: type: object required: - type properties: type: type: string description: Temporal type period_type: type: string nullable: true description: Period type specification reference: description: Reference (can be string or VariableReference) type: string nullable: true immutable_after: type: string nullable: true description: Immutability rule ParameterField: allOf: - $ref: "#/components/schemas/BaseField" description: Parameter field extending BaseField SourceField: allOf: - $ref: "#/components/schemas/BaseField" - type: object properties: source_reference: $ref: "#/components/schemas/SourceReference" service_reference: $ref: "#/components/schemas/ServiceReference" description: Source field extending BaseField InputField: allOf: - $ref: "#/components/schemas/BaseField" - type: object required: - service_reference properties: service_reference: $ref: "#/components/schemas/ServiceReference" description: Input field extending BaseField OutputField: allOf: - $ref: "#/components/schemas/BaseField" - type: object required: - citizen_relevance properties: citizen_relevance: type: string description: Output field extending BaseField SourceReference: type: object properties: source_type: type: string description: Type of the data source table: type: string description: Table name in the source field: type: string nullable: true description: Specific field to reference fields: type: array items: type: string nullable: true description: Multiple fields to reference select_on: type: array items: $ref: "#/components/schemas/SelectField" description: Selection criteria wallet_attribute: type: string description: "Name of the wallet attribute on a claim" SelectField: type: object required: - name - description - type - value properties: name: type: string description: Field name description: type: string description: Field description type: type: string description: Field type value: $ref: "#/components/schemas/ActionValue" ServiceReference: type: object required: - service - field - law properties: service: type: string description: Referenced service identifier field: type: string description: Field in the referenced service law: type: string description: Associated law parameters: type: array items: $ref: "#/components/schemas/Parameter" description: Service parameters Parameter: type: object required: - name - reference properties: name: type: string description: Parameter name reference: type: string description: Parameter reference Action: type: object required: - output properties: output: type: string description: Action output value: $ref: "#/components/schemas/ActionValue" operation: type: string nullable: true description: Operation to perform subject: type: string nullable: true description: Subject of the action unit: type: string nullable: true description: Unit for the action combine: type: string nullable: true description: Combination method values: $ref: "#/components/schemas/ActionValues" conditions: type: array items: $ref: "#/components/schemas/Condition" description: Conditional logic ActionValue: description: Represents a value in an operation (can be a primitive value or nested action) oneOf: - $ref: "#/components/schemas/Action" - {} ActionValues: description: Represents multiple values or a single value oneOf: - type: array items: $ref: "#/components/schemas/ActionValue" - {} Condition: type: object properties: test: $ref: "#/components/schemas/Action" then: $ref: "#/components/schemas/ActionValue" else: $ref: "#/components/schemas/ActionValue" description: Conditional logic with test, then, and optional else Requirement: type: object properties: all: type: array items: $ref: "#/components/schemas/ActionRequirement" nullable: true description: All requirements must be met (AND logic) or: type: array items: $ref: "#/components/schemas/ActionRequirement" nullable: true description: Any requirement must be met (OR logic) description: Logical requirements with AND/OR operations ActionRequirement: description: Either a nested requirement or an action oneOf: - $ref: "#/components/schemas/Requirement" - $ref: "#/components/schemas/Action" Claim: description: Claim type: object properties: id: $ref: "#/components/schemas/claimID" bsn: $ref: "#/components/schemas/bsn" service: type: string description: Specify the service that needs to be executed law: type: string description: Specify the law that needs to be executed key: type: string caseId: $ref: "#/components/schemas/caseID" newValue: {} reason: type: string claimant: type: string oldValue: {} evidencePath: type: string status: type: string enum: - PENDING - APPROVED - REJECTED required: - id - service - key - newValue - reason - claimant - law - bsn - status ClaimSubmit: description: Submit a new claim type: object required: - service - key - newValue - reason - claimant - law - bsn properties: service: type: string description: Service identifier key: type: string description: Key to be claimed newValue: {} reason: type: string description: Reason for the claim claimant: type: string description: Identity of the claimant law: type: string description: Legal basis for the claim bsn: $ref: "#/components/schemas/bsn" caseId: type: string format: uuid nullable: true description: Optional identifier of the related case oldValue: {} evidencePath: type: string nullable: true description: Path to evidence supporting the claim autoApprove: type: boolean default: false description: Whether to automatically approve the claim ClaimReject: description: Reject a claim type: object required: - rejectedBy - rejectionReason properties: rejectedBy: type: string description: User that rejected the claim rejectionReason: type: string description: Reason of the rejection ClaimApprove: description: Approve a claim type: object required: - verifiedBy - verifiedValue properties: verifiedBy: type: string description: User that verified the claim verifiedValue: type: string description: Verified value for the claim ClaimList: description: List of all claims type: array items: $ref: "#/components/schemas/Claim" CaseSubmit: description: Case type: object required: - bsn - service - law - parameters - claimedResult - approvedClaimsOnly properties: bsn: $ref: "#/components/schemas/bsn" service: type: string description: Specify the service that needs to be executed law: type: string description: Specify the law that needs to be executed parameters: additionalProperties: true claimedResult: additionalProperties: true approvedClaimsOnly: type: boolean effective_date: type: string format: date example: "2025-01-31" description: The date on which the case, when accepted, should become effective. Defaults to the moment of acceptance. CaseReview: type: object required: - verifierId - approved - reason properties: verifierId: type: string description: ID of the verifier making the decision approved: type: boolean description: Decision outcome - true for approval, false for rejection reason: type: string description: Explanation for the decision CaseObject: type: object required: - reason properties: reason: type: string description: Explanation for the objection Case: description: Case type: object required: - id - bsn - service - law - parameters - claimedResult - verifiedResult - approvedClaimsOnly - rulespecId - status properties: id: $ref: "#/components/schemas/caseID" bsn: $ref: "#/components/schemas/bsn" service: type: string description: Specify the service that needs to be executed law: type: string description: Specify the law that needs to be executed parameters: additionalProperties: true claimedResult: additionalProperties: true verifiedResult: additionalProperties: true approvedClaimsOnly: type: boolean rulespecId: type: string format: uuid description: Identifier of the rulespec status: type: string enum: - SUBMITTED - DECIDED - IN_REVIEW - OBJECTED approved: type: boolean objectionStatus: $ref: "#/components/schemas/CaseObjectionStatus" appealStatus: $ref: "#/components/schemas/CaseAppealStatus" claim_ids: type: array items: type: string format: uuid CaseObjectionStatus: description: Parameters to set the objection status type: object properties: possible: type: boolean notPossibleReason: type: string objectionPeriod: type: integer decisionPeriod: type: integer extensionPeriod: type: integer admissable: type: boolean CaseAppealStatus: description: Parameters to set the objection status type: object properties: possible: type: boolean notPossibleReason: type: string appealPeriod: type: integer directAppeal: type: boolean directAppealReason: type: string competentCourt: type: string courtType: type: string CaseList: description: List of all cases type: array items: $ref: "#/components/schemas/Case" Event: description: Event type: object properties: eventType: type: string description: Type of the event data: additionalProperties: true timestamp: type: string format: date-time required: - eventType - data - timestamp EventList: description: List of all events type: array items: $ref: "#/components/schemas/Event" DataFrame: type: object required: - service - table - data properties: service: type: string table: type: string data: type: array description: Column definitions for the data frame items: additionalProperties: true example: service: CBS table: levensverwachting data: - jaar: 2025 verwachting_65: "20.5" parameters: pathBSN: name: bsn in: path description: Burgerservicenummer of a Dutch citizen required: true schema: $ref: "#/components/schemas/bsn" pathCaseID: name: caseID in: path description: Identifier of a case required: true schema: $ref: "#/components/schemas/caseID" pathClaimID: name: claimId in: path description: Identifier of a claim required: true schema: $ref: "#/components/schemas/claimID" pathService: name: service in: path description: filter for service required: true schema: type: string example: TOESLAGEN pathLaw: name: law in: path description: filter for law required: true schema: type: string example: zorgtoeslagwet queryEffectiveDate: name: effective_date in: query description: Can be used to set the effective execution date schema: type: string format: date example: "2025-01-31" required: false queryOnlyApproved: name: approved in: query description: If added to URI only approved claims will be returned. required: false schema: type: boolean example: true queryIncludeRejected: name: includeRejected in: query description: If added to URI rejected claims will be added to the return required: false schema: type: boolean example: false queryDiscoverableBy: name: discoverableBy in: query description: Filter for discoverable by, defaults to 'CITIZEN' required: false schema: $ref: "#/components/schemas/discoverableBy" queryService: name: service in: query description: filter for service required: true schema: type: string example: TOESLAGEN queryLaw: name: law in: query description: filter for law required: true schema: type: string example: zorgtoeslagwet queryReferenceDate: name: referenceDate in: query description: reference date required: true schema: $ref: "#/components/schemas/referenceDate" requestBodies: EvaluateRequest: description: An evaluation request. required: true content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/Evaluate" required: - data ClaimSubmitRequest: description: A request to submit a claim. required: true content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/ClaimSubmit" required: - data ClaimRejectRequest: description: A request to reject a claim. required: true content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/ClaimReject" required: - data ClaimApproveRequest: description: A request to approve a claim. required: true content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/ClaimApprove" required: - data CaseSubmitRequest: description: A request to submit a case. required: true content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/CaseSubmit" required: - data CaseReviewRequest: description: A request to submit a case. required: true content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/CaseReview" required: - data CaseObjectRequest: description: A request to object a case. required: true content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/CaseObject" required: - data DataFrameRequest: required: true content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/DataFrame" required: - data responses: EmptyResponse: description: Nothing needs to be returned. BadRequestErrorResponse: description: Invalid input supplied. content: application/json: schema: type: object properties: errors: type: array items: $ref: "#/components/schemas/Error" example: - message: foo went wrong required: - errors example: errors: - message: foo went wrong ResourceNotFoundErrorResponse: description: Resource not found. content: application/json: schema: type: object properties: errors: type: array items: $ref: "#/components/schemas/Error" example: - message: foo went wrong example: errors: - message: foo went wrong InternalServerErrorResponse: description: Internal server error. content: application/json: schema: type: object properties: errors: type: array items: $ref: "#/components/schemas/Error" example: - message: foo went wrong required: - errors example: errors: - message: foo went wrong ResponseEvaluate: description: Evaluate response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/ResponseEvaluateSchema" required: - data ProfileResponse: description: Profile response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/Profile" required: - data ResponseProfileList: description: Profile list response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/ProfileList" required: - data ServiceListResponse: description: Law list response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/ServiceList" required: - data RuleSpecResponse: description: Rule spec response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/RuleSpec" required: - data ResponseClaimSubmit: description: Claim submit response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/claimID" required: - data ClaimListResponse: description: Claim list response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/ClaimList" required: - data ClaimListWithKeyResponse: description: Successfully filtered claims content: application/json: schema: type: object properties: data: type: object additionalProperties: $ref: "#/components/schemas/Claim" required: - data ResponseCase: description: Case response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/Case" required: - data ResponseCaseList: description: Case list response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/CaseList" required: - data ResponseEventList: description: Event list response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/EventList" required: - data ResponseCaseSubmit: description: Case submit response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/caseID" required: - data ResponseCaseReview: description: Case submit response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/caseID" required: - data ResponseCaseObject: description: Case submit response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/caseID" required: - data ResponseClaimApprove: description: Claim approve response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/claimID" required: - data ResponseClaimReject: description: Claim reject response content: application/json: schema: type: object properties: data: $ref: "#/components/schemas/claimID" required: - data