{
  "openapi": "3.0.0",
  "info": {
    "description": "This API provides services to analyze email addresses.\n",
    "version": "1",
    "title": "Email Analysis API"
  },
  "servers": [
    {
      "description": "Production",
      "url": "https://api.cdq.com/email-analysis/rest",
      "x-cdq-soap-url": "https://api.corporate-data-league.ch/email-analysis/soap/v1"
    }
  ],
  "security": [
    {
      "apiKey": []
    }
  ],
  "tags": [],
  "paths": {
    "/emails/verify": {
      "post": {
        "tags": [
          "Email Verification"
        ],
        "summary": "Verify Email Address",
        "description": "The Email Domain Guard consists of multiple checkers and a risk scoring feature. Each of the checkers analyzes a specific aspect of the given email address, the assessment via the checkers is then combined in terms of a multifactor analysis to a risk score.\nAvailable checkers:\n  - **Email Component Extractor**: Accurately separates an email address into its local part and domain, and then attempt to derive the base domain from it.\n  - **Email Format Checker**: Validates the structure and syntax of email addresses to ensure they follow standard conventions.\n  - **Domain Existence Checker**: Verifies the existence and accessibility of domain names, ensuring communications are directed to functional domains.\n  - **Disposable Mail Checker**: Detects disposable or temporary email addresses, ensuring the quality and authenticity of user-provided email addresses.\n  - **Freemail Checker**: Identifies freemail addresses, helping to assess the quality and legitimacy of user-provided email addresses.\n  - **Role Category Checker**: Identifies role-based email addresses, enhancing personalization and optimizing resource allocation.\n  - **Whois Checker**: Retrieves and analyzes whois information for domains, providing valuable details such as registration date and domain age.\n  - **DNSBL Checker**: Checks if email domain IP addresses are listed on DNS-based Blackhole Lists (DNSBLs), identifying potential sources of spam or malicious activity.\n  - **Data Breach Checker**: Analyzes email accounts and domains for potential data breaches using the [“Have I Been Pwned”](https://haveibeenpwned.com/) API.\n  - **Shared Email Checker**: Identifies shared email addresses among community members while ensuring privacy through anonymous data sharing and secure hashing.\n  - **Fraud Case Checker**: Identifies email addresses involved in any reported and confirmed fraud cases via CDQ's Fraud Guard.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmailVerificationRequest"
              },
              "examples": {
                "checkTheValidMail": {
                  "summary": "Verify the Dev-Portal mail",
                  "value": {
                    "email": "developer-portal@cdq.com"
                  }
                },
                "checkTheValidMailWithConfiguration": {
                  "summary": "Verify the Dev-Portal mail with configuration",
                  "value": {
                    "email": "developer-portal@cdq.com",
                    "configurationId": "67bc591b8063ae6da21ff673"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailVerificationResult"
                },
                "examples": {
                  "validEmail": {
                    "summary": "Valid email address",
                    "value": {
                      "email": "developer-portal@cdq.com",
                      "summary": {
                        "isBreachedDomain": false,
                        "isBreachedEmail": false,
                        "isDisposable": false,
                        "isBlacklisted": false,
                        "isPublicWhois": true,
                        "isSharedEmail": false,
                        "isValidFormat": true,
                        "isFreemail": false,
                        "isRoleBased": false,
                        "isFraudCaseDetected": false
                      },
                      "status": {
                        "code": 200,
                        "technicalKey": "OK",
                        "details": [
                          {
                            "id": 200000000,
                            "message": "Successful request.",
                            "technicalKey": "DEFAULT_OK",
                            "jsonRecord": {}
                          },
                          {
                            "id": 200600005,
                            "message": "Domain age is older than 1095 days.",
                            "technicalKey": "EMAIL_DOMAIN_OLDER_THAN",
                            "jsonRecord": {}
                          }
                        ]
                      },
                      "risk": {
                        "score": 0,
                        "classification": {
                          "name": "Very low risk",
                          "technicalKey": "VERY_LOW_RISK"
                        }
                      },
                      "format": {
                        "isValidFormat": true,
                        "parts": {
                          "localPart": "developer-portal",
                          "topLevelDomain": "com",
                          "baseDomain": "cdq",
                          "domain": "cdq.com"
                        }
                      },
                      "domain": {
                        "isValidDomain": true
                      },
                      "sharing": {
                        "isSharedEmail": false,
                        "subscribers": 0
                      },
                      "role": {
                        "isRoleBased": false
                      },
                      "freemail": {
                        "isFreemail": false
                      },
                      "disposable": {
                        "isDisposable": false
                      },
                      "whois": {
                        "isPublicWhois": true,
                        "entry": {
                          "dates": {
                            "creationDate": "1996-12-14T05:00:00",
                            "updatedDate": "2024-11-08T23:48:45",
                            "ageInDays": 10349,
                            "ageInYears": 28.353424657534248
                          },
                          "registrar": {
                            "name": "Amazon Registrar, Inc.",
                            "email": "trustandsafety@support.aws.com"
                          }
                        }
                      },
                      "dnsBlacklist": {
                        "isDnsBlacklisted": false,
                        "dnsBlacklists": []
                      },
                      "breaches": {
                        "isBreachedEmail": false,
                        "isBreachedDomain": false
                      },
                      "fraudCases": {
                        "isFraudCaseDetected": false,
                        "fraudCasesCount": 0
                      }
                    }
                  },
                  "validEmailWithConfiguration": {
                    "summary": "Valid email with verification configuration",
                    "value": {
                      "email": "developer-portal@cdq.com",
                      "summary": {
                        "isBreachedDomain": false,
                        "isBreachedEmail": false,
                        "isBlacklisted": false,
                        "isPublicWhois": true,
                        "isSharedEmail": false,
                        "isValidFormat": true,
                        "isFreemail": false,
                        "isRoleBased": false
                      },
                      "status": {
                        "code": 200,
                        "technicalKey": "OK",
                        "details": [
                          {
                            "id": 200000000,
                            "message": "Successful request.",
                            "technicalKey": "DEFAULT_OK",
                            "jsonRecord": {}
                          },
                          {
                            "id": 200600005,
                            "message": "Domain age is older than 1095 days.",
                            "technicalKey": "EMAIL_DOMAIN_OLDER_THAN",
                            "jsonRecord": {}
                          }
                        ]
                      },
                      "risk": {
                        "score": 0,
                        "classification": {
                          "name": "Very low risk",
                          "technicalKey": "VERY_LOW_RISK"
                        }
                      },
                      "format": {
                        "isValidFormat": true,
                        "parts": {
                          "localPart": "developer-portal",
                          "topLevelDomain": "com",
                          "baseDomain": "cdq",
                          "domain": "cdq.com"
                        }
                      },
                      "domain": {
                        "isValidDomain": true
                      },
                      "sharing": {
                        "isSharedEmail": false,
                        "subscribers": 0
                      },
                      "role": {
                        "isRoleBased": false
                      },
                      "freemail": {
                        "isFreemail": false
                      },
                      "disposable": {},
                      "whois": {
                        "isPublicWhois": true,
                        "entry": {
                          "dates": {
                            "creationDate": "1996-12-14T05:00:00",
                            "updatedDate": "2024-11-08T23:48:45",
                            "ageInDays": 10334,
                            "ageInYears": 28.312328767123287
                          },
                          "registrar": {
                            "name": "Amazon Registrar, Inc.",
                            "email": "trustandsafety@support.aws.com"
                          }
                        }
                      },
                      "dnsBlacklist": {
                        "isDnsBlacklisted": false,
                        "dnsBlacklists": []
                      },
                      "breaches": {
                        "isBreachedEmail": false,
                        "isBreachedDomain": false
                      },
                      "fraudCases": {}
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                },
                "example": "{\n\t\"status\": {\n\t\t\"code\": 400,\n\t\t\"technicalKey\": \"BAD_REQUEST\",\n\t\t\"details\": [\n\t\t\t{\n\t\t\t\t\"id\": 400600001,\n\t\t\t\t\"message\": \"The provided email address is not valid.\",\n\t\t\t\t\"technicalKey\": \"EMAIL_INVALID\"\n\t\t\t}\n\t\t]\n\t}\n}\n"
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "500": {
            "description": "Internal server error"
          }
        }
      }
    },
    "/configurations/emailverification": {
      "get": {
        "tags": [
          "Configuration"
        ],
        "summary": "List Configurations",
        "description": "List all email verification configurations.",
        "parameters": [
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/startAfter"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful operation",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkspaceConfigurationPage"
                },
                "examples": {
                  "listConfigurations": {
                    "summary": "List of configurations",
                    "value": {
                      "startAfter": "0",
                      "nextStartAfter": "1",
                      "total": 2,
                      "values": [
                        {
                          "name": "My configuration",
                          "id": "67e55a52826f904dcbf63743",
                          "createdAt": "2025-03-27T14:01:54.259Z",
                          "createdBy": "b3e96bd8-96a6-48f5-b378-610d177be354"
                        },
                        {
                          "name": "Default configuration with risk score enabling",
                          "id": "67c6b5e4e165a754e5098cad",
                          "createdAt": "2025-03-04T08:12:20.021Z",
                          "modifiedAt": "2025-03-04T08:12:20.021Z",
                          "createdBy": "b3e96bd8-96a6-48f5-b378-610d177be354"
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Configuration"
        ],
        "summary": "Create Configuration",
        "description": "Create a new email verification configuration.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmailVerificationConfigurationCreate"
              },
              "examples": {
                "createConfiguration": {
                  "summary": "Create a new configuration",
                  "value": {
                    "name": "My configuration",
                    "configuration": {
                      "disposableMailChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "disposableFactorWeight": 100
                      },
                      "dnsblChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "dnsblFactorWeight": 50
                      },
                      "freemailChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "freemailFactorWeight": 40
                      },
                      "roleCategoryChecker": {
                        "isEnabled": true
                      },
                      "whoisChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "newBornDomainFactorWeight": 85,
                        "youngDomainFactorWeight": 10,
                        "oldDomainFactorWeight": 10,
                        "notPublicFactorWeight": 65,
                        "youngDomainAgeThreshold": 365,
                        "oldDomainAgeThreshold": 1095
                      },
                      "sharedEmailChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "sharedEmailAddressFactorWeight": 50
                      },
                      "dataBreachChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "recentDataBreachFactorWeight": 20,
                        "youngDataBreachFactorWeight": 10,
                        "oldDataBreachFactorWeight": 5,
                        "breachWithPasswordFactorWeight": 20,
                        "breachWithMalwareFactorWeight": 20,
                        "inflationaryBreachesFactorWeight": 10,
                        "breachedDomainFactorWeight": 5,
                        "youngDataBreachAgeThreshold": 365,
                        "oldDataBreachAgeThreshold": 1095,
                        "inflationaryBreachesCountThreshold": 25
                      },
                      "fraudCaseChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": false
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Configuration created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailVerificationConfiguration"
                },
                "examples": {
                  "createConfiguration": {
                    "summary": "Configuration created successfully",
                    "value": {
                      "name": "My configuration",
                      "configuration": {
                        "disposableMailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "disposableFactorWeight": 100
                        },
                        "dnsblChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "dnsblFactorWeight": 50
                        },
                        "freemailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "freemailFactorWeight": 40
                        },
                        "roleCategoryChecker": {
                          "isEnabled": true
                        },
                        "whoisChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "newBornDomainFactorWeight": 85,
                          "youngDomainFactorWeight": 10,
                          "oldDomainFactorWeight": 10,
                          "notPublicFactorWeight": 65,
                          "youngDomainAgeThreshold": 365,
                          "oldDomainAgeThreshold": 1095
                        },
                        "sharedEmailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "sharedEmailAddressFactorWeight": 50
                        },
                        "dataBreachChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "recentDataBreachFactorWeight": 20,
                          "youngDataBreachFactorWeight": 10,
                          "oldDataBreachFactorWeight": 5,
                          "breachWithPasswordFactorWeight": 20,
                          "breachWithMalwareFactorWeight": 20,
                          "inflationaryBreachesFactorWeight": 10,
                          "breachedDomainFactorWeight": 5,
                          "youngDataBreachAgeThreshold": 365,
                          "oldDataBreachAgeThreshold": 1095,
                          "inflationaryBreachesCountThreshold": 25
                        },
                        "fraudCaseChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": false
                        }
                      },
                      "version": 1,
                      "id": "67e55a52826f904dcbf63743",
                      "createdAt": "2025-03-27T14:01:54.259837898Z",
                      "createdBy": "b3e96bd8-96a6-48f5-b378-610d177be354",
                      "defaultConfiguration": false,
                      "relatedConfigurations": []
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request."
          }
        }
      }
    },
    "/configurations/emailverification/{configurationId}": {
      "get": {
        "tags": [
          "Configuration"
        ],
        "summary": "Read Configuration",
        "description": "Read email verification configuration by id.",
        "parameters": [
          {
            "$ref": "#/components/parameters/configurationId"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful operation",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailVerificationConfiguration"
                },
                "examples": {
                  "readConfiguration": {
                    "summary": "Read Configuration Successfully",
                    "value": {
                      "name": "My configuration",
                      "configuration": {
                        "disposableMailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "disposableFactorWeight": 100
                        },
                        "dnsblChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "dnsblFactorWeight": 50
                        },
                        "freemailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "freemailFactorWeight": 40
                        },
                        "roleCategoryChecker": {
                          "isEnabled": true
                        },
                        "whoisChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "newBornDomainFactorWeight": 85,
                          "youngDomainFactorWeight": 10,
                          "oldDomainFactorWeight": 10,
                          "notPublicFactorWeight": 65,
                          "youngDomainAgeThreshold": 365,
                          "oldDomainAgeThreshold": 1095
                        },
                        "sharedEmailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "sharedEmailAddressFactorWeight": 50
                        },
                        "dataBreachChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "recentDataBreachFactorWeight": 20,
                          "youngDataBreachFactorWeight": 10,
                          "oldDataBreachFactorWeight": 5,
                          "breachWithPasswordFactorWeight": 20,
                          "breachWithMalwareFactorWeight": 20,
                          "inflationaryBreachesFactorWeight": 10,
                          "breachedDomainFactorWeight": 5,
                          "youngDataBreachAgeThreshold": 365,
                          "oldDataBreachAgeThreshold": 1095,
                          "inflationaryBreachesCountThreshold": 25
                        },
                        "fraudCaseChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": false
                        }
                      },
                      "version": 1,
                      "id": "67e55a52826f904dcbf63743",
                      "createdAt": "2025-03-27T14:01:54.259Z",
                      "createdBy": "b3e96bd8-96a6-48f5-b378-610d177be354",
                      "defaultConfiguration": false,
                      "relatedConfigurations": []
                    }
                  }
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Configuration"
        ],
        "summary": "Update Configuration",
        "description": "Update an existing email verification configuration.",
        "parameters": [
          {
            "$ref": "#/components/parameters/configurationId"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmailVerificationConfigurationUpdate"
              },
              "examples": {
                "updateConfiguration": {
                  "summary": "Update an existing configuration",
                  "value": {
                    "name": "My configuration",
                    "configuration": {
                      "disposableMailChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "disposableFactorWeight": 100
                      },
                      "dnsblChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "dnsblFactorWeight": 50
                      },
                      "freemailChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "freemailFactorWeight": 40
                      },
                      "roleCategoryChecker": {
                        "isEnabled": true
                      },
                      "whoisChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "newBornDomainFactorWeight": 85,
                        "youngDomainFactorWeight": 10,
                        "oldDomainFactorWeight": 10,
                        "notPublicFactorWeight": 65,
                        "youngDomainAgeThreshold": 365,
                        "oldDomainAgeThreshold": 1095
                      },
                      "sharedEmailChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "sharedEmailAddressFactorWeight": 50
                      },
                      "dataBreachChecker": {
                        "isEnabled": true,
                        "isRiskCalculationEnabled": true,
                        "recentDataBreachFactorWeight": 20,
                        "youngDataBreachFactorWeight": 10,
                        "oldDataBreachFactorWeight": 5,
                        "breachWithPasswordFactorWeight": 20,
                        "breachWithMalwareFactorWeight": 20,
                        "inflationaryBreachesFactorWeight": 10,
                        "breachedDomainFactorWeight": 5,
                        "youngDataBreachAgeThreshold": 365,
                        "oldDataBreachAgeThreshold": 1095,
                        "inflationaryBreachesCountThreshold": 25
                      },
                      "fraudCaseChecker": {
                        "isEnabled": false,
                        "isRiskCalculationEnabled": false
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Configuration updated successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailVerificationConfiguration"
                },
                "examples": {
                  "updatedConfiguration": {
                    "summary": "Configuration updated successfully",
                    "value": {
                      "name": "My configuration",
                      "configuration": {
                        "disposableMailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "disposableFactorWeight": 100
                        },
                        "dnsblChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "dnsblFactorWeight": 50
                        },
                        "freemailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "freemailFactorWeight": 40
                        },
                        "roleCategoryChecker": {
                          "isEnabled": true
                        },
                        "whoisChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "newBornDomainFactorWeight": 85,
                          "youngDomainFactorWeight": 10,
                          "oldDomainFactorWeight": 10,
                          "notPublicFactorWeight": 65,
                          "youngDomainAgeThreshold": 365,
                          "oldDomainAgeThreshold": 1095
                        },
                        "sharedEmailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "sharedEmailAddressFactorWeight": 50
                        },
                        "dataBreachChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "recentDataBreachFactorWeight": 20,
                          "youngDataBreachFactorWeight": 10,
                          "oldDataBreachFactorWeight": 5,
                          "breachWithPasswordFactorWeight": 20,
                          "breachWithMalwareFactorWeight": 20,
                          "inflationaryBreachesFactorWeight": 10,
                          "breachedDomainFactorWeight": 5,
                          "youngDataBreachAgeThreshold": 365,
                          "oldDataBreachAgeThreshold": 1095,
                          "inflationaryBreachesCountThreshold": 25
                        },
                        "fraudCaseChecker": {
                          "isEnabled": false,
                          "isRiskCalculationEnabled": false
                        }
                      },
                      "version": 2,
                      "id": "67e55a52826f904dcbf63743",
                      "createdAt": "2025-03-27T14:01:54.259Z",
                      "modifiedAt": "2025-03-27T14:24:05.998010503Z",
                      "createdBy": "b3e96bd8-96a6-48f5-b378-610d177be354",
                      "defaultConfiguration": false,
                      "relatedConfigurations": []
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request."
          }
        }
      },
      "delete": {
        "tags": [
          "Configuration"
        ],
        "summary": "Delete Configuration",
        "description": "Delete an email verification configuration.",
        "parameters": [
          {
            "$ref": "#/components/parameters/configurationId"
          }
        ],
        "responses": {
          "200": {
            "description": "OK.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailVerificationConfiguration"
                },
                "examples": {
                  "deletedConfiguration": {
                    "summary": "Configuration deleted successfully",
                    "value": {
                      "name": "My configuration",
                      "configuration": {
                        "disposableMailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "disposableFactorWeight": 100
                        },
                        "dnsblChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "dnsblFactorWeight": 50
                        },
                        "freemailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "freemailFactorWeight": 40
                        },
                        "roleCategoryChecker": {
                          "isEnabled": true
                        },
                        "whoisChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "newBornDomainFactorWeight": 85,
                          "youngDomainFactorWeight": 10,
                          "oldDomainFactorWeight": 10,
                          "notPublicFactorWeight": 65,
                          "youngDomainAgeThreshold": 365,
                          "oldDomainAgeThreshold": 1095
                        },
                        "sharedEmailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "sharedEmailAddressFactorWeight": 50
                        },
                        "dataBreachChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "recentDataBreachFactorWeight": 20,
                          "youngDataBreachFactorWeight": 10,
                          "oldDataBreachFactorWeight": 5,
                          "breachWithPasswordFactorWeight": 20,
                          "breachWithMalwareFactorWeight": 20,
                          "inflationaryBreachesFactorWeight": 10,
                          "breachedDomainFactorWeight": 5,
                          "youngDataBreachAgeThreshold": 365,
                          "oldDataBreachAgeThreshold": 1095,
                          "inflationaryBreachesCountThreshold": 25
                        },
                        "fraudCaseChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true
                        }
                      },
                      "version": 4,
                      "id": "67e55a52826f904dcbf63743",
                      "createdAt": "2025-03-27T14:01:54.259Z",
                      "modifiedAt": "2025-03-27T14:29:20.097Z",
                      "createdBy": "b3e96bd8-96a6-48f5-b378-610d177be354",
                      "defaultConfiguration": false,
                      "relatedConfigurations": []
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request."
          }
        }
      }
    },
    "/configurations/emailverification/{configurationId}/versions/{version}": {
      "get": {
        "tags": [
          "Configuration"
        ],
        "summary": "Read Email Verification Configuration Version",
        "description": "Read a specific version of an email verification configuration by id and version number.",
        "parameters": [
          {
            "$ref": "#/components/parameters/configurationId"
          },
          {
            "$ref": "#/components/parameters/configurationVersion"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful operation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailVerificationConfigurationVersion"
                },
                "examples": {
                  "versionConfiguration": {
                    "summary": "Configuration version read successfully",
                    "value": {
                      "id": "67ea96a80ab6e12699b0bec0",
                      "name": "My configuration1",
                      "configurationId": "67ea96a80ab6e12699b0bebf",
                      "version": 1,
                      "configuration": {
                        "disposableMailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "disposableFactorWeight": 100
                        },
                        "dnsblChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "dnsblFactorWeight": 50
                        },
                        "freemailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "freemailFactorWeight": 40
                        },
                        "roleCategoryChecker": {
                          "isEnabled": true
                        },
                        "whoisChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "newBornDomainFactorWeight": 85,
                          "youngDomainFactorWeight": 10,
                          "oldDomainFactorWeight": 10,
                          "notPublicFactorWeight": 65,
                          "youngDomainAgeThreshold": 365,
                          "oldDomainAgeThreshold": 1095
                        },
                        "sharedEmailChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "sharedEmailAddressFactorWeight": 50
                        },
                        "dataBreachChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true,
                          "recentDataBreachFactorWeight": 20,
                          "youngDataBreachFactorWeight": 10,
                          "oldDataBreachFactorWeight": 5,
                          "breachWithPasswordFactorWeight": 20,
                          "breachWithMalwareFactorWeight": 20,
                          "inflationaryBreachesFactorWeight": 10,
                          "breachedDomainFactorWeight": 5,
                          "youngDataBreachAgeThreshold": 365,
                          "oldDataBreachAgeThreshold": 1095,
                          "inflationaryBreachesCountThreshold": 25
                        },
                        "fraudCaseChecker": {
                          "isEnabled": true,
                          "isRiskCalculationEnabled": true
                        }
                      },
                      "createdAt": "2025-03-31T13:20:40.677Z",
                      "createdBy": "b3e96bd8-96a6-48f5-b378-610d177be354",
                      "modifiedAt": "2025-03-31T13:20:40.677Z",
                      "modifiedBy": "b3e96bd8-96a6-48f5-b378-610d177be354",
                      "defaultConfiguration": false
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "apiKey": {
        "type": "apiKey",
        "in": "header",
        "name": "X-API-KEY"
      }
    },
    "parameters": {
      "configurationId": {
        "in": "path",
        "name": "configurationId",
        "description": "ID of the configuration.",
        "required": true,
        "schema": {
          "type": "string",
          "example": "c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4"
        }
      },
      "configurationVersion": {
        "in": "path",
        "name": "version",
        "required": true,
        "description": "Version number of the configuration.",
        "schema": {
          "type": "integer",
          "example": 1
        }
      },
      "limit": {
        "in": "query",
        "name": "limit",
        "required": false,
        "description": "Maximum number of configurations to return.",
        "schema": {
          "$ref": "#/components/schemas/Limit"
        }
      },
      "startAfter": {
        "in": "query",
        "name": "startAfter",
        "description": "Used to retrieve the next page of results.",
        "required": false,
        "schema": {
          "$ref": "#/components/schemas/StartAfter"
        }
      }
    },
    "schemas": {
      "EmailVerificationRequest": {
        "type": "object",
        "required": [
          "email"
        ],
        "description": "Request to verify a single email address.",
        "properties": {
          "email": {
            "$ref": "#/components/schemas/Email"
          },
          "configurationId": {
            "$ref": "#/components/schemas/ConfigurationId"
          }
        }
      },
      "Email": {
        "type": "string",
        "example": "john.doe@gmail.com",
        "description": "An email address as defined by IETF."
      },
      "RiskScore": {
        "type": "integer",
        "example": 100,
        "minimum": 0,
        "maximum": 100,
        "description": "A numerical value (0-100) representing the risk score associated with the email address."
      },
      "RiskClassification": {
        "type": "object",
        "description": "The classification of the risk based on the risk score, indicating the level of risk such as \"Very low risk\", \"Low risk\", \"Medium risk\", \"High risk\", or \"Very high risk\".",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RiskClassificationName"
          },
          "technicalKey": {
            "$ref": "#/components/schemas/RiskClassificationTechnicalKey"
          }
        }
      },
      "RiskClassificationName": {
        "type": "string",
        "example": "Very low risk",
        "description": "The classification of the risk based on the risk score, indicating the level of risk such as \"Very low risk\", \"Low risk\", \"Medium risk\", \"High risk\", or \"Very high risk\"."
      },
      "RiskClassificationTechnicalKey": {
        "type": "string",
        "example": "VERY_LOW_RISK",
        "description": "The classification of the risk based on the risk score, indicating the level of risk such as \"Very low risk\", \"Low risk\", \"Medium risk\", \"High risk\", or \"Very high risk\".",
        "enum": [
          "VERY_LOW_RISK",
          "LOW_RISK",
          "MEDIUM_RISK",
          "HIGH_RISK",
          "VERY_HIGH_RISK"
        ],
        "x-enumDescriptions": {
          "VERY_LOW_RISK": "Very low risk",
          "LOW_RISK": "Low risk",
          "MEDIUM_RISK": "Medium risk",
          "HIGH_RISK": "High risk",
          "VERY_HIGH_RISK": "Very high risk"
        }
      },
      "IsValidFormat": {
        "type": "boolean",
        "example": true,
        "description": "Indicates whether the email address has a valid format."
      },
      "LocalPart": {
        "type": "string",
        "example": "john.doe",
        "description": "The account name of the email address."
      },
      "TopLevelDomain": {
        "type": "string",
        "example": "com",
        "description": "The top-level domain of the email address."
      },
      "BaseDomain": {
        "type": "string",
        "example": "gmail",
        "description": "The base domain of the email address."
      },
      "Domain": {
        "type": "string",
        "example": "gmail.com",
        "description": "The full domain of the email address."
      },
      "EmailParts": {
        "type": "object",
        "description": "Contains the different parts of an email address, including the local part, top-level domain, base domain, and full domain.",
        "properties": {
          "localPart": {
            "$ref": "#/components/schemas/LocalPart"
          },
          "topLevelDomain": {
            "$ref": "#/components/schemas/TopLevelDomain"
          },
          "baseDomain": {
            "$ref": "#/components/schemas/BaseDomain"
          },
          "domain": {
            "$ref": "#/components/schemas/Domain"
          }
        }
      },
      "IsValidDomain": {
        "type": "boolean",
        "example": true,
        "description": "Indicates whether the domain of the email address is valid and operational."
      },
      "IsSharedEmail": {
        "type": "boolean",
        "example": true,
        "description": "Indicates whether the email address is found in the shared email database of the CDQ Data Sharing Community."
      },
      "Subscribers": {
        "type": "integer",
        "example": 100,
        "description": "The number of unique community members that use this email address for conversations with customers or suppliers."
      },
      "WhoIsCountry": {
        "type": "string",
        "example": "Switzerland",
        "description": "Country name."
      },
      "Name": {
        "type": "object",
        "description": "The name of a business partner.",
        "properties": {
          "value": {
            "$ref": "#/components/schemas/NameValue"
          }
        }
      },
      "Address": {
        "type": "object",
        "description": "Address information",
        "properties": {
          "country": {
            "$ref": "#/components/schemas/Country"
          }
        }
      },
      "Country": {
        "type": "object",
        "description": "Country information",
        "properties": {
          "shortName": {
            "$ref": "#/components/schemas/CountryShortName"
          }
        }
      },
      "IsRoleBased": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the email address is a role-based address (e.g. support@example.com)."
      },
      "RoleCategory": {
        "type": "object",
        "description": "The category of the role-based email address, if applicable.",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/RoleCategoryName"
          },
          "technicalKey": {
            "$ref": "#/components/schemas/RoleCategoryTechnicalKey"
          }
        }
      },
      "RoleCategoryName": {
        "type": "string",
        "example": "Human Resources",
        "description": "The category name of the role-based email address, if applicable."
      },
      "RoleCategoryTechnicalKey": {
        "type": "string",
        "example": "HUMAN_RESOURCES",
        "description": "The category technical key of the role-based email address, if applicable.",
        "enum": [
          "GENERAL_INQUIRIES",
          "SALES_AND_MARKETING",
          "CUSTOMER_SUPPORT",
          "BILLING_AND_FINANCE",
          "HUMAN_RESOURCES",
          "TECHNICAL_SUPPORT",
          "ADMINISTRATION",
          "WEBSITE_AND_IT",
          "MEDIA_AND_PR",
          "FEEDBACK_AND_SUGGESTIONS",
          "SOCIAL_MEDIA_AND_COMMUNITY",
          "EVENTS_AND_PROMOTIONS",
          "RESEARCH_AND_DEVELOPMENT",
          "SECURITY_AND_PRIVACY",
          "NEWSLETTER_SUBSCRIPTIONS"
        ]
      },
      "IsFreemail": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the email address is from a freemail provider (e.g. Gmail, Yahoo)"
      },
      "EmailProviderName": {
        "type": "string",
        "example": "Gmail",
        "description": "The name of the freemail/disposable email/dnsbl provider."
      },
      "Website": {
        "type": "object",
        "description": "Website related to the email provider, if applicable",
        "properties": {
          "url": {
            "$ref": "#/components/schemas/WebsiteUrl"
          }
        }
      },
      "EmailProvider": {
        "type": "object",
        "description": "Information about the email provider, if applicable",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/EmailProviderName"
          },
          "website": {
            "$ref": "#/components/schemas/Website"
          }
        }
      },
      "IsDisposable": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the email address is disposable or temporary."
      },
      "IsPublicWhois": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the domain's WHOIS information is publicly available"
      },
      "WhoIsName": {
        "type": "string",
        "example": "John Doe",
        "description": "The name of the registrant."
      },
      "WhoIsOrganization": {
        "type": "string",
        "example": "Amazon Register, Inc.",
        "description": "The name of the WhoIs contact."
      },
      "WhoIsStreet": {
        "type": "string",
        "example": "Musterstrasse 1",
        "description": "The address of the WhoIs contact."
      },
      "WhoIsCity": {
        "type": "string",
        "example": "Zurich",
        "description": "The city of the WhoIs contact."
      },
      "WhoIsState": {
        "type": "string",
        "example": "ZH",
        "description": "The state of the WhoIs contact."
      },
      "WhoIsPostalCode": {
        "type": "string",
        "example": "8000",
        "description": "The postal code of the WhoIs contact."
      },
      "WhoIsContact": {
        "type": "object",
        "description": "Information about the contact of a domain",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/WhoIsName"
          },
          "organization": {
            "$ref": "#/components/schemas/WhoIsOrganization"
          },
          "street": {
            "$ref": "#/components/schemas/WhoIsStreet"
          },
          "city": {
            "$ref": "#/components/schemas/WhoIsCity"
          },
          "state": {
            "$ref": "#/components/schemas/WhoIsState"
          },
          "postalCode": {
            "$ref": "#/components/schemas/WhoIsPostalCode"
          },
          "country": {
            "$ref": "#/components/schemas/WhoIsCountry"
          },
          "email": {
            "$ref": "#/components/schemas/WhoIsEmail"
          }
        }
      },
      "WhoIsCreationDate": {
        "type": "string",
        "example": "2026-03-13T12:22:55Z",
        "description": "The creation date of the domain."
      },
      "WhoIsUpdatedDate": {
        "type": "string",
        "example": "2026-03-13T12:22:55Z",
        "description": "The updated date of the domain."
      },
      "WhoIsAgeInDays": {
        "type": "integer",
        "format": "int64",
        "example": 2,
        "description": "The age of the domain in days."
      },
      "WhoIsAgeInYears": {
        "type": "number",
        "format": "double",
        "example": 0,
        "description": "The age of the domain in years"
      },
      "WhoIsEmail": {
        "type": "string",
        "example": "noreply@registrar.amazon.com",
        "description": "The contact email of the domain."
      },
      "WhoisEntry": {
        "type": "object",
        "description": "Information about the domain's WHOIS data, including creation date, age, registrar, and registrant details",
        "properties": {
          "dates": {
            "$ref": "#/components/schemas/WhoIsDates"
          },
          "registrar": {
            "$ref": "#/components/schemas/WhoIsContact"
          },
          "registrant": {
            "$ref": "#/components/schemas/WhoIsContact"
          }
        }
      },
      "IsDnsBlacklisted": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the domain's IP addresses are listed on any Domain Name System blacklist"
      },
      "DnsBlackList": {
        "type": "object",
        "description": "Information about the Domain Name System blacklist the domain is listed on, if applicable",
        "properties": {
          "url": {
            "$ref": "#/components/schemas/DnsBlacklistUrl"
          }
        }
      },
      "DnsBlacklistUrl": {
        "type": "string",
        "example": "zen.spamhaus.org",
        "description": "The url of the Domain Name System blacklist"
      },
      "IsBreachedEmail": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the email address has been found in data breaches."
      },
      "BreachedEmailCount": {
        "type": "number",
        "example": 0,
        "description": "The total number of data breaches the email address/domain has been found in."
      },
      "BreachName": {
        "type": "string",
        "example": "Adobe",
        "description": "The name of the data breach."
      },
      "Title": {
        "type": "string",
        "example": "Adobe breach",
        "description": "The title of the data breach."
      },
      "BreachedDomain": {
        "type": "string",
        "example": "adobe.com",
        "description": "The domain of the data breach."
      },
      "BreachDate": {
        "type": "string",
        "example": "2026-03-13T12:22:55Z",
        "description": "The date of the data breach."
      },
      "PwnCount": {
        "type": "number",
        "example": 153000000,
        "description": "The number of accounts exposed in the data breach."
      },
      "BreachDescription": {
        "type": "string",
        "example": "In October 2013, 153 million Adobe accounts were breached with each containing an internal ID, username, email, encrypted password and a password hint in plain text.",
        "description": "The description of the data breach."
      },
      "DataClass": {
        "type": "string",
        "example": "Email addresses",
        "description": "The data class exposed in the data breach."
      },
      "DataClasses": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/DataClass"
        },
        "example": [
          "Email addresses",
          "Passwords"
        ],
        "description": "The data classes exposed in the data breach."
      },
      "IsVerified": {
        "type": "boolean",
        "example": true,
        "description": "Indicates whether the data breach has been verified."
      },
      "IsFabricated": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the data breach has been fabricated."
      },
      "IsSensitive": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the data breach contains sensitive information."
      },
      "IsRetired": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the data breach has been retired."
      },
      "IsSpamList": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the data breach is a spam list."
      },
      "IsMalware": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the data breach contains malware."
      },
      "BreachInfo": {
        "type": "object",
        "description": "Information about the specific data breach the email address or domain has been associated with, including breach name, date, description, and data class exposed.",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/BreachName"
          },
          "title": {
            "$ref": "#/components/schemas/Title"
          },
          "domain": {
            "$ref": "#/components/schemas/BreachedDomain"
          },
          "breachDate": {
            "$ref": "#/components/schemas/BreachDate"
          },
          "pwnCount": {
            "$ref": "#/components/schemas/PwnCount"
          },
          "description": {
            "$ref": "#/components/schemas/BreachDescription"
          },
          "dataClasses": {
            "$ref": "#/components/schemas/DataClasses"
          },
          "isVerified": {
            "$ref": "#/components/schemas/IsVerified"
          },
          "isFabricated": {
            "$ref": "#/components/schemas/IsFabricated"
          },
          "isSensitive": {
            "$ref": "#/components/schemas/IsSensitive"
          },
          "isRetired": {
            "$ref": "#/components/schemas/IsRetired"
          },
          "isSpamList": {
            "$ref": "#/components/schemas/IsSpamList"
          },
          "isMalware": {
            "$ref": "#/components/schemas/IsMalware"
          }
        }
      },
      "EmailBreaches": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/BreachInfo"
        },
        "description": "Information about the specific data breaches the email address has been associated with, including breach name, date, description, and data class exposed."
      },
      "IsBreachedDomain": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the domain has been found in data breaches."
      },
      "BreachedDomainCount": {
        "type": "number",
        "example": 0,
        "description": "The total number of data breaches the domain has been found in."
      },
      "DomainBreaches": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/BreachInfo"
        },
        "description": "Information about the specific data breaches the domain has been associated with, including breach name, date, description, and data class exposed."
      },
      "EmailVerificationResult": {
        "type": "object",
        "description": "Object containing the email verification result.yaml.",
        "properties": {
          "email": {
            "$ref": "#/components/schemas/Email"
          },
          "summary": {
            "$ref": "#/components/schemas/EmailVerificationSummary"
          },
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "risk": {
            "$ref": "#/components/schemas/EmailRiskVerification"
          },
          "format": {
            "$ref": "#/components/schemas/EmailFormatVerification"
          },
          "domain": {
            "$ref": "#/components/schemas/EmailDomainVerification"
          },
          "sharing": {
            "$ref": "#/components/schemas/SharedEmailVerification"
          },
          "role": {
            "$ref": "#/components/schemas/EmailRoleVerification"
          },
          "freemail": {
            "$ref": "#/components/schemas/FreemailVerification"
          },
          "disposable": {
            "$ref": "#/components/schemas/EmailDisposableVerification"
          },
          "whois": {
            "$ref": "#/components/schemas/WhoisVerification"
          },
          "dnsBlacklist": {
            "$ref": "#/components/schemas/DnsBlacklistVerification"
          },
          "breaches": {
            "$ref": "#/components/schemas/EmailBreachesVerification"
          },
          "fraudCases": {
            "$ref": "#/components/schemas/EmailFraudCaseVerification"
          },
          "debugInfo": {
            "$ref": "#/components/schemas/EmailVerificationDebugInfo"
          }
        }
      },
      "EmailVerificationSummary": {
        "type": "object",
        "description": "Summary of the email verification result.yaml.",
        "properties": {
          "isBreachedDomain": {
            "$ref": "#/components/schemas/IsBreachedDomain"
          },
          "isBreachedEmail": {
            "$ref": "#/components/schemas/IsBreachedEmail"
          },
          "isDisposable": {
            "$ref": "#/components/schemas/IsDisposable"
          },
          "isBlacklisted": {
            "$ref": "#/components/schemas/IsDnsBlacklisted"
          },
          "isPublicWhois": {
            "$ref": "#/components/schemas/IsPublicWhois"
          },
          "isSharedEmail": {
            "$ref": "#/components/schemas/IsSharedEmail"
          },
          "isValidFormat": {
            "$ref": "#/components/schemas/IsValidFormat"
          },
          "isFreemail": {
            "$ref": "#/components/schemas/IsFreemail"
          },
          "isRoleBased": {
            "$ref": "#/components/schemas/IsRoleBased"
          },
          "isFraudCaseDetected": {
            "$ref": "#/components/schemas/IsFraudCaseDetected"
          }
        }
      },
      "EmailRiskVerification": {
        "type": "object",
        "description": "Details about the risk score and classification.",
        "properties": {
          "score": {
            "$ref": "#/components/schemas/RiskScore"
          },
          "classification": {
            "$ref": "#/components/schemas/RiskClassification"
          }
        }
      },
      "EmailFormatVerification": {
        "type": "object",
        "description": "Details about the email format.",
        "properties": {
          "isValidFormat": {
            "$ref": "#/components/schemas/IsValidFormat"
          },
          "parts": {
            "$ref": "#/components/schemas/EmailParts"
          }
        }
      },
      "EmailDomainVerification": {
        "type": "object",
        "description": "Details about the domain verification.",
        "properties": {
          "isValidDomain": {
            "$ref": "#/components/schemas/IsValidDomain"
          }
        }
      },
      "SharedEmailVerification": {
        "type": "object",
        "description": "Details about the shared email verification.",
        "properties": {
          "isSharedEmail": {
            "$ref": "#/components/schemas/IsSharedEmail"
          },
          "subscribers": {
            "$ref": "#/components/schemas/Subscribers"
          }
        }
      },
      "EmailRoleVerification": {
        "type": "object",
        "description": "Details about the shared email verification.",
        "properties": {
          "isRoleBased": {
            "$ref": "#/components/schemas/IsRoleBased"
          },
          "roleCategory": {
            "$ref": "#/components/schemas/RoleCategory"
          }
        }
      },
      "FreemailVerification": {
        "type": "object",
        "description": "Details about the freemail verification.",
        "properties": {
          "isFreemail": {
            "$ref": "#/components/schemas/IsFreemail"
          },
          "provider": {
            "$ref": "#/components/schemas/EmailProvider"
          }
        }
      },
      "EmailDisposableVerification": {
        "type": "object",
        "description": "Details about the disposable email verification.",
        "properties": {
          "isDisposable": {
            "$ref": "#/components/schemas/IsDisposable"
          },
          "provider": {
            "$ref": "#/components/schemas/EmailProvider"
          }
        }
      },
      "WhoisVerification": {
        "type": "object",
        "description": "Details about the WHOIS verification.",
        "properties": {
          "isPublicWhois": {
            "$ref": "#/components/schemas/IsPublicWhois"
          },
          "entry": {
            "$ref": "#/components/schemas/WhoisEntry"
          }
        }
      },
      "DnsBlacklistVerification": {
        "type": "object",
        "description": "Details about the DNS blacklist verification.",
        "properties": {
          "isDnsBlacklisted": {
            "$ref": "#/components/schemas/IsDnsBlacklisted"
          },
          "dnsBlacklists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DnsBlackList"
            }
          }
        }
      },
      "EmailBreachesVerification": {
        "type": "object",
        "description": "Details about the data breaches the email address has been associated with.\nThe data originates from the website haveibeenpwned.com\n",
        "properties": {
          "isBreachedEmail": {
            "$ref": "#/components/schemas/IsBreachedEmail"
          },
          "breachedEmailCount": {
            "$ref": "#/components/schemas/BreachedEmailCount"
          },
          "emailBreaches": {
            "$ref": "#/components/schemas/EmailBreaches"
          },
          "isBreachedDomain": {
            "$ref": "#/components/schemas/IsBreachedDomain"
          },
          "breachedDomainCount": {
            "$ref": "#/components/schemas/BreachedDomainCount"
          },
          "domainBreaches": {
            "$ref": "#/components/schemas/DomainBreaches"
          }
        }
      },
      "WhoIsDates": {
        "type": "object",
        "description": "Dates related to the WHOIS information.",
        "properties": {
          "creationDate": {
            "$ref": "#/components/schemas/WhoIsCreationDate"
          },
          "updatedDate": {
            "$ref": "#/components/schemas/WhoIsUpdatedDate"
          },
          "ageInDays": {
            "$ref": "#/components/schemas/WhoIsAgeInDays"
          },
          "ageInYears": {
            "$ref": "#/components/schemas/WhoIsAgeInYears"
          }
        }
      },
      "EmailVerificationDebugInfo": {
        "type": "object",
        "description": "Debug information about the email verification.",
        "properties": {
          "checkerResults": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmailVerificationCheckerResultDebugInfo"
            }
          }
        }
      },
      "EmailVerificationCheckerResultDebugInfo": {
        "type": "string",
        "description": "Debug information about the email verification checker result.",
        "example": "a"
      },
      "EmailFraudCaseVerification": {
        "type": "object",
        "description": "Details about the fraud case verification.",
        "properties": {
          "isFraudCaseDetected": {
            "$ref": "#/components/schemas/IsFraudCaseDetected"
          },
          "fraudCasesCount": {
            "$ref": "#/components/schemas/FraudCasesCount"
          },
          "fraudCases": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FraudCase"
            }
          }
        }
      },
      "IsFraudCaseDetected": {
        "type": "boolean",
        "example": false,
        "description": "Indicates whether the fraud case was detected for given email address."
      },
      "FraudCasesCount": {
        "type": "integer",
        "example": 1,
        "description": "The total number of fraud cases the email address has been found in."
      },
      "FraudCase": {
        "type": "object",
        "description": "Information about the specific fraud case the email address has been associated with.",
        "properties": {
          "cdqId": {
            "$ref": "#/components/schemas/FraudCaseCdqId"
          },
          "dateOfAttack": {
            "$ref": "#/components/schemas/FraudCaseDateOfAttack"
          },
          "description": {
            "$ref": "#/components/schemas/FraudCaseDescription"
          }
        }
      },
      "FraudCaseCdqId": {
        "type": "string",
        "example": "ADhby5HQCN",
        "description": "The unique identifier of the fraud case."
      },
      "FraudCaseDateOfAttack": {
        "type": "string",
        "example": "2026-03-13T12:22:55Z",
        "description": "The date of the fraud case attack."
      },
      "FraudCaseDescription": {
        "type": "string",
        "example": "Company received information from fake email address.",
        "description": "The description of the fraud case."
      },
      "WorkspaceConfigurationPage": {
        "type": "object",
        "description": "Paginate through workspace configuration results.",
        "properties": {
          "startAfter": {
            "$ref": "#/components/schemas/StartAfter"
          },
          "nextStartAfter": {
            "$ref": "#/components/schemas/NextStartAfter"
          },
          "total": {
            "$ref": "#/components/schemas/PageTotal"
          },
          "values": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WorkspaceConfigurationSearchResult"
            }
          }
        }
      },
      "WorkspaceConfigurationSearchResult": {
        "type": "object",
        "description": "Represents the search results of workspace configurations.",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/ConfigurationId"
          },
          "name": {
            "$ref": "#/components/schemas/ConfigurationName"
          },
          "createdAt": {
            "$ref": "#/components/schemas/CreatedAt"
          },
          "modifiedAt": {
            "$ref": "#/components/schemas/ModifiedAt"
          },
          "createdBy": {
            "$ref": "#/components/schemas/CreatedBy"
          }
        }
      },
      "EmailVerificationConfigurationCreate": {
        "type": "object",
        "description": "Used to create new email verification configurations.",
        "required": [
          "name",
          "configuration"
        ],
        "properties": {
          "name": {
            "$ref": "#/components/schemas/ConfigurationName"
          },
          "configuration": {
            "$ref": "#/components/schemas/EmailVerificationConfigurationData"
          }
        }
      },
      "EmailVerificationConfigurationUpdate": {
        "type": "object",
        "description": "Used to update existing email verification configurations.",
        "properties": {
          "transactionId": {
            "$ref": "#/components/schemas/TransactionId"
          },
          "featuresOn": {
            "$ref": "#/components/schemas/TransactionFeaturesOn"
          },
          "name": {
            "$ref": "#/components/schemas/ConfigurationName"
          },
          "configuration": {
            "$ref": "#/components/schemas/EmailVerificationConfigurationData"
          }
        }
      },
      "EmailVerificationConfiguration": {
        "type": "object",
        "description": "Represents an email verification configuration with metadata.",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/ConfigurationId"
          },
          "name": {
            "$ref": "#/components/schemas/ConfigurationName"
          },
          "version": {
            "$ref": "#/components/schemas/ConfigurationVersionNumber"
          },
          "configuration": {
            "$ref": "#/components/schemas/EmailVerificationConfigurationData"
          },
          "createdAt": {
            "$ref": "#/components/schemas/CreatedAt"
          },
          "modifiedAt": {
            "$ref": "#/components/schemas/ModifiedAt"
          },
          "createdBy": {
            "$ref": "#/components/schemas/CreatedBy"
          },
          "transactionId": {
            "$ref": "#/components/schemas/TransactionId"
          }
        }
      },
      "EmailVerificationConfigurationVersion": {
        "type": "object",
        "description": "Specific version of an email verification configuration.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the email verification configuration version. Not to be confused with the configuration ID.",
            "example": "c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4"
          },
          "name": {
            "type": "string",
            "description": "The name of the configuration",
            "example": "Configuration Name"
          },
          "configurationId": {
            "$ref": "#/components/schemas/ConfigurationId"
          },
          "version": {
            "$ref": "#/components/schemas/ConfigurationVersionNumber"
          },
          "configuration": {
            "$ref": "#/components/schemas/EmailVerificationConfigurationData"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time when the first version of the configuration was created (ISO 8601-compliant).",
            "example": "2026-03-13T12:22:55Z"
          },
          "modifiedAt": {
            "type": "string",
            "description": "Date and time when this version of the configuration was created (ISO 8601-compliant).",
            "example": "2026-03-13T12:22:55Z"
          },
          "createdBy": {
            "type": "string",
            "description": "User who created the first version of the configuration.",
            "example": "69129435489347624"
          },
          "modifiedBy": {
            "type": "string",
            "description": "User who created this version of the configuration.",
            "example": "76248934691294444"
          }
        }
      },
      "ConfigurationVersionNumber": {
        "type": "integer",
        "description": "Version number of the configuration.",
        "example": 1
      },
      "EmailVerificationConfigurationData": {
        "type": "object",
        "description": "Represents an email verification configuration.",
        "required": [
          "disposableMailChecker",
          "dnsblChecker",
          "freemailChecker",
          "roleCategoryChecker",
          "whoisChecker",
          "sharedEmailChecker",
          "dataBreachChecker",
          "fraudCaseChecker"
        ],
        "properties": {
          "disposableMailChecker": {
            "$ref": "#/components/schemas/DisposableMailCheckerConfiguration"
          },
          "dnsblChecker": {
            "$ref": "#/components/schemas/DnsblCheckerConfiguration"
          },
          "freemailChecker": {
            "$ref": "#/components/schemas/FreemailCheckerConfiguration"
          },
          "roleCategoryChecker": {
            "$ref": "#/components/schemas/RoleCategoryCheckerConfiguration"
          },
          "whoisChecker": {
            "$ref": "#/components/schemas/WhoisCheckerConfiguration"
          },
          "sharedEmailChecker": {
            "$ref": "#/components/schemas/SharedEmailCheckerConfiguration"
          },
          "dataBreachChecker": {
            "$ref": "#/components/schemas/DataBreachCheckerConfiguration"
          },
          "fraudCaseChecker": {
            "$ref": "#/components/schemas/FraudCaseCheckerConfiguration"
          }
        }
      },
      "DisposableMailCheckerConfiguration": {
        "type": "object",
        "description": "Configuration for the disposable mail checker.",
        "required": [
          "isEnabled",
          "isRiskCalculationEnabled",
          "disposableFactorWeight"
        ],
        "properties": {
          "isEnabled": {
            "$ref": "#/components/schemas/CheckerIsEnabled"
          },
          "isRiskCalculationEnabled": {
            "$ref": "#/components/schemas/CheckerIsRiskCalculationEnabled"
          },
          "disposableFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          }
        }
      },
      "DnsblCheckerConfiguration": {
        "type": "object",
        "description": "Configuration for the DNSBL checker.",
        "required": [
          "isEnabled",
          "isRiskCalculationEnabled",
          "dnsblFactorWeight"
        ],
        "properties": {
          "isEnabled": {
            "$ref": "#/components/schemas/CheckerIsEnabled"
          },
          "isRiskCalculationEnabled": {
            "$ref": "#/components/schemas/CheckerIsRiskCalculationEnabled"
          },
          "dnsblFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          }
        }
      },
      "FreemailCheckerConfiguration": {
        "type": "object",
        "description": "Configuration for the freemail checker.",
        "required": [
          "isEnabled",
          "isRiskCalculationEnabled",
          "freemailFactorWeight"
        ],
        "properties": {
          "isEnabled": {
            "$ref": "#/components/schemas/CheckerIsEnabled"
          },
          "isRiskCalculationEnabled": {
            "$ref": "#/components/schemas/CheckerIsRiskCalculationEnabled"
          },
          "freemailFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          }
        }
      },
      "RoleCategoryCheckerConfiguration": {
        "type": "object",
        "description": "Configuration for the role category checker.",
        "required": [
          "isEnabled"
        ],
        "properties": {
          "isEnabled": {
            "$ref": "#/components/schemas/CheckerIsEnabled"
          }
        }
      },
      "WhoisCheckerConfiguration": {
        "type": "object",
        "description": "Configuration for the WHOIS checker.",
        "required": [
          "isEnabled",
          "isRiskCalculationEnabled",
          "newBornDomainFactorWeight",
          "youngDomainFactorWeight",
          "oldDomainFactorWeight",
          "notPublicFactorWeight",
          "youngDomainAgeThreshold",
          "oldDomainAgeThreshold"
        ],
        "properties": {
          "isEnabled": {
            "$ref": "#/components/schemas/CheckerIsEnabled"
          },
          "isRiskCalculationEnabled": {
            "$ref": "#/components/schemas/CheckerIsRiskCalculationEnabled"
          },
          "newBornDomainFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "youngDomainFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "oldDomainFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "notPublicFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "youngDomainAgeThreshold": {
            "$ref": "#/components/schemas/DomainAgeThreshold"
          },
          "oldDomainAgeThreshold": {
            "$ref": "#/components/schemas/DomainAgeThreshold"
          }
        }
      },
      "DomainAgeThreshold": {
        "type": "integer",
        "minimum": 0,
        "description": "The threshold in days for age of a domain.",
        "example": 365
      },
      "SharedEmailCheckerConfiguration": {
        "type": "object",
        "description": "Configuration for the shared email checker.",
        "required": [
          "isEnabled",
          "isRiskCalculationEnabled",
          "sharedEmailAddressFactorWeight"
        ],
        "properties": {
          "isEnabled": {
            "$ref": "#/components/schemas/CheckerIsEnabled"
          },
          "isRiskCalculationEnabled": {
            "$ref": "#/components/schemas/CheckerIsRiskCalculationEnabled"
          },
          "sharedEmailAddressFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          }
        }
      },
      "DataBreachCheckerConfiguration": {
        "type": "object",
        "description": "Configuration for the data breach checker.",
        "required": [
          "isEnabled",
          "isRiskCalculationEnabled",
          "recentDataBreachFactorWeight",
          "youngDataBreachFactorWeight",
          "oldDataBreachFactorWeight",
          "breachWithPasswordFactorWeight",
          "breachWithMalwareFactorWeight",
          "inflationaryBreachesFactorWeight",
          "breachedDomainFactorWeight",
          "youngDataBreachAgeThreshold",
          "oldDataBreachAgeThreshold",
          "inflationaryBreachesCountThreshold"
        ],
        "properties": {
          "isEnabled": {
            "$ref": "#/components/schemas/CheckerIsEnabled"
          },
          "isRiskCalculationEnabled": {
            "$ref": "#/components/schemas/CheckerIsRiskCalculationEnabled"
          },
          "recentDataBreachFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "youngDataBreachFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "oldDataBreachFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "breachWithPasswordFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "breachWithMalwareFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "inflationaryBreachesFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "breachedDomainFactorWeight": {
            "$ref": "#/components/schemas/FactorWeight"
          },
          "youngDataBreachAgeThreshold": {
            "$ref": "#/components/schemas/DataBreachAgeThreshold"
          },
          "oldDataBreachAgeThreshold": {
            "$ref": "#/components/schemas/DataBreachAgeThreshold"
          },
          "inflationaryBreachesCountThreshold": {
            "$ref": "#/components/schemas/InflationaryBreachesCountThreshold"
          }
        }
      },
      "DataBreachAgeThreshold": {
        "type": "integer",
        "minimum": 0,
        "description": "The threshold in days for age of a data breach.",
        "example": 365
      },
      "InflationaryBreachesCountThreshold": {
        "type": "integer",
        "minimum": 0,
        "description": "The threshold for the number of breaches to be considered inflationary.",
        "example": 10
      },
      "FraudCaseCheckerConfiguration": {
        "type": "object",
        "description": "Configuration for the fraud case checker.",
        "required": [
          "isEnabled",
          "isRiskCalculationEnabled"
        ],
        "properties": {
          "isEnabled": {
            "$ref": "#/components/schemas/CheckerIsEnabled"
          },
          "isRiskCalculationEnabled": {
            "$ref": "#/components/schemas/CheckerIsRiskCalculationEnabled"
          }
        }
      },
      "CheckerIsEnabled": {
        "type": "boolean",
        "description": "Indicates whether the checker is enabled.",
        "example": true
      },
      "CheckerIsRiskCalculationEnabled": {
        "type": "boolean",
        "description": "Indicates whether the risk calculation for given checker is enabled.",
        "example": true
      },
      "FactorWeight": {
        "type": "integer",
        "minimum": 0,
        "maximum": 100,
        "description": "The weight of the factor in the risk score calculation.",
        "example": 20
      },
      "RelatedConfigurationId": {
        "type": "string",
        "description": "Id of the related configuration",
        "example": "a0200062daa56952a8640005"
      },
      "RelatedConfigurationOwner": {
        "type": "object",
        "description": "Configuration which relates to the root configuration.",
        "properties": {
          "service": {
            "$ref": "#/components/schemas/RelatedConfigurationOwnerService"
          },
          "path": {
            "$ref": "#/components/schemas/RelatedConfigurationOwnerPath"
          }
        }
      },
      "RelatedConfigurationOwnerService": {
        "type": "string",
        "description": "Name of the service which is the owner of the configuration.",
        "example": "reference-data-api"
      },
      "RelatedConfigurationOwnerPath": {
        "type": "string",
        "description": "Endpoint used to read the related configuration.",
        "example": "/public/configurations/businesspartnerlookup"
      },
      "TransactionId": {
        "type": "string",
        "description": "Id of the transaction, pass it in subsequent requests to make them part of the transaction",
        "example": "8e37da1e-ee9d-4ee0-b03d-24a1f89988f2"
      },
      "TransactionFeaturesOn": {
        "description": "Features to be enabled. Do not use CREATE_TRANSACTION and COMMIT_TRANSACTION at the same time.",
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/TransactionFeatureParam"
        }
      },
      "TransactionFeatureParam": {
        "type": "string",
        "description": "Feature used to control transaction process.",
        "example": "CREATE_TRANSACTION",
        "enum": [
          "CREATE_TRANSACTION",
          "COMMIT_TRANSACTION"
        ],
        "x-enumDescriptions": {
          "CREATE_TRANSACTION": "Creates a new transaction and makes the current request a part of it. By default turned off.",
          "COMMIT_TRANSACTION": "Commit transaction. By default turned off."
        }
      },
      "ConfigurationId": {
        "type": "string",
        "description": "Uniquely identifies a configuration.",
        "example": "c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4"
      },
      "HttpStatusCode": {
        "type": "integer",
        "description": "RFC 7231 status code for this error.",
        "example": "200"
      },
      "HttpStatusTechnicalKey": {
        "type": "string",
        "description": "Technical key describing the status or error",
        "example": "OK"
      },
      "StatusDetailsMessageId": {
        "type": "integer",
        "description": "9-digit code which is uniquely identifying a message",
        "example": 200000004
      },
      "StatusDetailsMessage": {
        "type": "string",
        "description": "Human-readable message which may also be presented in user interface.",
        "example": "The job came to an end and finished successfully."
      },
      "StatusDetailsTechnicalKey": {
        "type": "string",
        "description": "Technical key to uniquely identify a message.",
        "example": "JOB_FINISHED"
      },
      "JsonPath": {
        "type": "string",
        "description": "JSONPath as specified by the IETF standard",
        "example": "$.businessPartner.names[0].value"
      },
      "JsonObject": {
        "type": "string",
        "description": "Object provided in plain JSON format.",
        "example": "{ \"key\" : \"value\"}",
        "additionalProperties": true
      },
      "StatusDetails": {
        "type": "object",
        "description": "Details about this status or error",
        "required": [
          "id",
          "message"
        ],
        "properties": {
          "id": {
            "$ref": "#/components/schemas/StatusDetailsMessageId"
          },
          "message": {
            "$ref": "#/components/schemas/StatusDetailsMessage"
          },
          "technicalKey": {
            "$ref": "#/components/schemas/StatusDetailsTechnicalKey"
          },
          "jsonPath": {
            "$ref": "#/components/schemas/JsonPath"
          },
          "jsonRecord": {
            "$ref": "#/components/schemas/JsonObject"
          }
        }
      },
      "HttpPath": {
        "type": "string",
        "description": "Requested path which caused this error.",
        "example": "/v2/businesspartners/lookup"
      },
      "StatusTimestamp": {
        "type": "string",
        "description": "ISO 8601 representation of the timestamp.",
        "example": "2026-03-13T12:22:55Z"
      },
      "Status": {
        "type": "object",
        "description": "Details about status or error of a service",
        "required": [
          "code",
          "technicalKey",
          "details"
        ],
        "properties": {
          "code": {
            "$ref": "#/components/schemas/HttpStatusCode"
          },
          "technicalKey": {
            "$ref": "#/components/schemas/HttpStatusTechnicalKey"
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StatusDetails"
            }
          },
          "path": {
            "$ref": "#/components/schemas/HttpPath"
          },
          "timestamp": {
            "$ref": "#/components/schemas/StatusTimestamp"
          }
        }
      },
      "WebsiteUrl": {
        "type": "string",
        "description": "The actual company website URL.",
        "example": "https://meta.cdq.com/Public:CDQ_data_model"
      },
      "ApiError": {
        "type": "object",
        "description": "Detailed information about API errors.",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          }
        }
      },
      "Limit": {
        "type": "integer",
        "description": "Number of items per page.",
        "example": "100"
      },
      "StartAfter": {
        "type": "string",
        "description": "The ID which is used to read the page.",
        "example": "5712566172571652"
      },
      "NextStartAfter": {
        "type": "string",
        "description": "Provides a value to be used as a startAfter in next page request.",
        "example": "5712566172571652"
      },
      "PageTotal": {
        "description": "Total number of items which can be paged.",
        "example": "67",
        "type": "integer"
      },
      "ConfigurationName": {
        "type": "string",
        "description": "Display name for a configuration.",
        "example": "Client configuration."
      },
      "CreatedAt": {
        "type": "string",
        "description": "Date of creation (ISO 8601-compliant).",
        "example": "2026-03-13T12:22:55Z"
      },
      "ModifiedAt": {
        "type": "string",
        "description": "Date of modification (ISO 8601-compliant).",
        "example": "2026-03-13T12:22:55Z"
      },
      "CreatedBy": {
        "type": "string",
        "description": "Creator of a resource.",
        "example": "76248934691294444"
      },
      "WorkspaceId": {
        "type": "string",
        "description": "Uniquely identifying ID of the workspace.",
        "example": "c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4"
      },
      "NameValue": {
        "type": "string",
        "description": "The actual name.",
        "example": "Corporate Data Quality AG"
      },
      "CountryShortName": {
        "type": "string",
        "description": "Country code (ISO 3166-1 alpha-2).",
        "example": "CH"
      }
    }
  }
}