Manta Atlantic - ZK Identity L1 Guide
Build privacy-preserving identity and compliance solutions on Manta Atlantic, the zero-knowledge Layer 1 parachain on Polkadot, using Dwellir's enterprise RPC.
Manta Atlantic RPC
With Dwellir, you get access to our global Manta Atlantic network which always routes your API requests to the nearest available location, ensuring low latency and the fastest speeds.
Get your API keyWhy Build on Manta Atlantic?
- Fastest zk Layer 1 on Polkadot – Atlantic specializes in zero-knowledge identity proofs with high-throughput circuits powering zkSoulbound credentials for millions of users.
- Programmable privacy-preserving identities – zkSBTs, selective disclosure primitives, and proof tooling let teams ship compliant identity workflows without exposing raw user data.
- On-chain compliance infrastructure – The NPO (NFT Private Offering) stack supports private KYC/AML verification, credential revocation, and auditable reporting for regulated deployments.
- Interoperability across Polkadot – As parachain 2104, Atlantic inherits shared security, XCMP messaging, and bridges into ecosystems like Moonbeam, Bifrost, and Ethereum.
Quick Start with Manta Atlantic
Connect to Atlantic's production archive endpoint (no public testnet) using your Dwellir API key:
curl -sS -X POST https://api-manta-atlantic-mainnet.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots> \ -H 'Content-Type: application/json' \ -d '{"jsonrpc":"2.0","method":"chain_getBlockHash","params":[0],"id":1}'import { JsonRpcProvider } from 'ethers';const provider = new JsonRpcProvider( 'https://api-manta-atlantic-mainnet.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>');const latest = await provider.getBlockNumber();console.log('block', latest);import requestsurl = 'https://api-manta-atlantic-mainnet.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>'payload = { 'jsonrpc': '2.0', 'id': 1, 'method': 'chain_getBlockHash', 'params': [0]}resp = requests.post(url, json=payload)print(resp.json())package mainimport ( "bytes" "fmt" "io" "net/http")func main() { url := "https://api-manta-atlantic-mainnet.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>" payload := []byte(`{"jsonrpc":"2.0","id":1,"method":"chain_getBlockHash","params":[0]}`) resp, err := http.Post(url, "application/json", bytes.NewBuffer(payload)) if err != nil { panic(err) } defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) fmt.Println(string(body))}Replace YOUR_API_KEY after you create an account. The WebSocket endpoint is available at wss://api-manta-atlantic-mainnet.n.dwellir.com/YOUR_API_KEY.
Connect with @polkadot/api
import { ApiPromise, WsProvider } from '@polkadot/api';
const provider = new WsProvider('wss://api-manta-atlantic-mainnet.n.dwellir.com/YOUR_API_KEY');
const api = await ApiPromise.create({ provider });
// Confirm network metadata
const chain = await api.rpc.system.chain();
console.log(`Connected to ${chain.toString()}`);
// Fetch the latest finalized block
const latest = await api.rpc.chain.getBlock();
console.log('Finalized block number', latest.block.header.number.toNumber());Rust (subxt) bootstrap
use subxt::{config::polkadot::PlainConfig, OnlineClient};
#[subxt::subxt(runtime_metadata_url = "wss://api-manta-atlantic-mainnet.n.dwellir.com/YOUR_API_KEY")]
pub mod manta_atlantic {}
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let api = OnlineClient::<PlainConfig>::from_url(
"wss://api-manta-atlantic-mainnet.n.dwellir.com/YOUR_API_KEY"
).await?;
let runtime = api.runtime_version().await?;
println!("Spec version: {}", runtime.spec_version);
Ok(())
}Network Information
| Parameter | Value | Details |
|---|---|---|
| Parachain ID | 2104 | Registered on Polkadot Relay Chain |
| Consensus | NPoS + zk circuits | Collators submit zk-validated state proofs |
| Average Block Time | ≈ 13.3 seconds | Measured 7-day mean on Polkadot OpenGov metrics |
| Native Token | MANTA | Used for staking, fees, and collator bonds |
Operational Notes
| Parameter | Value | Details |
|---|---|---|
| Active Collators | 54 | Securing 101.8M staked MANTA with GRANDPA finality on top of zk-verified execution |
| Observed Block Time | ~13.35 seconds | Based on PublicNode telemetry over the last seven days |
| Collator Bond | 400,000 MANTA | Rewards come from a 2% annual inflation stream dedicated to parachain security |
| Staking Cadence | 6-hour rounds | 7-day unbonding period for predictable uptime incentives |
| Throughput Roadmap | Asynchronous backing targets 6-second parachain blocks | Depends on host-chain optimizations rolling out |
API Reference
Atlantic exposes the full Substrate JSON-RPC surface, including chain_*, state_*, and author_* namespaces for block data, storage access, and extrinsic submission.
| Category | Key Methods | Use Cases |
|---|---|---|
| Chain | chain_getBlock, chain_getFinalizedHead | Retrieve zk-anchored parachain blocks and finality proofs |
| State | state_getStorage, state_getRuntimeVersion | Inspect identity pallets, zk credential registries, and runtime metadata |
| Author | author_submitExtrinsic, author_pendingExtrinsics | Submit zkSBT transactions and monitor queue health |
Sample cURL call
curl https://api-manta-atlantic-mainnet.n.dwellir.com/YOUR_API_KEY \
-H 'Content-Type: application/json' \
-d '{
"jsonrpc": "2.0",
"method": "chain_getBlock",
"params": [],
"id": 1
}'Explore detailed method docs in the RPC reference.
Privacy Features Overview
- zkSBTs for regulated identity – Issue, revoke, and expire credentials privately using Manta’s zkSBT runtime modules and Prove Keys for selective disclosure.
- Programmable identity fabric – Compose verifiable credentials, attestations, and session keys tied to zk addresses for multi-jurisdictional compliance.
- Privacy-preserving credential analytics – Aggregate issuance stats and revocation logs without exposing user PII, using off-chain indexers that consume hashed commitments.
Deep dives:
zkAddress System
Atlantic assigns every participant a standard Substrate account and a shielded UTXO-style address, enabling private balance updates while maintaining compatibility with Polkadot tooling.
- Establishes confidentiality via one-time addresses and viewing keys while preserving interoperability with public XCMP channels.
- Selective disclosure relies on user-controlled Prove Keys so only authorized verifiers can inspect credential proofs.
Compliance Tools
- zkKYC verification – Issuers attest to KYC completion without storing underlying documents on-chain, satisfying policy requirements for permissioned DeFi.
- Audit-friendly reporting – Regulators receive revocation or expiry events derived from zk commitments, rather than raw identity data.
- Bridges to off-chain capital markets – Bifrost and other parachains integrate Atlantic credentials to wrap staking positions (vMANTA) and unlock liquidity while preserving privacy.
Development Guides
- Issue zkSBTs – Follow the minting guide to register issuers, define schemas, and broadcast credential extrinsics.
- Build programmable identity flows – Combine zkAddress guardrails with session-based Prove Keys to create reusable identity vaults.
- Integrate compliance pipelines – Map
identity_verifyCredentialRPC calls to your policy engine for real-time access control.
Troubleshooting
- Proof generation stalls – Re-sync proving key material and confirm
zk_generateProofinputs match runtime-cached schema hashes. - Credential verification failures – Ensure the verifier holds the latest Prove Key rotation and that revocation registries are in sync via
state_getStorage. - Cross-chain settlement delays – Monitor collator liveness (6-hour nomination cycles) and confirm asynchronous backing slots are available before submitting high-value transfers.
Resources & Tools
- Manta Atlantic Docs – Official zkSBT, zkAddress, and Prove Key specifications.
- Manta Network State of the Network (Q1 2025) – Collator metrics, staking economics, and deprecation roadmap through July 2026.
- MANTA Staking Guide – How-to for nominators, collators, and reward cycles.
- Messari Protocol Overview – Historical issuance data and compliance-focused adoption metrics.
- Substrate JSON-RPC Spec – Authoritative method definitions for
chain_*,state_*, andauthor_*.
Ready to build? Get your API key and start integrating Manta Atlantic today.
eth_coinbase
Check the legacy eth_coinbase compatibility method on LISK. Public endpoints may return an address, `unimplemented`, or another unsupported-method response depending on the client.
chain_getBlock
Retrieve block data by hash on Manta Atlantic. Essential for accessing block headers and extrinsics on the ZK Layer 1 on Polkadot enabling private transactions and on-chain compliance identities.

