{"record":{"id":"d66d38cc05f6c92b","repo":"theforeman/foreman","slug":"unable-to-delete-ip-ip-from-the-subnet-subnet","errorCode":null,"errorMessage":"Unable to delete IP %{ip} from the subnet %{subnet} in External IPAM.","messagePattern":"Unable to delete IP %(.+?) from the subnet %(.+?) in External IPAM\\.","errorType":"exception","errorClass":"ProxyException","httpStatus":null,"severity":"error","filePath":"app/services/proxy_api/external_ipam.rb","lineNumber":266,"sourceCode":"    # Responses:\n    #   Response if success:\n    #     200\n    #   Response if subnet error:\n    #     {\"error\": \"The specified subnet does not exist in External IPAM.\"}\n    #   Response if IP already deleted:\n    #     {\"error\": \"Unable to delete IP from External IPAM\"}\n    #   Response if groups not supported(only checked if a group is specified):\n    #     {\"error\": \"Groups are not supported\"}\n    #   Response if can't connect to External IPAM server\n    #     {\"error\": \"Unable to connect to External IPAM server\"}\n    def delete_ip_from_subnet(ip, subnet, group = \"\")\n      raise \"subnet cannot be nil\" if subnet.nil?\n      raise \"ip cannot be nil\" if ip.nil?\n      response = parse delete(\"/subnet/#{subnet}/#{ip}?group=#{CGI.escape(group.to_s)}\")\n      raise(response['error']) if response.is_a?(Hash) && response['error'].present?\n      response\n    rescue => e\n      raise ProxyException.new(url, e, N_(\"Unable to delete IP %{ip} from the subnet %{subnet} in External IPAM.\"), ip: ip, subnet: subnet)\n    end\n  end\nend\n","sourceCodeStart":248,"sourceCodeEnd":270,"githubUrl":"https://github.com/theforeman/foreman/blob/6b05625475cfe6aac31a88f8c8ee6e62e4efe620/app/services/proxy_api/external_ipam.rb#L248-L270","documentation":"Error \"Unable to delete IP %{ip} from the subnet %{subnet} in External IPAM.\" thrown in theforeman/foreman.","triggerScenarios":"Thrown at app/services/proxy_api/external_ipam.rb:266 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6b05625475cfe6aac31a88f8c8ee6e62e4efe620","analyzedAt":"2026-08-23T17:46:34.094Z","schemaVersion":2},"datasetVersion":"2026-08-23T21:17:23.414Z"}