Skip to main content
Glama

Get a task result

get_task
Read-onlyIdempotent

The result of a run_* tool, or TaskPending while it runs.

Use when: you hold a task_id from seo_run_technical_crawl or aeo_run_ai_answers. Not for: starting work; call the run_* tool first. Returns: Record. The same shape the synchronous tool would return, under result, with meta.credits_charged as settled. A task still running holds the call up to 25 seconds, then answers TaskPending: call get_task again at once, with no wait first. TaskFailed carries the reason. Cost: 0 credits. Example: {"task_id": "task_01J..."}

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
task_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
metaYes
errorNo
hintsYes
resultNo
task_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed14 schema fields changed
    • removedInput schema / $schema
      Removed value: -"https://json-schema.org/draft/2020-12/schema"
    • removedInput schema / properties / dry_run
      Removed value: -{
      -  "default": false,
      -  "description": "Return only meta with the estimate. Costs nothing.",
      -  "type": "boolean"
      -}
    • removedInput schema / properties / max_credits
      Removed value: -{
      -  "description": "Refuse with BudgetExceeded if the estimate is higher.",
      -  "maximum": 9007199254740991,
      -  "minimum": 0,
      -  "type": "integer"
      -}
    • removedOutput schema / $schema
      Removed value: -"https://json-schema.org/draft/2020-12/schema"
    • addedOutput schema / properties / error / additionalProperties
      Added value: +{}
    • removedOutput schema / properties / error / oneOf
      Removed value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "BudgetExceeded",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "max_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "max_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "billing_url": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "InsufficientCredits",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "upgrade_url": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "NoData",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "InvalidTarget",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "target": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "target",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "InvalidProvider",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "provider": {
      -        "type": "string"
      -      },
      -      "valid_providers": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "provider",
      -      "valid_providers",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ProviderUnavailable",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "provider": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "provider",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ConcurrencyLimit",
      -        "type": "string"
      -      },
      -      "limit": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "limit",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "cap": {
      -        "type": "number"
      -      },
      -      "error": {
      -        "const": "SpendCapReached",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "period": {
      -        "enum": [
      -          "day",
      -          "month"
      -        ],
      -        "type": "string"
      -      },
      -      "resets_at": {
      -        "type": "string"
      -      },
      -      "spent": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "period",
      -      "cap",
      -      "spent",
      -      "est_credits",
      -      "resets_at",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskFailed",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskPending",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "poll_after_s": {
      -        "type": "number"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "poll_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "connect_url": {
      -        "type": "string"
      -      },
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "NotConnected",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "connect_url",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "EngineMisconfigured",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "message"
      -    ],
      -    "type": "object"
      -  }
      -]
    • addedOutput schema / properties / error / properties
      Added value: +{
      +  "error": {
      +    "enum": [
      +      "BudgetExceeded",
      +      "InsufficientCredits",
      +      "NoData",
      +      "InvalidTarget",
      +      "InvalidProvider",
      +      "ProviderUnavailable",
      +      "ConcurrencyLimit",
      +      "SpendCapReached",
      +      "TaskFailed",
      +      "TaskPending",
      +      "NotConnected",
      +      "EngineMisconfigured"
      +    ],
      +    "type": "string"
      +  },
      +  "message": {
      +    "type": "string"
      +  }
      +}
    • addedOutput schema / properties / error / required
      Added value: +[
      +  "error",
      +  "message"
      +]
    • addedOutput schema / properties / error / type
      Added value: +"object"
    • removedOutput schema / properties / errors
      Removed value: -{
      -  "description": "Per-input failures of a batch call.",
      -  "items": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "oneOf": [
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "error": {
      -                "const": "BudgetExceeded",
      -                "type": "string"
      -              },
      -              "est_credits": {
      -                "type": "number"
      -              },
      -              "max_credits": {
      -                "type": "number"
      -              },
      -              "message": {
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "est_credits",
      -              "max_credits",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "billing_url": {
      -                "type": "string"
      -              },
      -              "error": {
      -                "const": "InsufficientCredits",
      -                "type": "string"
      -              },
      -              "est_credits": {
      -                "type": "number"
      -              },
      -              "message": {
      -                "type": "string"
      -              },
      -              "upgrade_url": {
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "est_credits",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "error": {
      -                "const": "NoData",
      -                "type": "string"
      -              },
      -              "message": {
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "error": {
      -                "const": "InvalidTarget",
      -                "type": "string"
      -              },
      -              "message": {
      -                "type": "string"
      -              },
      -              "target": {
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "target",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "error": {
      -                "const": "InvalidProvider",
      -                "type": "string"
      -              },
      -              "message": {
      -                "type": "string"
      -              },
      -              "provider": {
      -                "type": "string"
      -              },
      -              "valid_providers": {
      -                "items": {
      -                  "type": "string"
      -                },
      -                "type": "array"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "provider",
      -              "valid_providers",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "error": {
      -                "const": "ProviderUnavailable",
      -                "type": "string"
      -              },
      -              "message": {
      -                "type": "string"
      -              },
      -              "provider": {
      -                "type": "string"
      -              },
      -              "retry_after_s": {
      -                "type": "number"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "provider",
      -              "retry_after_s",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "error": {
      -                "const": "ConcurrencyLimit",
      -                "type": "string"
      -              },
      -              "limit": {
      -                "type": "number"
      -              },
      -              "message": {
      -                "type": "string"
      -              },
      -              "retry_after_s": {
      -                "type": "number"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "limit",
      -              "retry_after_s",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "cap": {
      -                "type": "number"
      -              },
      -              "error": {
      -                "const": "SpendCapReached",
      -                "type": "string"
      -              },
      -              "est_credits": {
      -                "type": "number"
      -              },
      -              "message": {
      -                "type": "string"
      -              },
      -              "period": {
      -                "enum": [
      -                  "day",
      -                  "month"
      -                ],
      -                "type": "string"
      -              },
      -              "resets_at": {
      -                "type": "string"
      -              },
      -              "spent": {
      -                "type": "number"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "period",
      -              "cap",
      -              "spent",
      -              "est_credits",
      -              "resets_at",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "error": {
      -                "const": "TaskFailed",
      -                "type": "string"
      -              },
      -              "message": {
      -                "type": "string"
      -              },
      -              "task_id": {
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "task_id",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "error": {
      -                "const": "TaskPending",
      -                "type": "string"
      -              },
      -              "message": {
      -                "type": "string"
      -              },
      -              "poll_after_s": {
      -                "type": "number"
      -              },
      -              "task_id": {
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "task_id",
      -              "poll_after_s",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "connect_url": {
      -                "type": "string"
      -              },
      -              "engine": {
      -                "type": "string"
      -              },
      -              "error": {
      -                "const": "NotConnected",
      -                "type": "string"
      -              },
      -              "message": {
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "engine",
      -              "connect_url",
      -              "message"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "engine": {
      -                "type": "string"
      -              },
      -              "error": {
      -                "const": "EngineMisconfigured",
      -                "type": "string"
      -              },
      -              "message": {
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "error",
      -              "engine",
      -              "message"
      -            ],
      -            "type": "object"
      -          }
      -        ]
      -      },
      -      "input": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "input",
      -      "error"
      -    ],
      -    "type": "object"
      -  },
      -  "type": "array"
      -}
    • changedOutput schema / properties / meta / properties / rows_available / anyOf
      Previous value: -[
      -  {
      -    "maximum": 9007199254740991,
      -    "minimum": -9007199254740991,
      -    "type": "integer"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "type": "integer"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedOutput schema / properties / meta / properties / rows_returned / maximum
      Removed value: -9007199254740991
    • removedOutput schema / properties / meta / properties / rows_returned / minimum
      Removed value: --9007199254740991
    • changedOutput schema / properties / result / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "broken_links": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "broken_resources": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "duplicate_descriptions": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "duplicate_titles": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "issues": {
      -        "description": "Checks that failed on at least one page, most pages first.",
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "check": {
      -              "description": "OnPage check name, for example duplicate_title or no_h1_tag.",
      -              "type": "string"
      -            },
      -            "pages": {
      -              "maximum": 9007199254740991,
      -              "minimum": -9007199254740991,
      -              "type": "integer"
      -            },
      -            "sample_urls": {
      -              "items": {
      -                "type": "string"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            }
      -          },
      -          "required": [
      -            "check",
      -            "pages",
      -            "sample_urls"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "non_indexable": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "onpage_score": {
      -        "type": [
      -          "number",
      -          "null"
      -        ]
      -      },
      -      "pages_crawled": {
      -        "maximum": 9007199254740991,
      -        "minimum": -9007199254740991,
      -        "type": "integer"
      -      },
      -      "pages_requested": {
      -        "maximum": 9007199254740991,
      -        "minimum": -9007199254740991,
      -        "type": "integer"
      -      },
      -      "rendered": {
      -        "type": "boolean"
      -      },
      -      "status_codes": {
      -        "additionalProperties": {
      -          "maximum": 9007199254740991,
      -          "minimum": -9007199254740991,
      -          "type": "integer"
      -        },
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "target": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "target",
      -      "pages_requested",
      -      "pages_crawled",
      -      "rendered",
      -      "onpage_score",
      -      "status_codes",
      -      "broken_links",
      -      "broken_resources",
      -      "non_indexable",
      -      "duplicate_titles",
      -      "duplicate_descriptions",
      -      "issues"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "brands": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "engines": {
      -        "items": {
      -          "enum": [
      -            "chatgpt",
      -            "claude",
      -            "gemini",
      -            "perplexity",
      -            "ai_overview",
      -            "ai_mode"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "errors": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "error": {
      -              "additionalProperties": {},
      -              "properties": {
      -                "error": {
      -                  "type": "string"
      -                },
      -                "message": {
      -                  "type": "string"
      -                }
      -              },
      -              "required": [
      -                "error",
      -                "message"
      -              ],
      -              "type": "object"
      -            },
      -            "input": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "input",
      -            "error"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "prompts": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "rows": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "answer": {
      -              "description": "The answer text. null when the engine showed no AI answer for the prompt.",
      -              "type": [
      -                "string",
      -                "null"
      -              ]
      -            },
      -            "answered_at": {
      -              "type": [
      -                "string",
      -                "null"
      -              ]
      -            },
      -            "citations": {
      -              "items": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "domain": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "position": {
      -                    "description": "Order of first citation in the answer, 1-based.",
      -                    "maximum": 9007199254740991,
      -                    "minimum": -9007199254740991,
      -                    "type": "integer"
      -                  },
      -                  "title": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "url": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  }
      -                },
      -                "required": [
      -                  "position",
      -                  "url",
      -                  "domain",
      -                  "title"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "engine": {
      -              "enum": [
      -                "chatgpt",
      -                "claude",
      -                "gemini",
      -                "perplexity",
      -                "ai_overview",
      -                "ai_mode"
      -              ],
      -              "type": "string"
      -            },
      -            "mentions": {
      -              "description": "One entry per brand given, in the order given.",
      -              "items": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "brand": {
      -                    "type": "string"
      -                  },
      -                  "cited": {
      -                    "description": "A citation points at the brand's domain.",
      -                    "type": "boolean"
      -                  },
      -                  "mentioned": {
      -                    "description": "The brand name or domain appears in the answer text.",
      -                    "type": "boolean"
      -                  },
      -                  "position": {
      -                    "anyOf": [
      -                      {
      -                        "maximum": 9007199254740991,
      -                        "minimum": -9007199254740991,
      -                        "type": "integer"
      -                      },
      -                      {
      -                        "type": "null"
      -                      }
      -                    ],
      -                    "description": "Order of first mention among the brands given, 1-based; null when not mentioned."
      -                  }
      -                },
      -                "required": [
      -                  "brand",
      -                  "mentioned",
      -                  "position",
      -                  "cited"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "model": {
      -              "description": "The model version that answered, or null for Google.",
      -              "type": [
      -                "string",
      -                "null"
      -              ]
      -            },
      -            "named_brands": {
      -              "default": [],
      -              "description": "Brands ChatGPT tagged in its answer, not only those given, kept where the answer text names them. Empty for other engines.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "prompt": {
      -              "type": "string"
      -            },
      -            "search_queries": {
      -              "default": [],
      -              "description": "The web searches the engine ran to answer. Empty when it does not say.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "search_results": {
      -              "default": [],
      -              "description": "Pages the engine retrieved while answering, cited or not. Empty when it does not say.",
      -              "items": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "domain": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "position": {
      -                    "description": "Order of first citation in the answer, 1-based.",
      -                    "maximum": 9007199254740991,
      -                    "minimum": -9007199254740991,
      -                    "type": "integer"
      -                  },
      -                  "title": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "url": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  }
      -                },
      -                "required": [
      -                  "position",
      -                  "url",
      -                  "domain",
      -                  "title"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            }
      -          },
      -          "required": [
      -            "engine",
      -            "model",
      -            "answer",
      -            "citations",
      -            "search_results",
      -            "search_queries",
      -            "named_brands",
      -            "answered_at",
      -            "prompt",
      -            "mentions"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "prompts",
      -      "engines",
      -      "brands",
      -      "rows",
      -      "errors"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "broken_links": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "broken_resources": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "duplicate_descriptions": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "duplicate_titles": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "issues": {
      +        "description": "Checks that failed on at least one page, most pages first.",
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "check": {
      +              "description": "OnPage check name, for example duplicate_title or no_h1_tag.",
      +              "type": "string"
      +            },
      +            "pages": {
      +              "type": "integer"
      +            },
      +            "sample_urls": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "check",
      +            "pages",
      +            "sample_urls"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "non_indexable": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "onpage_score": {
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      },
      +      "pages_crawled": {
      +        "type": "integer"
      +      },
      +      "pages_requested": {
      +        "type": "integer"
      +      },
      +      "rendered": {
      +        "type": "boolean"
      +      },
      +      "status_codes": {
      +        "additionalProperties": {
      +          "type": "integer"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "target": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "target",
      +      "pages_requested",
      +      "pages_crawled",
      +      "rendered",
      +      "onpage_score",
      +      "status_codes",
      +      "broken_links",
      +      "broken_resources",
      +      "non_indexable",
      +      "duplicate_titles",
      +      "duplicate_descriptions",
      +      "issues"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "brands": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "engines": {
      +        "items": {
      +          "enum": [
      +            "chatgpt",
      +            "claude",
      +            "gemini",
      +            "perplexity",
      +            "ai_overview",
      +            "ai_mode"
      +          ],
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "errors": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "error": {
      +              "additionalProperties": {},
      +              "properties": {
      +                "error": {
      +                  "type": "string"
      +                },
      +                "message": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "error",
      +                "message"
      +              ],
      +              "type": "object"
      +            },
      +            "input": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "input",
      +            "error"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "prompts": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "rows": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "answer": {
      +              "description": "The answer text. null when the engine showed no AI answer for the prompt.",
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "answered_at": {
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "citations": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "domain": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "position": {
      +                    "description": "Order of first citation in the answer, 1-based.",
      +                    "type": "integer"
      +                  },
      +                  "title": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "url": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "position",
      +                  "url",
      +                  "domain",
      +                  "title"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "engine": {
      +              "enum": [
      +                "chatgpt",
      +                "claude",
      +                "gemini",
      +                "perplexity",
      +                "ai_overview",
      +                "ai_mode"
      +              ],
      +              "type": "string"
      +            },
      +            "mentions": {
      +              "description": "One entry per brand given, in the order given.",
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "brand": {
      +                    "type": "string"
      +                  },
      +                  "cited": {
      +                    "description": "A citation points at the brand's domain.",
      +                    "type": "boolean"
      +                  },
      +                  "mentioned": {
      +                    "description": "The brand name or domain appears in the answer text.",
      +                    "type": "boolean"
      +                  },
      +                  "position": {
      +                    "anyOf": [
      +                      {
      +                        "type": "integer"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ],
      +                    "description": "Order of first mention among the brands given, 1-based; null when not mentioned."
      +                  }
      +                },
      +                "required": [
      +                  "brand",
      +                  "mentioned",
      +                  "position",
      +                  "cited"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "model": {
      +              "description": "The model version that answered, or null for Google.",
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "named_brands": {
      +              "default": [],
      +              "description": "Brands ChatGPT tagged in its answer, not only those given, kept where the answer text names them. Empty for other engines.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "prompt": {
      +              "type": "string"
      +            },
      +            "search_queries": {
      +              "default": [],
      +              "description": "The web searches the engine ran to answer. Empty when it does not say.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "search_results": {
      +              "default": [],
      +              "description": "Pages the engine retrieved while answering, cited or not. Empty when it does not say.",
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "domain": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "position": {
      +                    "description": "Order of first citation in the answer, 1-based.",
      +                    "type": "integer"
      +                  },
      +                  "title": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "url": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "position",
      +                  "url",
      +                  "domain",
      +                  "title"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "engine",
      +            "model",
      +            "answer",
      +            "citations",
      +            "search_results",
      +            "search_queries",
      +            "named_brands",
      +            "answered_at",
      +            "prompt",
      +            "mentions"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "prompts",
      +      "engines",
      +      "brands",
      +      "rows",
      +      "errors"
      +    ],
      +    "type": "object"
      +  }
      +]
  2. Changed3 schema fields changed
    • addedOutput schema / properties / meta / properties / credits_notice
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "A free workspace is low on credits, at most once a day. Tell the user once.",
      +  "properties": {
      +    "message": {
      +      "type": "string"
      +    },
      +    "resets_at": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "upgrade_url": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "upgrade_url",
      +    "resets_at",
      +    "message"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / meta / properties / credits_remaining
      Added value: +{
      +  "description": "The workspace's credits left after this call. null when the call did not check the balance (free tools, cache hits, dry runs, tasks) or the balance has no limit.",
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • changedOutput schema / properties / meta / required
      Previous value: -[
      -  "provider",
      -  "credits_charged",
      -  "est_credits",
      -  "cached",
      -  "data_as_of",
      -  "rows_returned",
      -  "rows_available",
      -  "cursor",
      -  "request_id"
      -]New value: +[
      +  "provider",
      +  "credits_charged",
      +  "est_credits",
      +  "cached",
      +  "data_as_of",
      +  "rows_returned",
      +  "rows_available",
      +  "cursor",
      +  "request_id",
      +  "credits_remaining"
      +]
  3. Changed1 schema field changed
    • changedOutput schema / properties / result / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "broken_links": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "broken_resources": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "duplicate_descriptions": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "duplicate_titles": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "issues": {
      -        "description": "Checks that failed on at least one page, most pages first.",
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "check": {
      -              "description": "OnPage check name, for example duplicate_title or no_h1_tag.",
      -              "type": "string"
      -            },
      -            "pages": {
      -              "maximum": 9007199254740991,
      -              "minimum": -9007199254740991,
      -              "type": "integer"
      -            },
      -            "sample_urls": {
      -              "items": {
      -                "type": "string"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            }
      -          },
      -          "required": [
      -            "check",
      -            "pages",
      -            "sample_urls"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "non_indexable": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "onpage_score": {
      -        "type": [
      -          "number",
      -          "null"
      -        ]
      -      },
      -      "pages_crawled": {
      -        "maximum": 9007199254740991,
      -        "minimum": -9007199254740991,
      -        "type": "integer"
      -      },
      -      "pages_requested": {
      -        "maximum": 9007199254740991,
      -        "minimum": -9007199254740991,
      -        "type": "integer"
      -      },
      -      "rendered": {
      -        "type": "boolean"
      -      },
      -      "status_codes": {
      -        "additionalProperties": {
      -          "maximum": 9007199254740991,
      -          "minimum": -9007199254740991,
      -          "type": "integer"
      -        },
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "target": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "target",
      -      "pages_requested",
      -      "pages_crawled",
      -      "rendered",
      -      "onpage_score",
      -      "status_codes",
      -      "broken_links",
      -      "broken_resources",
      -      "non_indexable",
      -      "duplicate_titles",
      -      "duplicate_descriptions",
      -      "issues"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "brands": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "engines": {
      -        "items": {
      -          "enum": [
      -            "chatgpt",
      -            "claude",
      -            "gemini",
      -            "perplexity",
      -            "ai_overview",
      -            "ai_mode"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "errors": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "error": {
      -              "additionalProperties": {},
      -              "properties": {
      -                "error": {
      -                  "type": "string"
      -                },
      -                "message": {
      -                  "type": "string"
      -                }
      -              },
      -              "required": [
      -                "error",
      -                "message"
      -              ],
      -              "type": "object"
      -            },
      -            "input": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "input",
      -            "error"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "prompts": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "rows": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "answer": {
      -              "description": "The answer text. null when the engine showed no AI answer for the prompt.",
      -              "type": [
      -                "string",
      -                "null"
      -              ]
      -            },
      -            "answered_at": {
      -              "type": [
      -                "string",
      -                "null"
      -              ]
      -            },
      -            "citations": {
      -              "items": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "domain": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "position": {
      -                    "description": "Order of first citation in the answer, 1-based.",
      -                    "maximum": 9007199254740991,
      -                    "minimum": -9007199254740991,
      -                    "type": "integer"
      -                  },
      -                  "title": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "url": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  }
      -                },
      -                "required": [
      -                  "position",
      -                  "url",
      -                  "domain",
      -                  "title"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "engine": {
      -              "enum": [
      -                "chatgpt",
      -                "claude",
      -                "gemini",
      -                "perplexity",
      -                "ai_overview",
      -                "ai_mode"
      -              ],
      -              "type": "string"
      -            },
      -            "mentions": {
      -              "description": "One entry per brand given, in the order given.",
      -              "items": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "brand": {
      -                    "type": "string"
      -                  },
      -                  "cited": {
      -                    "description": "A citation points at the brand's domain.",
      -                    "type": "boolean"
      -                  },
      -                  "mentioned": {
      -                    "description": "The brand name or domain appears in the answer text.",
      -                    "type": "boolean"
      -                  },
      -                  "position": {
      -                    "anyOf": [
      -                      {
      -                        "maximum": 9007199254740991,
      -                        "minimum": -9007199254740991,
      -                        "type": "integer"
      -                      },
      -                      {
      -                        "type": "null"
      -                      }
      -                    ],
      -                    "description": "Order of first mention among the brands given, 1-based; null when not mentioned."
      -                  }
      -                },
      -                "required": [
      -                  "brand",
      -                  "mentioned",
      -                  "position",
      -                  "cited"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "model": {
      -              "description": "The model version that answered, or null for Google.",
      -              "type": [
      -                "string",
      -                "null"
      -              ]
      -            },
      -            "named_brands": {
      -              "default": [],
      -              "description": "Every brand the engine marked in its answer, not only those given. Empty when it does not say.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "prompt": {
      -              "type": "string"
      -            },
      -            "search_queries": {
      -              "default": [],
      -              "description": "The web searches the engine ran to answer. Empty when it does not say.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "search_results": {
      -              "default": [],
      -              "description": "Pages the engine retrieved while answering, cited or not. Empty when it does not say.",
      -              "items": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "domain": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "position": {
      -                    "description": "Order of first citation in the answer, 1-based.",
      -                    "maximum": 9007199254740991,
      -                    "minimum": -9007199254740991,
      -                    "type": "integer"
      -                  },
      -                  "title": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "url": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  }
      -                },
      -                "required": [
      -                  "position",
      -                  "url",
      -                  "domain",
      -                  "title"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            }
      -          },
      -          "required": [
      -            "engine",
      -            "model",
      -            "answer",
      -            "citations",
      -            "search_results",
      -            "search_queries",
      -            "named_brands",
      -            "answered_at",
      -            "prompt",
      -            "mentions"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "prompts",
      -      "engines",
      -      "brands",
      -      "rows",
      -      "errors"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "broken_links": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "broken_resources": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "duplicate_descriptions": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "duplicate_titles": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "issues": {
      +        "description": "Checks that failed on at least one page, most pages first.",
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "check": {
      +              "description": "OnPage check name, for example duplicate_title or no_h1_tag.",
      +              "type": "string"
      +            },
      +            "pages": {
      +              "maximum": 9007199254740991,
      +              "minimum": -9007199254740991,
      +              "type": "integer"
      +            },
      +            "sample_urls": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "check",
      +            "pages",
      +            "sample_urls"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "non_indexable": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "onpage_score": {
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      },
      +      "pages_crawled": {
      +        "maximum": 9007199254740991,
      +        "minimum": -9007199254740991,
      +        "type": "integer"
      +      },
      +      "pages_requested": {
      +        "maximum": 9007199254740991,
      +        "minimum": -9007199254740991,
      +        "type": "integer"
      +      },
      +      "rendered": {
      +        "type": "boolean"
      +      },
      +      "status_codes": {
      +        "additionalProperties": {
      +          "maximum": 9007199254740991,
      +          "minimum": -9007199254740991,
      +          "type": "integer"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "target": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "target",
      +      "pages_requested",
      +      "pages_crawled",
      +      "rendered",
      +      "onpage_score",
      +      "status_codes",
      +      "broken_links",
      +      "broken_resources",
      +      "non_indexable",
      +      "duplicate_titles",
      +      "duplicate_descriptions",
      +      "issues"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "brands": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "engines": {
      +        "items": {
      +          "enum": [
      +            "chatgpt",
      +            "claude",
      +            "gemini",
      +            "perplexity",
      +            "ai_overview",
      +            "ai_mode"
      +          ],
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "errors": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "error": {
      +              "additionalProperties": {},
      +              "properties": {
      +                "error": {
      +                  "type": "string"
      +                },
      +                "message": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "error",
      +                "message"
      +              ],
      +              "type": "object"
      +            },
      +            "input": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "input",
      +            "error"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "prompts": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "rows": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "answer": {
      +              "description": "The answer text. null when the engine showed no AI answer for the prompt.",
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "answered_at": {
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "citations": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "domain": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "position": {
      +                    "description": "Order of first citation in the answer, 1-based.",
      +                    "maximum": 9007199254740991,
      +                    "minimum": -9007199254740991,
      +                    "type": "integer"
      +                  },
      +                  "title": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "url": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "position",
      +                  "url",
      +                  "domain",
      +                  "title"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "engine": {
      +              "enum": [
      +                "chatgpt",
      +                "claude",
      +                "gemini",
      +                "perplexity",
      +                "ai_overview",
      +                "ai_mode"
      +              ],
      +              "type": "string"
      +            },
      +            "mentions": {
      +              "description": "One entry per brand given, in the order given.",
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "brand": {
      +                    "type": "string"
      +                  },
      +                  "cited": {
      +                    "description": "A citation points at the brand's domain.",
      +                    "type": "boolean"
      +                  },
      +                  "mentioned": {
      +                    "description": "The brand name or domain appears in the answer text.",
      +                    "type": "boolean"
      +                  },
      +                  "position": {
      +                    "anyOf": [
      +                      {
      +                        "maximum": 9007199254740991,
      +                        "minimum": -9007199254740991,
      +                        "type": "integer"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ],
      +                    "description": "Order of first mention among the brands given, 1-based; null when not mentioned."
      +                  }
      +                },
      +                "required": [
      +                  "brand",
      +                  "mentioned",
      +                  "position",
      +                  "cited"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "model": {
      +              "description": "The model version that answered, or null for Google.",
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "named_brands": {
      +              "default": [],
      +              "description": "Brands ChatGPT tagged in its answer, not only those given, kept where the answer text names them. Empty for other engines.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "prompt": {
      +              "type": "string"
      +            },
      +            "search_queries": {
      +              "default": [],
      +              "description": "The web searches the engine ran to answer. Empty when it does not say.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "search_results": {
      +              "default": [],
      +              "description": "Pages the engine retrieved while answering, cited or not. Empty when it does not say.",
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "domain": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "position": {
      +                    "description": "Order of first citation in the answer, 1-based.",
      +                    "maximum": 9007199254740991,
      +                    "minimum": -9007199254740991,
      +                    "type": "integer"
      +                  },
      +                  "title": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "url": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "position",
      +                  "url",
      +                  "domain",
      +                  "title"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "engine",
      +            "model",
      +            "answer",
      +            "citations",
      +            "search_results",
      +            "search_queries",
      +            "named_brands",
      +            "answered_at",
      +            "prompt",
      +            "mentions"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "prompts",
      +      "engines",
      +      "brands",
      +      "rows",
      +      "errors"
      +    ],
      +    "type": "object"
      +  }
      +]
  4. Changed1 schema field changed
    • changedOutput schema / properties / result / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "broken_links": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "broken_resources": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "duplicate_descriptions": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "duplicate_titles": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "issues": {
      -        "description": "Checks that failed on at least one page, most pages first.",
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "check": {
      -              "description": "OnPage check name, for example duplicate_title or no_h1_tag.",
      -              "type": "string"
      -            },
      -            "pages": {
      -              "maximum": 9007199254740991,
      -              "minimum": -9007199254740991,
      -              "type": "integer"
      -            },
      -            "sample_urls": {
      -              "items": {
      -                "type": "string"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            }
      -          },
      -          "required": [
      -            "check",
      -            "pages",
      -            "sample_urls"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "non_indexable": {
      -        "anyOf": [
      -          {
      -            "maximum": 9007199254740991,
      -            "minimum": -9007199254740991,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "onpage_score": {
      -        "type": [
      -          "number",
      -          "null"
      -        ]
      -      },
      -      "pages_crawled": {
      -        "maximum": 9007199254740991,
      -        "minimum": -9007199254740991,
      -        "type": "integer"
      -      },
      -      "pages_requested": {
      -        "maximum": 9007199254740991,
      -        "minimum": -9007199254740991,
      -        "type": "integer"
      -      },
      -      "rendered": {
      -        "type": "boolean"
      -      },
      -      "status_codes": {
      -        "additionalProperties": {
      -          "maximum": 9007199254740991,
      -          "minimum": -9007199254740991,
      -          "type": "integer"
      -        },
      -        "propertyNames": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "target": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "target",
      -      "pages_requested",
      -      "pages_crawled",
      -      "rendered",
      -      "onpage_score",
      -      "status_codes",
      -      "broken_links",
      -      "broken_resources",
      -      "non_indexable",
      -      "duplicate_titles",
      -      "duplicate_descriptions",
      -      "issues"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "brands": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "engines": {
      -        "items": {
      -          "enum": [
      -            "chatgpt",
      -            "claude",
      -            "gemini",
      -            "perplexity",
      -            "ai_overview",
      -            "ai_mode"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "errors": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "error": {
      -              "additionalProperties": {},
      -              "properties": {
      -                "error": {
      -                  "type": "string"
      -                },
      -                "message": {
      -                  "type": "string"
      -                }
      -              },
      -              "required": [
      -                "error",
      -                "message"
      -              ],
      -              "type": "object"
      -            },
      -            "input": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "input",
      -            "error"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "prompts": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "rows": {
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "answer": {
      -              "description": "The answer text. null when the engine showed no AI answer for the prompt.",
      -              "type": [
      -                "string",
      -                "null"
      -              ]
      -            },
      -            "answered_at": {
      -              "type": [
      -                "string",
      -                "null"
      -              ]
      -            },
      -            "citations": {
      -              "items": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "domain": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "position": {
      -                    "description": "Order of first citation in the answer, 1-based.",
      -                    "maximum": 9007199254740991,
      -                    "minimum": -9007199254740991,
      -                    "type": "integer"
      -                  },
      -                  "title": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  },
      -                  "url": {
      -                    "type": [
      -                      "string",
      -                      "null"
      -                    ]
      -                  }
      -                },
      -                "required": [
      -                  "position",
      -                  "url",
      -                  "domain",
      -                  "title"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "engine": {
      -              "enum": [
      -                "chatgpt",
      -                "claude",
      -                "gemini",
      -                "perplexity",
      -                "ai_overview",
      -                "ai_mode"
      -              ],
      -              "type": "string"
      -            },
      -            "mentions": {
      -              "description": "One entry per brand given, in the order given.",
      -              "items": {
      -                "additionalProperties": false,
      -                "properties": {
      -                  "brand": {
      -                    "type": "string"
      -                  },
      -                  "cited": {
      -                    "description": "A citation points at the brand's domain.",
      -                    "type": "boolean"
      -                  },
      -                  "mentioned": {
      -                    "description": "The brand name or domain appears in the answer text.",
      -                    "type": "boolean"
      -                  },
      -                  "position": {
      -                    "anyOf": [
      -                      {
      -                        "maximum": 9007199254740991,
      -                        "minimum": -9007199254740991,
      -                        "type": "integer"
      -                      },
      -                      {
      -                        "type": "null"
      -                      }
      -                    ],
      -                    "description": "Order of first mention among the brands given, 1-based; null when not mentioned."
      -                  }
      -                },
      -                "required": [
      -                  "brand",
      -                  "mentioned",
      -                  "position",
      -                  "cited"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "model": {
      -              "description": "The model version that answered, or null for Google.",
      -              "type": [
      -                "string",
      -                "null"
      -              ]
      -            },
      -            "prompt": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "engine",
      -            "model",
      -            "answer",
      -            "citations",
      -            "answered_at",
      -            "prompt",
      -            "mentions"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "prompts",
      -      "engines",
      -      "brands",
      -      "rows",
      -      "errors"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "broken_links": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "broken_resources": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "duplicate_descriptions": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "duplicate_titles": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "issues": {
      +        "description": "Checks that failed on at least one page, most pages first.",
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "check": {
      +              "description": "OnPage check name, for example duplicate_title or no_h1_tag.",
      +              "type": "string"
      +            },
      +            "pages": {
      +              "maximum": 9007199254740991,
      +              "minimum": -9007199254740991,
      +              "type": "integer"
      +            },
      +            "sample_urls": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "check",
      +            "pages",
      +            "sample_urls"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "non_indexable": {
      +        "anyOf": [
      +          {
      +            "maximum": 9007199254740991,
      +            "minimum": -9007199254740991,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "onpage_score": {
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      },
      +      "pages_crawled": {
      +        "maximum": 9007199254740991,
      +        "minimum": -9007199254740991,
      +        "type": "integer"
      +      },
      +      "pages_requested": {
      +        "maximum": 9007199254740991,
      +        "minimum": -9007199254740991,
      +        "type": "integer"
      +      },
      +      "rendered": {
      +        "type": "boolean"
      +      },
      +      "status_codes": {
      +        "additionalProperties": {
      +          "maximum": 9007199254740991,
      +          "minimum": -9007199254740991,
      +          "type": "integer"
      +        },
      +        "propertyNames": {
      +          "type": "string"
      +        },
      +        "type": "object"
      +      },
      +      "target": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "target",
      +      "pages_requested",
      +      "pages_crawled",
      +      "rendered",
      +      "onpage_score",
      +      "status_codes",
      +      "broken_links",
      +      "broken_resources",
      +      "non_indexable",
      +      "duplicate_titles",
      +      "duplicate_descriptions",
      +      "issues"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "brands": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "engines": {
      +        "items": {
      +          "enum": [
      +            "chatgpt",
      +            "claude",
      +            "gemini",
      +            "perplexity",
      +            "ai_overview",
      +            "ai_mode"
      +          ],
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "errors": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "error": {
      +              "additionalProperties": {},
      +              "properties": {
      +                "error": {
      +                  "type": "string"
      +                },
      +                "message": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "error",
      +                "message"
      +              ],
      +              "type": "object"
      +            },
      +            "input": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "input",
      +            "error"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "prompts": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "rows": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "answer": {
      +              "description": "The answer text. null when the engine showed no AI answer for the prompt.",
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "answered_at": {
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "citations": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "domain": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "position": {
      +                    "description": "Order of first citation in the answer, 1-based.",
      +                    "maximum": 9007199254740991,
      +                    "minimum": -9007199254740991,
      +                    "type": "integer"
      +                  },
      +                  "title": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "url": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "position",
      +                  "url",
      +                  "domain",
      +                  "title"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "engine": {
      +              "enum": [
      +                "chatgpt",
      +                "claude",
      +                "gemini",
      +                "perplexity",
      +                "ai_overview",
      +                "ai_mode"
      +              ],
      +              "type": "string"
      +            },
      +            "mentions": {
      +              "description": "One entry per brand given, in the order given.",
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "brand": {
      +                    "type": "string"
      +                  },
      +                  "cited": {
      +                    "description": "A citation points at the brand's domain.",
      +                    "type": "boolean"
      +                  },
      +                  "mentioned": {
      +                    "description": "The brand name or domain appears in the answer text.",
      +                    "type": "boolean"
      +                  },
      +                  "position": {
      +                    "anyOf": [
      +                      {
      +                        "maximum": 9007199254740991,
      +                        "minimum": -9007199254740991,
      +                        "type": "integer"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ],
      +                    "description": "Order of first mention among the brands given, 1-based; null when not mentioned."
      +                  }
      +                },
      +                "required": [
      +                  "brand",
      +                  "mentioned",
      +                  "position",
      +                  "cited"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "model": {
      +              "description": "The model version that answered, or null for Google.",
      +              "type": [
      +                "string",
      +                "null"
      +              ]
      +            },
      +            "named_brands": {
      +              "default": [],
      +              "description": "Every brand the engine marked in its answer, not only those given. Empty when it does not say.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "prompt": {
      +              "type": "string"
      +            },
      +            "search_queries": {
      +              "default": [],
      +              "description": "The web searches the engine ran to answer. Empty when it does not say.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "search_results": {
      +              "default": [],
      +              "description": "Pages the engine retrieved while answering, cited or not. Empty when it does not say.",
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "domain": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "position": {
      +                    "description": "Order of first citation in the answer, 1-based.",
      +                    "maximum": 9007199254740991,
      +                    "minimum": -9007199254740991,
      +                    "type": "integer"
      +                  },
      +                  "title": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "url": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "position",
      +                  "url",
      +                  "domain",
      +                  "title"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "engine",
      +            "model",
      +            "answer",
      +            "citations",
      +            "search_results",
      +            "search_queries",
      +            "named_brands",
      +            "answered_at",
      +            "prompt",
      +            "mentions"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "prompts",
      +      "engines",
      +      "brands",
      +      "rows",
      +      "errors"
      +    ],
      +    "type": "object"
      +  }
      +]
  5. Changed2 schema fields changed
    • changedOutput schema / properties / error / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "BudgetExceeded",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "max_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "max_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "billing_url": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "InsufficientCredits",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "upgrade_url": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "NoData",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "InvalidTarget",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "target": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "target",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ProviderUnavailable",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "provider": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "provider",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ConcurrencyLimit",
      -        "type": "string"
      -      },
      -      "limit": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "limit",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "cap": {
      -        "type": "number"
      -      },
      -      "error": {
      -        "const": "SpendCapReached",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "period": {
      -        "enum": [
      -          "day",
      -          "month"
      -        ],
      -        "type": "string"
      -      },
      -      "resets_at": {
      -        "type": "string"
      -      },
      -      "spent": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "period",
      -      "cap",
      -      "spent",
      -      "est_credits",
      -      "resets_at",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskFailed",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskPending",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "poll_after_s": {
      -        "type": "number"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "poll_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "connect_url": {
      -        "type": "string"
      -      },
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "NotConnected",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "connect_url",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "EngineMisconfigured",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "message"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "BudgetExceeded",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "max_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "est_credits",
      +      "max_credits",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "billing_url": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "InsufficientCredits",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "upgrade_url": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "est_credits",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "NoData",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "InvalidTarget",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "target": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "target",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "InvalidProvider",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "provider": {
      +        "type": "string"
      +      },
      +      "valid_providers": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "provider",
      +      "valid_providers",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "ProviderUnavailable",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "provider": {
      +        "type": "string"
      +      },
      +      "retry_after_s": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "provider",
      +      "retry_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "ConcurrencyLimit",
      +        "type": "string"
      +      },
      +      "limit": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "retry_after_s": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "limit",
      +      "retry_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "cap": {
      +        "type": "number"
      +      },
      +      "error": {
      +        "const": "SpendCapReached",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "period": {
      +        "enum": [
      +          "day",
      +          "month"
      +        ],
      +        "type": "string"
      +      },
      +      "resets_at": {
      +        "type": "string"
      +      },
      +      "spent": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "period",
      +      "cap",
      +      "spent",
      +      "est_credits",
      +      "resets_at",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "TaskFailed",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "task_id": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "task_id",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "TaskPending",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "poll_after_s": {
      +        "type": "number"
      +      },
      +      "task_id": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "task_id",
      +      "poll_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "connect_url": {
      +        "type": "string"
      +      },
      +      "engine": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "NotConnected",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "engine",
      +      "connect_url",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "engine": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "EngineMisconfigured",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "engine",
      +      "message"
      +    ],
      +    "type": "object"
      +  }
      +]
    • changedOutput schema / properties / errors / items / properties / error / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "BudgetExceeded",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "max_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "max_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "billing_url": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "InsufficientCredits",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "upgrade_url": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "NoData",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "InvalidTarget",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "target": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "target",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ProviderUnavailable",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "provider": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "provider",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ConcurrencyLimit",
      -        "type": "string"
      -      },
      -      "limit": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "limit",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "cap": {
      -        "type": "number"
      -      },
      -      "error": {
      -        "const": "SpendCapReached",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "period": {
      -        "enum": [
      -          "day",
      -          "month"
      -        ],
      -        "type": "string"
      -      },
      -      "resets_at": {
      -        "type": "string"
      -      },
      -      "spent": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "period",
      -      "cap",
      -      "spent",
      -      "est_credits",
      -      "resets_at",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskFailed",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskPending",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "poll_after_s": {
      -        "type": "number"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "poll_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "connect_url": {
      -        "type": "string"
      -      },
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "NotConnected",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "connect_url",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "EngineMisconfigured",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "message"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "BudgetExceeded",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "max_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "est_credits",
      +      "max_credits",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "billing_url": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "InsufficientCredits",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "upgrade_url": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "est_credits",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "NoData",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "InvalidTarget",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "target": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "target",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "InvalidProvider",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "provider": {
      +        "type": "string"
      +      },
      +      "valid_providers": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "provider",
      +      "valid_providers",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "ProviderUnavailable",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "provider": {
      +        "type": "string"
      +      },
      +      "retry_after_s": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "provider",
      +      "retry_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "ConcurrencyLimit",
      +        "type": "string"
      +      },
      +      "limit": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "retry_after_s": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "limit",
      +      "retry_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "cap": {
      +        "type": "number"
      +      },
      +      "error": {
      +        "const": "SpendCapReached",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "period": {
      +        "enum": [
      +          "day",
      +          "month"
      +        ],
      +        "type": "string"
      +      },
      +      "resets_at": {
      +        "type": "string"
      +      },
      +      "spent": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "period",
      +      "cap",
      +      "spent",
      +      "est_credits",
      +      "resets_at",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "TaskFailed",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "task_id": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "task_id",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "TaskPending",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "poll_after_s": {
      +        "type": "number"
      +      },
      +      "task_id": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "task_id",
      +      "poll_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "connect_url": {
      +        "type": "string"
      +      },
      +      "engine": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "NotConnected",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "engine",
      +      "connect_url",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "engine": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "EngineMisconfigured",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "engine",
      +      "message"
      +    ],
      +    "type": "object"
      +  }
      +]
  6. Changed2 schema fields changed
    • changedOutput schema / properties / error / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "BudgetExceeded",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "max_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "max_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "InsufficientCredits",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "NoData",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "InvalidTarget",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "target": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "target",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ProviderUnavailable",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "provider": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "provider",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ConcurrencyLimit",
      -        "type": "string"
      -      },
      -      "limit": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "limit",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "cap": {
      -        "type": "number"
      -      },
      -      "error": {
      -        "const": "SpendCapReached",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "period": {
      -        "enum": [
      -          "day",
      -          "month"
      -        ],
      -        "type": "string"
      -      },
      -      "resets_at": {
      -        "type": "string"
      -      },
      -      "spent": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "period",
      -      "cap",
      -      "spent",
      -      "est_credits",
      -      "resets_at",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskFailed",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskPending",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "poll_after_s": {
      -        "type": "number"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "poll_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "connect_url": {
      -        "type": "string"
      -      },
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "NotConnected",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "connect_url",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "EngineMisconfigured",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "message"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "BudgetExceeded",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "max_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "est_credits",
      +      "max_credits",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "billing_url": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "InsufficientCredits",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "upgrade_url": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "est_credits",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "NoData",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "InvalidTarget",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "target": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "target",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "ProviderUnavailable",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "provider": {
      +        "type": "string"
      +      },
      +      "retry_after_s": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "provider",
      +      "retry_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "ConcurrencyLimit",
      +        "type": "string"
      +      },
      +      "limit": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "retry_after_s": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "limit",
      +      "retry_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "cap": {
      +        "type": "number"
      +      },
      +      "error": {
      +        "const": "SpendCapReached",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "period": {
      +        "enum": [
      +          "day",
      +          "month"
      +        ],
      +        "type": "string"
      +      },
      +      "resets_at": {
      +        "type": "string"
      +      },
      +      "spent": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "period",
      +      "cap",
      +      "spent",
      +      "est_credits",
      +      "resets_at",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "TaskFailed",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "task_id": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "task_id",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "TaskPending",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "poll_after_s": {
      +        "type": "number"
      +      },
      +      "task_id": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "task_id",
      +      "poll_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "connect_url": {
      +        "type": "string"
      +      },
      +      "engine": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "NotConnected",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "engine",
      +      "connect_url",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "engine": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "EngineMisconfigured",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "engine",
      +      "message"
      +    ],
      +    "type": "object"
      +  }
      +]
    • changedOutput schema / properties / errors / items / properties / error / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "BudgetExceeded",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "max_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "max_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "InsufficientCredits",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "est_credits",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "NoData",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "InvalidTarget",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "target": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "target",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ProviderUnavailable",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "provider": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "provider",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "ConcurrencyLimit",
      -        "type": "string"
      -      },
      -      "limit": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "retry_after_s": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "limit",
      -      "retry_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "cap": {
      -        "type": "number"
      -      },
      -      "error": {
      -        "const": "SpendCapReached",
      -        "type": "string"
      -      },
      -      "est_credits": {
      -        "type": "number"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "period": {
      -        "enum": [
      -          "day",
      -          "month"
      -        ],
      -        "type": "string"
      -      },
      -      "resets_at": {
      -        "type": "string"
      -      },
      -      "spent": {
      -        "type": "number"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "period",
      -      "cap",
      -      "spent",
      -      "est_credits",
      -      "resets_at",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskFailed",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "error": {
      -        "const": "TaskPending",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "poll_after_s": {
      -        "type": "number"
      -      },
      -      "task_id": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "task_id",
      -      "poll_after_s",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "connect_url": {
      -        "type": "string"
      -      },
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "NotConnected",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "connect_url",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "engine": {
      -        "type": "string"
      -      },
      -      "error": {
      -        "const": "EngineMisconfigured",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "error",
      -      "engine",
      -      "message"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "BudgetExceeded",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "max_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "est_credits",
      +      "max_credits",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "billing_url": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "InsufficientCredits",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "upgrade_url": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "est_credits",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "NoData",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "InvalidTarget",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "target": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "target",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "ProviderUnavailable",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "provider": {
      +        "type": "string"
      +      },
      +      "retry_after_s": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "provider",
      +      "retry_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "ConcurrencyLimit",
      +        "type": "string"
      +      },
      +      "limit": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "retry_after_s": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "limit",
      +      "retry_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "cap": {
      +        "type": "number"
      +      },
      +      "error": {
      +        "const": "SpendCapReached",
      +        "type": "string"
      +      },
      +      "est_credits": {
      +        "type": "number"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "period": {
      +        "enum": [
      +          "day",
      +          "month"
      +        ],
      +        "type": "string"
      +      },
      +      "resets_at": {
      +        "type": "string"
      +      },
      +      "spent": {
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "period",
      +      "cap",
      +      "spent",
      +      "est_credits",
      +      "resets_at",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "TaskFailed",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "task_id": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "task_id",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "const": "TaskPending",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "poll_after_s": {
      +        "type": "number"
      +      },
      +      "task_id": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "task_id",
      +      "poll_after_s",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "connect_url": {
      +        "type": "string"
      +      },
      +      "engine": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "NotConnected",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "engine",
      +      "connect_url",
      +      "message"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "engine": {
      +        "type": "string"
      +      },
      +      "error": {
      +        "const": "EngineMisconfigured",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "engine",
      +      "message"
      +    ],
      +    "type": "object"
      +  }
      +]
  7. Changed1 schema field changed
    • addedOutput schema / properties / meta / properties / providers_tried
      Added value: +{
      +  "description": "leads_get_email only: every source asked, in order.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
  8. First observed

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnly/idempotent/non-destructive; the description adds the behaviors that actually matter here: a 25-second blocking hold while the task runs, TaskPending polling with no backoff, TaskFailed carrying a reason, and 0 credits cost. None of that is derivable from the annotations or schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded purpose first, then labeled Use when / Not for / Returns / Cost / Example sections that are each one or two lines. Every line carries a distinct piece of information with no restatement of the tool name or title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, yet the description still supplies the operational facts an agent needs to drive the async lifecycle correctly (blocking window, polling, failure case). Combined with the single required param, nothing needed to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry the load, and it mostly does: it gives a concrete example value ({"task_id": "task_01J..."}) and states the provenance of the id. It does not mention the minLength 1 / maxLength 100 constraints declared in the schema, so it stops short of full compensation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('The result of a run_* tool') and immediately distinguishes itself from the async producers, naming TaskPending as the alternate return. An agent can tell this apart from seo_run_technical_crawl or aeo_run_ai_answers without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit 'Use when' (holding a task_id from seo_run_technical_crawl or aeo_run_ai_answers) and 'Not for: starting work; call the run_* tool first.' It also prescribes the follow-up action on TaskPending ('call get_task again at once, with no wait first'), which is genuine usage routing rather than context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources