diff --git a/lib/galaxy/config/sample/datatypes_conf.xml.sample b/lib/galaxy/config/sample/datatypes_conf.xml.sample
index f0f96237e80b..315525bc6183 100644
--- a/lib/galaxy/config/sample/datatypes_conf.xml.sample
+++ b/lib/galaxy/config/sample/datatypes_conf.xml.sample
@@ -361,6 +361,7 @@
+
@@ -1079,6 +1080,7 @@
+
diff --git a/lib/galaxy/datatypes/binary.py b/lib/galaxy/datatypes/binary.py
index 853a6e402977..a3e384e9aa4e 100644
--- a/lib/galaxy/datatypes/binary.py
+++ b/lib/galaxy/datatypes/binary.py
@@ -3759,6 +3759,35 @@ def sniff(self, filename: str) -> bool:
return Fast5Archive.sniff(self, filename)
+class Pod5(Binary):
+ """
+ Class describing a Pod5 file
+
+ >>> from galaxy.datatypes.sniff import get_test_fname
+ >>> fname = get_test_fname('test.pod5')
+ >>> Pod5().sniff(fname)
+ True
+ """
+
+ file_ext = "pod5"
+
+ def sniff(self, filename: str) -> bool:
+ expected_signature = bytes(
+ [0x8B, 0x50, 0x4F, 0x44, 0x0D, 0x0A, 0x1A, 0x0A]
+ )
+ try:
+ with open(filename, "rb") as f:
+ first_8_bytes = f.read(8)
+ f.seek(-8, 2)
+ last_8_bytes = f.read(8)
+ return (
+ first_8_bytes == expected_signature
+ and last_8_bytes == expected_signature
+ )
+ except Exception:
+ return False
+
+
class SearchGuiArchive(CompressedArchive):
"""Class describing a SearchGUI archive"""
diff --git a/lib/galaxy/datatypes/test/test.pod5 b/lib/galaxy/datatypes/test/test.pod5
new file mode 100644
index 000000000000..00f793821b9c
Binary files /dev/null and b/lib/galaxy/datatypes/test/test.pod5 differ