This quickstart uses the Runpod GraphQL API to register an ObjectStore and mount it into a Pod. See GlobalStore for the concepts behind ObjectStores and ObjectMounts. New to the Runpod GraphQL API? See the GraphQL API overview.
Requirements
- Access to the GlobalStore early access feature. Access is gated, so if GlobalStore isn’t enabled for your account, contact Runpod to request it.
- A Runpod API key (API keys).
- An existing S3-compatible bucket on Tigris or Cloudflare R2, along with its endpoint URL, bucket name, access key, and secret.
Register an ObjectStore
1
Create the ObjectStore
Call the
createObjectStore mutation with your bucket details. Pass the eligible regions in which the ObjectStore can be used.- cURL
- GraphQL
- Output
2
Save the ObjectStore ID
The returned
id is the objectStoreId you’ll use when mounting the ObjectStore into a Pod. The secret you passed in secretKey is write-only and is never returned by the API, so store it securely on your side if you need it again.Mount an ObjectStore into a Pod
You attach ObjectMounts when you create a Pod by passing anobjectMounts array to the Pod-create input. Each entry is shaped { objectStoreId, prefix, readOnly, mountPath }.
The example below shows objectMounts as an addition to the standard podFindAndDeployOnDemand input. For the full Pod-create flow, see Manage Pods.
- Each
mountPathmust be unique within a Pod. - The referenced ObjectStore must belong to your account or organization.
- Mounts are typically read-only.
Today you attach ObjectMounts through the GraphQL API, as shown above.
Check mount status
After the Pod starts, each ObjectMount moves through a short lifecycle:pending: the mount is queued and hasn’t started yet.mounting: the mount is being established.ready: the prefix is mounted and available to your application.failed: the mount couldn’t be established. See Troubleshoot failed mounts.
Troubleshoot failed mounts
When a mount reportsfailed, it includes a failure reason:
Manage ObjectStores
UseupdateObjectStore to change an ObjectStore’s name or rotate its credentials. To rotate credentials, supply a new accessKey and secretKey; the secret stays write-only and is never returned.
deleteObjectStore to remove an ObjectStore you no longer need.
Next steps
GlobalStore
Review the concepts behind ObjectStores and ObjectMounts.
Network volumes
Learn about Runpod’s regional, high-performance storage.