ArNS Names
The sandbox runs a devnet ArNS registry. You can buy real names paid in
staging-ARIO credits and resolve them at https://<name>.ar-io.dev. New to ArNS? Start with
the ArNS overview.
There are two ways to register: the bundler route (simplest — pay with your Turbo credits), or directly with the ar.io SDK against the devnet programs.
Buying through the bundler
Buying through the bundler debits your upload credits. If you don't bring your own ANT, a custodial ANT is spawned and linked to you, so the name resolves out of the box.
Check the price
GET https://payment.services.ar-io.dev/v1/arns/price/buy-record/<name>?type=lease&years=1Use type=permabuy for a permanent registration.
Buy the name
POST https://payment.services.ar-io.dev/v1/arns/purchase/buy-record/<name>?type=lease&years=1A signed request that debits your credits. With provisioning on, a buy without your own ANT spawns a custodial one and links it to you.
Poll until it's recorded
GET https://payment.services.ar-io.dev/v1/arns/purchase/:noncestatus: recorded means the purchase settled on Solana devnet.
Minimum name length: 8 characters — bundler route only. This is an anti-squat rule on the
shared registry; shorter names return 400 (Name must be at least 8 characters…). Buying
directly with the SDK is not subject to this floor.
Advanced: buying directly with the SDK
You can also buy and manage names directly against the devnet programs — paying the name price in staging ARIO and devnet SOL yourself — instead of going through the bundler proxy. This path is not bound by the bundler's 8-character floor (though very short or premium names may still be reserved on-chain).
import { ARIO } from '@ar.io/sdk';
const ario = ARIO.init({
backend: 'solana',
programIds: DEVNET_PROGRAM_IDS, // see Reference
rpc,
signer,
});
const cost = await ario.getTokenCost({ /* name, type, years */ });
await ario.buyRecord({ /* name, type, years */ });The payment mint is read from on-chain config automatically (the staging ARIO mint). For the devnet program IDs and the ar.io SDK's devnet configuration, see the Reference and the SDK's advanced networks and networks guides.
Resolving a name
Once bought, https://<name>.ar-io.dev resolves the record, returning x-arns-* response
headers. To point a name at your uploaded data, set its record via the manage routes
(/v1/arns/manage/...) or through your ANT directly.
Names outlive data. A name keeps resolving because the record lives on the devnet registry — but the data behind it disappears after the ~3-day purge. Re-upload and re-point when you need it back.
See Accessing Data for the full set of ArNS resolution headers.
Next steps
Accessing Data
Resolve names and inspect the gateway's response headers
Reference
Devnet program IDs and the ARIO mint
How is this guide?
Uploading & Credits
Upload ANS-104 data items to the ar.io sandbox with the Turbo SDK, use the free tier, and fund upload credits with testnet value.
Accessing Data
Serve, query, and inspect your sandbox uploads through the ar-io.dev gateway — raw bytes, rendered content, GraphQL, and response headers.