The children started vomiting and sweating after they were orally given hepatitis B vaccine, which is normally injected, at clinics in a village in West Bengal state on Sunday, the health officials said.
Some 120 children in total swallowed the medication at the clinics, set up to administer polio vaccine drops as part of a campaign to eradicate the disease, before health workers discovered the mistake, said Biswaranjan Sathpaty, director of West Bengal Health Services.
"A total of 57 children started vomiting immediately after they were administered the wrong vaccine," Sathpaty told AFP.
They were taken to a local hospital in Arambagh for treatment and have since been discharged, Sathpaty said.
Doctors and officials were quoted by local media as saying the hepatitis B vaccine would not cause any long-term harm, but the mishap could deter parents from allowing their children to be vaccinated in future.
Medical workers in India have worked hard to stamp out polio, a rare public health victory in a country where children are at risk of a range of deadly illnesses. Almost half of all children below the age of three are malnourished.
The polio clinics were set up at two schools in Goghat village 80 kilometres (50 miles) northwest of the state capital Kolkata, said Apurba Ghosh, director of the state-run Institute of Child Health.
Four health officials have been suspended and an investigation is under way into exactly how the mix-up occurred, Sathpaty said.
"A few samples of hepatitis B mistakenly found their way into the container marked for polio vaccines," he said.
"A nurse was assigned to collect the packet of vaccines from a local government office," he said. "But she sent her husband to get the vaccines."