{"record":{"id":"5a04ab5346e04d91","repo":"BerriAI/litellm","slug":"worker-url-must-start-with-http-or-https","errorCode":null,"errorMessage":"Worker URL must start with http:// or https://","messagePattern":"Worker URL must start with http:// or https://","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"litellm/types/proxy/control_plane_endpoints.py","lineNumber":13,"sourceCode":"from pydantic import BaseModel, field_validator\n\n\nclass WorkerRegistryEntry(BaseModel):\n    worker_id: str\n    name: str\n    url: str\n\n    @field_validator(\"url\")\n    @classmethod\n    def url_must_be_http(cls, v: str) -> str:\n        if not v.startswith((\"http://\", \"https://\")):\n            raise ValueError(\"Worker URL must start with http:// or https://\")\n        return v\n","sourceCodeStart":1,"sourceCodeEnd":15,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/types/proxy/control_plane_endpoints.py#L1-L15","documentation":"Pydantic URL validator on WorkerRegistryEntry.url: the worker URL does not start with http:// or https://, so it cannot be used as an HTTP control-plane target. Commonly caused by omitting the scheme (e.g. 'worker:4000').","triggerScenarios":"Thrown at litellm/types/proxy/control_plane_endpoints.py:13 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Prefix the worker URL with http:// or https://, e.g. https://worker.example.com."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8","analyzedAt":"2026-08-18T11:44:31.656Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}