APIAPI reference
Validate reaction records and complete atom conservation
POST /v1/chemistry/validate
POST /v1/chemistry/validate
Authorization
This operation requires a bearer credential. The description defines additional role, scope or first-party-session restrictions; an API key does not grant those permissions by itself.
Request body
| Property | Type | Required | Details |
|---|---|---|---|
reaction_smiles | string | yes | |
mode | "strict" ∣ "training" | no | Default: "strict". |
conditions | ChemistryConditions ∣ null | no | |
patent | string ∣ null | no | |
year | integer ∣ null | no | |
include_agents_in_balance | boolean | no | Default: false. |
Full schema: ValidateReactionRequest
{
"properties": {
"reaction_smiles": {
"type": "string",
"maxLength": 10000,
"minLength": 1,
"title": "Reaction Smiles"
},
"mode": {
"type": "string",
"enum": [
"strict",
"training"
],
"title": "Mode",
"default": "strict"
},
"conditions": {
"anyOf": [
{
"$ref": "#/components/schemas/ChemistryConditions"
},
{
"type": "null"
}
]
},
"patent": {
"anyOf": [
{
"type": "string",
"maxLength": 300,
"minLength": 1
},
{
"type": "null"
}
],
"title": "Patent"
},
"year": {
"anyOf": [
{
"type": "integer",
"maximum": 9999,
"minimum": 1
},
{
"type": "null"
}
],
"title": "Year"
},
"include_agents_in_balance": {
"type": "boolean",
"title": "Include Agents In Balance",
"default": false
}
},
"additionalProperties": false,
"type": "object",
"required": [
"reaction_smiles"
],
"title": "ValidateReactionRequest"
}Responses
| HTTP | Details | Type |
|---|---|---|
| 200 | Successful Response | application/json: ReactionValidationResult |
| 401 | Unauthorized | application/problem+json: ProblemDetails |
| 402 | Payment Required | application/problem+json: ProblemDetails |
| 403 | Forbidden | application/problem+json: ProblemDetails |
| 408 | Request Timeout | application/problem+json: ProblemDetails |
| 413 | Request Entity Too Large | application/problem+json: ProblemDetails |
| 422 | Unprocessable Entity | application/problem+json: ProblemDetails |
| 429 | Too Many Requests | application/problem+json: ProblemDetails |
| 502 | Bad Gateway | application/problem+json: ProblemDetails |
| 503 | Service Unavailable | application/problem+json: ProblemDetails |
Response: ReactionValidationResult
| Property | Type | Required | Details |
|---|---|---|---|
valid | boolean | yes | |
mode | "strict" ∣ "training" | yes | |
reaction_smiles | string | yes | |
canonical_reaction_smiles | string ∣ null | yes | |
identity_transformation | boolean | yes | |
include_agents_in_balance | boolean | yes | |
validator | ValidatorVerdict | yes | |
atom_balance | AtomConservation | yes | |
errors | ChemistryIssue[] | yes | |
warnings | ChemistryIssue[] | yes | |
limitations | string[] | yes |
Full schema
{
"properties": {
"valid": {
"type": "boolean",
"title": "Valid"
},
"mode": {
"type": "string",
"enum": [
"strict",
"training"
],
"title": "Mode"
},
"reaction_smiles": {
"type": "string",
"title": "Reaction Smiles"
},
"canonical_reaction_smiles": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Canonical Reaction Smiles"
},
"identity_transformation": {
"type": "boolean",
"title": "Identity Transformation"
},
"include_agents_in_balance": {
"type": "boolean",
"title": "Include Agents In Balance"
},
"validator": {
"$ref": "#/components/schemas/ValidatorVerdict"
},
"atom_balance": {
"$ref": "#/components/schemas/AtomConservation"
},
"errors": {
"items": {
"$ref": "#/components/schemas/ChemistryIssue"
},
"type": "array",
"title": "Errors"
},
"warnings": {
"items": {
"$ref": "#/components/schemas/ChemistryIssue"
},
"type": "array",
"title": "Warnings"
},
"limitations": {
"items": {
"type": "string"
},
"type": "array",
"title": "Limitations"
}
},
"additionalProperties": true,
"type": "object",
"required": [
"valid",
"mode",
"reaction_smiles",
"canonical_reaction_smiles",
"identity_transformation",
"include_agents_in_balance",
"validator",
"atom_balance",
"errors",
"warnings",
"limitations"
],
"title": "ReactionValidationResult"
}This page is generated from OpenAPI; examples are schemas, not a fabricated successful response.