Common Use Cases

Wallet Integration

Validate user-entered addresses before sending transactions:

async function validateBeforeSend(chain, address) {
  const response = await fetch('https://api.chaincheckapi.com/v1/validate', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ chain, address })
  });
  
  const result = await response.json();
  
  if (!result.valid) {
    alert('Invalid address! Please check and try again.');
    return false;
  }
  
  return true;
}

Exchange/Platform

Validate deposit addresses before crediting accounts:

def verify_deposit_address(chain, address):
    response = requests.post(
        'https://api.chaincheckapi.com/v1/validate',
        json={'chain': chain, 'address': address},
        headers={'x-api-key': PREMIUM_KEY}
    )
    
    data = response.json()
    return data.get('valid', False)

Form Validation

Real-time address validation in web forms:

document.getElementById('addressInput').addEventListener('blur', async (e) => {
  const address = e.target.value;
  const chain = document.getElementById('chainSelect').value;
  
  const res = await fetch('https://api.chaincheckapi.com/v1/validate', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ chain, address })
  });
  
  const result = await res.json();
  
  if (result.valid) {
    e.target.classList.add('valid');
    e.target.classList.remove('invalid');
  } else {
    e.target.classList.add('invalid');
    e.target.classList.remove('valid');
  }
});