diff --git a/ippisite/ippidb/ws.py b/ippisite/ippidb/ws.py
index b29027bbaac1d15404f731141790191189ffd380..ad6fd40ee8fd118cc998ffa40465371673ad9faf 100644
--- a/ippisite/ippidb/ws.py
+++ b/ippisite/ippidb/ws.py
@@ -83,3 +83,12 @@ def get_pdb_uniprot_mapping(pdb_id):
     resp = requests.get('https://www.ebi.ac.uk/pdbe/api/mappings/uniprot/{}'.format(pdb_id.lower()))
     uniprot_ids = list(resp.json()[pdb_id]['UniProt'].keys())
     return uniprot_ids
+
+def pdb_entry_exists(pdb_id):
+    """ test if a PDB entry exists using EBI web services """
+    resp = requests.get('https://www.ebi.ac.uk/pdbe/api/pdb/entry/summary/{}'.format(pdb_id.lower()))
+    # EBI sends back either a 404 or an empty json if the PDB does not exist
+    if not(resp.ok):
+        return False
+    else:
+        return True