PubChem's PUG REST API at https://pubchem.ncbi.nlm.nih.gov/rest/pug looks compounds up by name, id, or structure. The URL reads left to right: input, operation, output format.
None. Keep to about 5 requests a second.
Full reference: https://pubchem.ncbi.nlm.nih.gov/docs/pug-rest
curl https://pubchem.ncbi.nlm.nih.gov/rest/pug/compound/name/caffeine/property/MolecularFormula,MolecularWeight,IUPACName/JSON
{
"PropertyTable": {
"Properties": [
{
"CID": 2519,
"MolecularFormula": "C8H10N4O2",
"MolecularWeight": "194.19",
"IUPACName": "1,3,7-trimethylpurine-2,6-dione"
}
]
}
}
curl https://pubchem.ncbi.nlm.nih.gov/rest/pug/compound/name/aspirin/synonyms/JSON
{
"InformationList": {
"Information": [
{
"CID": 2244,
"Synonym": [
"aspirin",
"ACETYLSALICYLIC ACID"
]
}
]
}
}