HTTP API
Documentation for API Endpoints
BucketsApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| httpbckdelete | DELETE /v1/buckets/{bucket-name} | provider, namespace, keep_bck_md |
Delete a bucket or delete/evict objects within a bucket |
| httpbckget | GET /v1/buckets/{bucket-name} | provider, namespace |
List buckets, bucket inventories, or objects within a bucket |
| httpbckhead | HEAD /v1/buckets/{bucket-name}/ | presence, bsumm_remote, dont_add_remote_bck_md |
Get bucket metadata and properties with additional preparsing step to support api.GetBucketInfo prefix (e.g. ‘ais ls ais://nnn --summary --prefix=aaa/bbb’) |
| httpbckpatch | PATCH /v1/buckets/{bucket-name} | provider, namespace |
Update bucket properties and settings |
| httpbckpost | POST /v1/buckets/{bucket-name} | provider, namespace, bck_to, dont_head_remote_bck |
Perform bucket operations: move, copy, ETL transform, prefetch, make copies, EC encode, and add remote buckets |
| httpbckput | PUT /v1/buckets/{bucket-name} | provider, namespace |
Perform actions on a bucket (like archiving) |
ClusterApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| httpcludel | DELETE /v1/cluster/daemon/{daemon-id} | None | Remove a node from the cluster by daemon ID. Used for self-initiated node removal (e.g., when a node loses all mountpaths). |
| httpcluget | GET /v1/cluster | what |
Query cluster states, statistics, and information. Supports various query types: node stats, system info, backends, remote AIS, mountpaths, etc. |
| httpclupost | POST /v1/cluster/{operation} | None | Handle cluster join operations and node keepalives. |
| httpcluput | PUT /v1/cluster | transient |
Administrative cluster operations: configuration changes, node management, log rotation, shutdown/decommission operations. |
DaemonApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| httpdaeget | GET /v1/daemon | what |
Retrieve various cluster and node information based on the ‘what’ query parameter. Supports multiple types: BMD (bucket metadata), NodeStatsAndStatus, SysInfo, Smap (cluster map), and more. (compare w/ httpcluget) |
| httpdaepost | POST /v1/daemon | can, prp |
Admin operations like joining cluster or forcing primary selection |
| httpdaeput | PUT /v1/daemon | frc |
Configure daemon settings and perform daemon operations |
DownloadApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| httpdladm | GET /v1/download | None | Get download status/list or abort/remove download jobs |
| httpdladmdeleteabort | DELETE /v1/download/abort | None | Get download status/list or abort/remove download jobs |
| httpdladmdeleteremove | DELETE /v1/download/remove | None | Get download status/list or abort/remove download jobs |
| httpdlpost | POST /v1/download | None | Start a new download job to fetch external data into AIStore buckets |
EcApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| httpecpost | POST /v1/ec/open-ec-streams | None | Enable or disable erasure coding and shared data management |
| httpecpostpostcloseecstreams | POST /v1/ec/close-ec-streams | None | Enable or disable erasure coding and shared data management |
| httpecpostpostcloseshareddm | POST /v1/ec/close-shared-dm | None | Enable or disable erasure coding and shared data management |
| httpecpostpostopenshareddm | POST /v1/ec/open-shared-dm | None | Enable or disable erasure coding and shared data management |
EtlApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| healthETL | GET /v1/etl/{etl-name}/health | None | Get health status of ETL job |
| httpetldel | DELETE /v1/etl/{etl-name} | None | Delete and remove an ETL job by name |
| httpetlpost | POST /v1/etl/{etl-name}/start | None | Start or stop ETL jobs by name |
| httpetlpostpoststop | POST /v1/etl/{etl-name}/stop | None | Start or stop ETL jobs by name |
| httpetlput | PUT /v1/etl | None | Create and initialize a new ETL job to transform data during transfers. |
| infoETL | GET /v1/etl/{etl-name} | None | Get detailed information about a specific ETL job |
| listETL | GET /v1/etl | None | List all ETL jobs in the cluster |
| logsETL | GET /v1/etl/{etl-name}/logs | None | Get logs from ETL job execution |
| logsETLgetlogs | GET /v1/etl/{etl-name}/logs/{target-id} | None | Get logs from ETL job execution |
| metricsETL | GET /v1/etl/{etl-name}/metrics | None | Get CPU and memory metrics for ETL job |
HealthApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| healthHandler | GET /v1/health | prr, cii, apr |
Get cluster and node health status |
MetasyncApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| metasyncHandler | PUT /v1/metasync | None | Internal metadata synchronization between cluster nodes (compare with p.recvCluMeta and t.metasyncHandlerPut) |
MlApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| httpmlget | GET /v1/ml/moss/{bucket} | tid |
Machine Learning endpoint for batch processing of objects using MOSS (Multi-Object Streaming Service) |
ObjectsApi
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| httpobjdelete | DELETE /v1/objects/{bucket-name}/{object-name} | provider, namespace |
Delete an object with the given uname |
| httpobjget | GET /v1/objects/{bucket-name}/{object-name} | provider, namespace, original_url, latest-ver |
Retrieve the object content with the given uname |
| httpobjhead | HEAD /v1/objects/{bucket-name}/{object-name} | provider, namespace, sln |
Get object metadata and properties |
| httpobjpatch | PATCH /v1/objects/{bucket-name}/{object-name} | provider, namespace |
Update object metadata and custom properties |
| httpobjpost | POST /v1/objects/{bucket-name}/{object-name} | provider, namespace |
Perform actions on objects (rename, promote, blob download, check lock) |
| httpobjput | PUT /v1/objects/{bucket-name}/{object-name} | append_type, append_handle |
Create a new object with the given uname |
S3Api
| Method | HTTP request | Parameters | Description |
|---|---|---|---|
| bckNamesFromBMD | GET /s3 | None | List all buckets from the bucket metadata |
| delMultipleObjs | DELETE /s3/{bucket-name} | delete |
Delete a list of objects from an S3 bucket |
| delObjS3 | DELETE /s3/{bucket-name}/{object-name} | None | Delete an S3 object |
| getBckVersioningS3 | GET /s3/{bucket-name} | versioning |
Get S3 bucket versioning configuration |
| getObjS3 | GET /s3/{bucket-name}/{object-name} | None | Download an S3 object or list multipart uploads |
| handleMptUpload | POST /s3/{bucket-name}/{object-name} | uploads, uploadId |
Handle S3 multipart upload operations |
| headBckS3 | HEAD /s3/{bucket-name} | None | Check if S3 bucket exists and retrieve metadata |
| headObjS3 | HEAD /s3/{bucket-name}/{object-name} | None | Retrieve S3 object metadata and headers |
| putBckVersioningS3 | PUT /s3/{bucket-name} | versioning |
Configure S3 bucket versioning settings |
| putObjS3 | PUT /s3/{bucket-name}/{object-name} | None | Upload or copy an S3 object |
Documentation for Models
💡 Note: All models only represent the expected value field in the final body payload for the corresponding action. The complete JSON body should look like:
{
"action": "selected action",
"value": "the model",
"name": "specify if needed for the selected action"
}| Model | Description |
|---|---|
| apc.ActMsg | Model definition for apc.ActMsg |
| apc.ActValRmNode | Model definition for apc.ActValRmNode |
| apc.BlobMsg | Model definition for apc.BlobMsg |
| apc.CopyBckMsg | Model definition for apc.CopyBckMsg |
| apc.EvdMsg | Model definition for apc.EvdMsg |
| apc.ListRange | Model definition for apc.ListRange |
| apc.MossIn | Model definition for apc.MossIn |
| apc.MossReq | Model definition for apc.MossReq |
| apc.PromoteArgs | Model definition for apc.PromoteArgs |
| apc.TCBMsg | Model definition for apc.TCBMsg |
| apc.TCOMsg | Model definition for apc.TCOMsg |
| apc.Transform | Model definition for apc.Transform |
| cmn.AdaptiveToSet | Model definition for cmn.AdaptiveToSet |
| cmn.ArchConfToSet | Model definition for cmn.ArchConfToSet |
| cmn.AuthConfToSet | Model definition for cmn.AuthConfToSet |
| cmn.AuthSignatureConfToSet | Model definition for cmn.AuthSignatureConfToSet |
| cmn.Bck | Model definition for cmn.Bck |
| cmn.BurstyToSet | Model definition for cmn.BurstyToSet |
| cmn.ChunksConfToSet | Model definition for cmn.ChunksConfToSet |
| cmn.CksumConfToSet | Model definition for cmn.CksumConfToSet |
| cmn.ClientConfToSet | Model definition for cmn.ClientConfToSet |
| cmn.ClusterKeyConfToSet | Model definition for cmn.ClusterKeyConfToSet |
| cmn.ConfigToSet | Model definition for cmn.ConfigToSet |
| cmn.DiskConfToSet | Model definition for cmn.DiskConfToSet |
| cmn.DownloaderConfToSet | Model definition for cmn.DownloaderConfToSet |
| cmn.DsortConfToSet | Model definition for cmn.DsortConfToSet |
| cmn.ECConfToSet | Model definition for cmn.ECConfToSet |
| cmn.FSHCConfToSet | Model definition for cmn.FSHCConfToSet |
| cmn.FSPConf | Model definition for cmn.FSPConf |
| cmn.GetBatchConfToSet | Model definition for cmn.GetBatchConfToSet |
| cmn.HTTPConfToSet | Model definition for cmn.HTTPConfToSet |
| cmn.JWKSCacheConfToSet | Model definition for cmn.JWKSCacheConfToSet |
| cmn.KeepaliveConfToSet | Model definition for cmn.KeepaliveConfToSet |
| cmn.KeepaliveTrackerConfToSet | Model definition for cmn.KeepaliveTrackerConfToSet |
| cmn.LRUConfToSet | Model definition for cmn.LRUConfToSet |
| cmn.LogConfToSet | Model definition for cmn.LogConfToSet |
| cmn.MemsysConfToSet | Model definition for cmn.MemsysConfToSet |
| cmn.MirrorConfToSet | Model definition for cmn.MirrorConfToSet |
| cmn.NetConfToSet | Model definition for cmn.NetConfToSet |
| cmn.Ns | Model definition for cmn.Ns |
| cmn.OIDCConfToSet | Model definition for cmn.OIDCConfToSet |
| cmn.PeriodConfToSet | Model definition for cmn.PeriodConfToSet |
| cmn.ProxyConfToSet | Model definition for cmn.ProxyConfToSet |
| cmn.RateLimitBaseToSet | Model definition for cmn.RateLimitBaseToSet |
| cmn.RateLimitConfToSet | Model definition for cmn.RateLimitConfToSet |
| cmn.RebalanceConfToSet | Model definition for cmn.RebalanceConfToSet |
| cmn.RequiredClaimsConfToSet | Model definition for cmn.RequiredClaimsConfToSet |
| cmn.ResilverConfToSet | Model definition for cmn.ResilverConfToSet |
| cmn.SpaceConfToSet | Model definition for cmn.SpaceConfToSet |
| cmn.TCBConfToSet | Model definition for cmn.TCBConfToSet |
| cmn.TCOConfToSet | Model definition for cmn.TCOConfToSet |
| cmn.TCOMsg | Model definition for cmn.TCOMsg |
| cmn.TimeoutConfToSet | Model definition for cmn.TimeoutConfToSet |
| cmn.TraceExporterAuthConfToSet | Model definition for cmn.TraceExporterAuthConfToSet |
| cmn.TracingConfToSet | Model definition for cmn.TracingConfToSet |
| cmn.TransportConfToSet | Model definition for cmn.TransportConfToSet |
| cmn.VersionConfToSet | Model definition for cmn.VersionConfToSet |
| cmn.WritePolicyConfToSet | Model definition for cmn.WritePolicyConfToSet |
| cmn.XactConfToSet | Model definition for cmn.XactConfToSet |
| etl.ETLSpecMsg | Model definition for etl.ETLSpecMsg |
| etl.InitMsgBase | Model definition for etl.InitMsgBase |
| etl.InitSpecMsg | Model definition for etl.InitSpecMsg |
| etl.RuntimeSpec | Model definition for etl.RuntimeSpec |
| httpbckdelete_request | Model definition for httpbckdelete_request |
| httpbckpost_request | Model definition for httpbckpost_request |
| httpcluput_request | Model definition for httpcluput_request |
| httpetlput_request | Model definition for httpetlput_request |
| httpobjpost_request | Model definition for httpobjpost_request |