ParseForge Scrapers

OBIS Ocean Biodiversity Scraper

parseforge/obis-ocean-biodiversity-scraper

EducationBusinessAutomation

Scrapes OBIS Ocean Biodiversity Information System data: occurrence records, species checklists, statistics, and dataset indexes. Returns flat rows with scientific name, coordinates, depth, date, and dataset details.

Run this scraper See the API call
Total users
2
Monthly active
0
Total runs
117
Bookmarked
0
Rating
Not rated yet
Last modified
12 days ago

Overview

ParseForge

OBIS Ocean Biodiversity Scraper

Scrape OBIS Ocean Biodiversity Information System data, from species occurrences to taxonomic checklists and dataset indexes. Every record includes scientific name, coordinates, depth, date, and dataset details. No API key required. Export to CSV, JSON, Excel, or XML.

OBIS is the world's largest open-access repository of marine species distribution data, but its web interface and API can be slow for bulk queries. This Actor queries the OBIS API directly, letting you filter by scientific name, taxon ID, geographic polygon, depth range, date, and OBIS node, and returns each record in one flat schema.

Who uses it What they scrape OBIS for
Marine ecologists Mapping the current known distribution of a species for a research paper
Conservation NGOs Pulling all records inside a marine protected area to build a baseline inventory
Fisheries analysts Checking where a commercially fished species has been observed over the last decade
Data journalists Getting a count of biodiversity records per country or dataset for a story
Bioinformatics developers Feeding cleaned occurrence data into a species distribution model

What it does

This Actor collects OBIS occurrence records, species checklists, statistics summaries, or dataset indexes, and returns each result as a flat row.

  • πŸ”Ž Four query modes: occurrence records, species checklist, statistics summary, or dataset index.
  • 🌍 Geographic filter: restrict results to a WKT polygon, such as a marine protected area or EEZ.
  • πŸ“ Depth and date filters: set minimum and maximum depth in meters and a start/end date range.
  • 🏷️ QC flag filter: require or exclude records with specific OBIS quality flags like NO_DEPTH or ON_LAND.
  • 🧬 Taxon resolution: filter by scientific name or WoRMS AphiaID for precise species targeting.
  • πŸ“¦ Compact output: drop low-value fields like flags and absence to keep rows slim.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with OBIS data

πŸ—ΊοΈ Map a species distribution.

A marine ecologist enters a scientific name and a WKT polygon for the study area, then exports the occurrence records to map in QGIS.

πŸ“Š Build a protected area baseline.

A conservation NGO pulls all records inside a marine protected area polygon to create a species inventory for a management plan.

πŸ“ˆ Track fisheries observations.

A fisheries analyst filters by scientific name and date range to see where a commercial species has been observed in the last five years.

πŸ§ͺ Feed a species distribution model.

A bioinformatician downloads occurrence records with depth and date filters, then uses the CSV as training data for a niche model.

Why choose this scraper

What you get
No API key OBIS API is open, so you can start scraping immediately without registration.
Up to 1,000,000 records Set maxItems to pull a large dataset in one run.
Flat, predictable rows Every record comes back with the same fields, ready for CSV or database import.
Filter before you download Apply geographic, depth, date, and QC filters to avoid pulling irrelevant data.

How it compares

This Actor offers more query modes and filters than the OBIS Marine Occurrences Scraper, which focuses only on occurrence records.

Feature ParseForge OBIS Marine Occurrences Scraper - Species Records
Occurrence records Yes Yes
Species checklist mode Yes Not listed
Statistics summary mode Yes Not listed
Dataset index mode Yes Not listed
WKT polygon filter Yes Not listed
Depth range filter Yes Not listed
QC flag filter Yes Not listed

Configure the run

Drive the Actor from a scientific name, taxon ID, OBIS node, WKT polygon, depth range, date range, and QC flags, alone or together, and filters run as each record is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
  "mode": "occurrence",
  "maxItems": 10
}

A larger pull:

{
  "mode": "occurrence",
  "maxItems": 200
}

Pricing

Pay-per-result: $0.039 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $3.90
1,000 results $39.00
10,000 results $390.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the OBIS Ocean Biodiversity Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to OBIS through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/obis-ocean-biodiversity-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check your filters. A combination of a narrow date range, a small polygon, and a rare species may return zero records. Try removing filters one by one to see which one is too restrictive.

The run is slow or times out.

Reduce maxItems or narrow your filters. Querying the entire OBIS database without filters can take a long time. Use date, geometry, or taxon filters to limit the result set.

I get an error about the geometry field.

Make sure your WKT polygon is valid. It must start with POLYGON(( and end with )), with coordinates in longitude latitude order. Test it in a WKT validator.

Some records have missing coordinates or depth.

OBIS records vary in completeness. Use the flags filter to exclude records with missing data, or set compact to false to see all fields and decide which to keep.

The scientific name filter returns unexpected species.

OBIS matches names loosely. Use the taxonId (WoRMS AphiaID) for an exact match. You can find the AphiaID on the WoRMS website.

FAQ

Question Answer
Do I need an API key to scrape OBIS? No. The OBIS API is open and does not require authentication. You can start a run immediately.
What is the difference between occurrence and checklist modes? Occurrence mode returns individual observation records with coordinates, depth, and dates. Checklist mode returns a list of unique taxa matching your filters, without the full occurrence details.
Can I filter by a specific region? Yes. Use the geometry field with a WKT polygon, such as POLYGON((-10 30,-10 50,30 50,30 30,-10 30)), to restrict results to that area.
How do I find an OBIS node ID? Node IDs are UUIDs listed on the OBIS website under the nodes section. You can pass one or more comma-separated node IDs to filter by regional data hub.
What are OBIS QC flags? OBIS applies quality control flags to records, such as NO_DEPTH (missing depth) or ON_LAND (coordinates on land). You can require or exclude records with specific flags using the flags field.
Can I get more than 1,000,000 records? The maximum per run is 1,000,000 records. For larger datasets, split your query by date range or region and run multiple times.
What does the compact output option do? It drops low-value fields like flags, dropped, and absence from each row, making the dataset smaller and easier to work with.
Is the data current? The Actor queries the live OBIS API, so you get the latest records available in the OBIS database at the time of the run.
Can I filter by depth? Yes. Set depthMin and depthMax in meters to include only records sampled within that depth range.
What formats can I export to? You can export the results to CSV, JSON, Excel, or XML from the Apify dataset.

Related actors

Browse the full ParseForge collection for more scrapers.

πŸ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by UNESCO Intergovernmental Oceanographic Commission (IOC). It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
mode string (4 options) What to fetch: occurrence records, taxonomic checklist, statistics, or dataset index. occurrence
scientificName string Filter by scientific name (e.g. Carcharodon carcharias, Delphinus delphis). Leave empty for all. not set
taxonId integer WoRMS AphiaID to filter by. Overrides scientificName when set. not set
nodeId string Filter by an OBIS node UUID (regional data hub). Comma-separated for multiple. Find node IDs on the OBIS site. not set
flags string Comma-separated OBIS QC flags to require (e.g. NO_DEPTH,ON_LAND). Empty = no flag filter. not set
startDate string Earliest event date, format YYYY-MM-DD (e.g. 2020-01-01). not set
endDate string Latest event date, format YYYY-MM-DD (e.g. 2024-12-31). not set
geometry string WKT polygon to restrict occurrences (e.g. POLYGON((-10 30,-10 50,30 50,30 30,-10 30))). Leave empty for global. not set
depthMin integer Minimum sampling depth in meters. Leave empty for no minimum. not set
depthMax integer Maximum sampling depth in meters. Leave empty for no maximum. not set
compact boolean Drop low-value fields (flags, dropped, absence) for slimmer rows. false
maxItems integer How many occurrence records to collect per run. 10

Pricing

from $29.25 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.02925 to $0.039

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST Β· run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~obis-ocean-biodiversity-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

No reviews yet. Be the first.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run OBIS Ocean Biodiversity Scraper on Apify All scrapers