3.3. Open API

3.3.1. Replicator API /local

GET /replicator/local/buckets/{bucketName}

Get bucket metadata

Get bucket metadata through topology

Parameters:
  • bucketName (string) –

Example request:

GET /replicator/local/buckets/{bucketName} HTTP/1.1
Host: example.com
Status Codes:
  • 200 OK

    OK

    Example response:

    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
        "id": "string",
        "clientId": "string",
        "site": "string",
        "creation": "2024-02-21T11:27:52.867506",
        "expires": "2024-02-21T11:27:52.867506",
        "status": "UNKNOWN"
    }
    

  • 400 Bad Request – Bad Request

  • 401 Unauthorized – Unauthorized

  • 404 Not Found – Bucket not found

  • 410 Gone – Bucket deleted

  • 500 Internal Server Error – Internal Error

Request Headers:
  • x-clonecloudstore-client-id – Client ID (Required)

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-target-id – Target ID

Response Headers:
  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

HEAD /replicator/local/buckets/{bucketName}

Check if bucket exists on a remote replicator

Loops through the topology and search for a remote replicator owning the bucket

Parameters:
  • bucketName (string) –

Query Parameters:
  • fullCheck (boolean) – If True implies Storage checking

Status Codes:
Request Headers:
  • x-clonecloudstore-client-id – Client ID (Required)

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-target-id – Target ID

Response Headers:
  • x-clonecloudstore-type – Type as StorageType

  • x-clonecloudstore-target-id – Id of Remote Topology

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

GET /replicator/local/buckets/{bucketName}/{objectName}

Read Object from a remote replicator

Loops through topology and search for a remote replicator able to service the request. Open up a stream with remote replicator which reads from its local accessor

Parameters:
  • bucketName (string) –

  • objectName (string) –

Example request:

GET /replicator/local/buckets/{bucketName}/{objectName} HTTP/1.1
Host: example.com
Status Codes:
Request Headers:
  • Accept-Encoding – May contain ZSTD for compression

  • x-clonecloudstore-client-id – Client ID (Required)

  • x-clonecloudstore-target-id – Target ID

  • x-clonecloudstore-op-id – Operation ID

Response Headers:
  • x-clonecloudstore-id – Id

  • x-clonecloudstore-site – Site

  • x-clonecloudstore-bucket – Bucket Name

  • x-clonecloudstore-name – Object Name

  • x-clonecloudstore-creation – Creation Date

  • x-clonecloudstore-size – Object Size

  • x-clonecloudstore-hash – Object Hash SHA-256

  • x-clonecloudstore-metadata – Object Metadata

  • x-clonecloudstore-status – Object Status

  • x-clonecloudstore-expires – Expiration Date

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

HEAD /replicator/local/buckets/{bucketName}/{pathDirectoryOrObject}

Check if object exists on a remote replicator

Loops through the topology and search for a remote replicator owning the object

Parameters:
  • bucketName (string) –

  • pathDirectoryOrObject (string) –

Query Parameters:
  • fullCheck (boolean) – If True implies Storage checking

Status Codes:
Request Headers:
  • x-clonecloudstore-client-id – Client ID (Required)

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-target-id – Target ID

Response Headers:
  • x-clonecloudstore-type – Type as StorageType

  • x-clonecloudstore-target-id – Id of Remote Topology

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

3.3.2. Replicator API /remote

GET /replicator/remote/buckets/{bucketName}

Get bucket metadata

Get bucket metadata through topology

Parameters:
  • bucketName (string) –

Example request:

GET /replicator/remote/buckets/{bucketName} HTTP/1.1
Host: example.com
Status Codes:
  • 200 OK

    OK

    Example response:

    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
        "id": "string",
        "clientId": "string",
        "site": "string",
        "creation": "2024-02-21T11:27:52.867506",
        "expires": "2024-02-21T11:27:52.867506",
        "status": "UNKNOWN"
    }
    

  • 400 Bad Request – Bad Request

  • 401 Unauthorized – Unauthorized

  • 404 Not Found – Bucket not found

  • 410 Gone – Bucket deleted

  • 500 Internal Server Error – Internal Error

Request Headers:
  • x-clonecloudstore-client-id – Client ID (Required)

  • x-clonecloudstore-op-id – Operation ID

Response Headers:
  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

HEAD /replicator/remote/buckets/{bucketName}

Check if bucket exists on a remote replicator

Loops through the topology and search for a remote replicator owning the bucket

Parameters:
  • bucketName (string) –

Query Parameters:
  • fullCheck (boolean) – If True implies Storage checking

Status Codes:
Request Headers:
  • x-clonecloudstore-client-id – Client ID (Required)

  • x-clonecloudstore-op-id

Response Headers:
  • x-clonecloudstore-type – Type as StorageType

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

GET /replicator/remote/buckets/{bucketName}/{objectName}

Read Object from a remote replicator

Loops through topology and search for a remote replicator able to service the request. Open up a stream with remote replicator which reads from its local accessor

Parameters:
  • bucketName (string) –

  • objectName (string) –

Example request:

GET /replicator/remote/buckets/{bucketName}/{objectName} HTTP/1.1
Host: example.com
Status Codes:
Request Headers:
  • Accept-Encoding – May contain ZSTD for compression

  • x-clonecloudstore-client-id – Client ID (Required)

  • x-clonecloudstore-op-id – Operation ID

Response Headers:
  • x-clonecloudstore-id – Id

  • x-clonecloudstore-site – Site

  • x-clonecloudstore-bucket – Bucket Name

  • x-clonecloudstore-name – Object Name

  • x-clonecloudstore-creation – Creation Date

  • x-clonecloudstore-size – Object Size

  • x-clonecloudstore-hash – Object Hash SHA-256

  • x-clonecloudstore-metadata – Object Metadata

  • x-clonecloudstore-status – Object Status

  • x-clonecloudstore-expires – Expiration Date

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

HEAD /replicator/remote/buckets/{bucketName}/{pathDirectoryOrObject}

Check if object exists on a remote replicator

Loops through the topology and search for a remote replicator owning the object

Parameters:
  • bucketName (string) –

  • pathDirectoryOrObject (string) –

Query Parameters:
  • fullCheck (boolean) – If True implies Storage checking

Status Codes:
Request Headers:
  • x-clonecloudstore-client-id – Client ID (Required)

  • x-clonecloudstore-op-id

Response Headers:
  • x-clonecloudstore-type – Type as StorageType

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

POST /replicator/remote/orders

Create order

Create replication order remotely

Example request:

POST /replicator/remote/orders HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "opId": "string",
    "fromSite": "string",
    "toSite": "string",
    "clientId": "string",
    "bucketName": "string",
    "objectName": "string",
    "size": 1,
    "hash": "string",
    "action": "CREATE"
}
Status Codes:
Response Headers:
  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

POST /replicator/remote/orders/multiple

Create orders

Create replication orders remotely

Example request:

POST /replicator/remote/orders/multiple HTTP/1.1
Host: example.com
Content-Type: application/json

[
    {
        "opId": "string",
        "fromSite": "string",
        "toSite": "string",
        "clientId": "string",
        "bucketName": "string",
        "objectName": "string",
        "size": 1,
        "hash": "string",
        "action": "CREATE"
    }
]
Status Codes:
Response Headers:
  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message

  • x-clonecloudstore-op-id – Operation ID

  • x-clonecloudstore-module – Module Id

  • x-clonecloudstore-error – Error Message