When exporting definitions from the RabbitMQ UI, you have the ability to select a single VHOST. When you do that, the resulting definition JSON does not include the vhost key anywhere. It looks like the parsing expects the top level vhost object to be there.
Example definition when exporting the 'contoso' vhost in another example:
{
"queues": [{
"name": "MyQueue",
"durable": true,
"auto_delete": false,
"arguments": {}
}],
"exchanges": [{
"name": "MyExchange",
"type": "headers",
"durable": true,
"auto_delete": false,
"internal": false,
"arguments": {}
}],
"bindings": [{
"source": "MyExchange",
"destination": "MyQueue",
"destination_type": "queue",
"routing_key": "",
"arguments": {
"operation": "EVENTA"
}
}]
}