import json from typing import Any, Dict, List, Union import requests import pandas as pd import streamlit as st def echa_request(cas_num: str) -> Dict[str, Any]: url = 'https://api.cosmoguard.it/api/v1/echa/search' response = requests.post(url, json={'cas': cas_num}) data = response.json() if data['success'] == True: return data['data'] else: return data['error'] def cosing_request(cas_num: str) -> Dict[str, Any]: url = 'https://api.cosmoguard.it/api/v1/cosing/search' response = requests.post(url, json={ "full": True, "mode": "cas", "text": cas_num }) data = response.json() if data['success'] == True: return data['data'] else: return data['error'] def generate_pdf_download(cas, origin, link): url = 'https://api.cosmoguard.it/api/v1/common/generate-pdf' name = f'{cas}_{origin}' response = requests.post( url, json = { 'link': link, 'name': name } ) data = response.json() if data['success'] == True: url = f'https://api.cosmoguard.it/api/v1/common/download-pdf/{name}' response = requests.get(url) response.raise_for_status() return response.content else: return data['error']