How node<->Hub data transfers work

Every genome, protein, or raw eDNA/metagenomic sample that reaches the Continental Hub as real bytes (not just metadata) does so through this mechanism — and only through it. It is the platform's answer to a real tension: African institutions rightly want to keep control over their own genetic-resource data, while the Hub needs real bytes for the catalog, genome browser, and structure viewer to actually work.

The rule: both sides must consent, always

A node can offer (push) its own data to the Hub, or the Hub can request(pull) data from a node — but submitting either kind of request already counts as the requester's own consent. Only the counterparty's decision is still needed: the Hub decides on a node's offer (Continental Admin approval); that node's own operator decides on the Hub's request. Neither side can be forced to give or take data by the other, and each side can also set a standing auto-accept/auto-reject policy for its own half of future exchanges — see Governance.

Node push (node offers data)Node offersoperator picks a local recordHub approvesContinental Admin decidesScoped tokenshort-lived, one record onlyHub fetchesGET from the node's own endpointStored + checksummedSHA-256 verifiedHub pull (Hub requests data)Hub requestsAdmin picks a node's recordNode approvesthat node's own operator decidesScoped tokenshort-lived, one record onlyHub fetchesGET from the node's own endpointStored + checksummedSHA-256 verified

What actually moves, and how

Regardless of which side initiated the request, once approved the Hub is always the side that fetches the bytes — by minting a short-lived (about 5 minutes), narrowly-scoped credential naming exactly one record, and calling the owning node's own byte-serving endpoint with it. That node verifies the credential locally (no round trip needed) and checks it names the exact record being requested before serving anything. The fetched bytes are then checksummed (SHA-256) and stored.

What this deliberately does not do

See Transfersto browse or act on real transfer requests (Continental Admin) or your own node's offers/incoming requests (node operators).