Skip to content

Share Replication

All operations require authentication.

7 operationsv1/storage/netapp
Agent setup

List share replicationsBeta

GET
/1.0/storage/netapp/{serviceName}/shareReplication

Returns the share replications of the service, whether this service is the source or the destination.

Path parameters

serviceName
required
stringuuid

Service name

Response

200NetAppShareReplication[]successful operation
createdAt
read-only
stringdate-time

Share replication creation date

description
read-only
string

Share replication description

destination
read-only
NetAppShareReplicationDestination

Share replication destination information

id
read-only
stringuuid

Share replication ID

progress
read-only
integer

Percentage of the source share’s data that has been successfully replicated to the destination share

replicaState
read-only
NetAppShareReplicaStateEnum

Share replica state

Valuesactiveerrorin_syncout_of_sync
source
read-only
NetAppShareReplicationSource

Share replication source information

status
read-only
NetAppShareReplicationStatusEnum

Share replication status

Valuesacceptedcompletedcutovercutting_overdeleteddeletingerrorpending

Example uses serviceName = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/1.0/storage/netapp/{serviceName}/shareReplication \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
[ { "createdAt": "2024-01-01T12:00:00Z", "description": "string", "destination": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "id": "00000000-0000-0000-0000-000000000000", "progress": 0, "replicaState": "active", "source": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "status": "accepted" }]

Get a share replicationBeta

GET
/1.0/storage/netapp/{serviceName}/shareReplication/{shareReplicationId}

Returns the source, destination, status and progress of the replication, in percent.

Path parameters

serviceName
required
stringuuid

Service name

shareReplicationId
required
stringuuid

Share replication ID

Response

200NetAppShareReplicationsuccessful operation
createdAt
read-only
stringdate-time

Share replication creation date

description
read-only
string

Share replication description

destination
read-only
NetAppShareReplicationDestination

Share replication destination information

id
read-only
stringuuid

Share replication ID

progress
read-only
integer

Percentage of the source share’s data that has been successfully replicated to the destination share

replicaState
read-only
NetAppShareReplicaStateEnum

Share replica state

Valuesactiveerrorin_syncout_of_sync
source
read-only
NetAppShareReplicationSource

Share replication source information

status
read-only
NetAppShareReplicationStatusEnum

Share replication status

Valuesacceptedcompletedcutovercutting_overdeleteddeletingerrorpending

Example uses serviceName = 00000000-0000-0000-0000-000000000000, shareReplicationId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/1.0/storage/netapp/{serviceName}/shareReplication/{shareReplicationId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "createdAt": "2024-01-01T12:00:00Z", "description": "string", "destination": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "id": "00000000-0000-0000-0000-000000000000", "progress": 0, "replicaState": "active", "source": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "status": "accepted"}

List compatible replication destinationsBeta

GET
/1.0/storage/netapp/{serviceName}/shareReplicationServicesCompatibility

Returns, for each service on which you are allowed to accept share replications, whether it can be a destination for share replications from this service, and the reason when it cannot. A destination is compatible when it is in the same region as the source service, and when the source service uses a public network while the destination uses a vRack network. Set compatibleOnly to true to return only compatible destinations.

Path parameters

serviceName
required
stringuuid

Service name

Query parameters

compatibleOnly
boolean

If set to true, only services compatible as share replication destinations for the given source are returned

Response

200NetAppShareReplicationServicesCompatibility[]successful operation
compatible
read-only
boolean

Whether service can be used as destination

reason
read-only
string

Indicates why service can't be used as destination if applicable

service
read-only
NetAppServiceSummary

Summarized properties of the checked service

Example uses serviceName = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/1.0/storage/netapp/{serviceName}/shareReplicationServicesCompatibility \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
[ { "compatible": true, "reason": "string", "service": { "id": "00000000-0000-0000-0000-000000000000", "name": "string" } }]

Create a share replicationBeta

POST
/1.0/storage/netapp/{serviceName}/shareReplication

Creates a share replication from a share of this service to the service given in destinationServiceId. It is returned with status pending, and the replication only starts after it is accepted on the destination service. To find a compatible destination, use List compatible replication destinations.

Path parameters

serviceName
required
stringuuid

Service name

Request body (required)

description
string

Share replication description

destinationServiceId
stringuuid

Replication service ID (destination)

sourceShareId
stringuuid

Replication share ID (source)

Response

200NetAppShareReplicationsuccessful operation
createdAt
read-only
stringdate-time

Share replication creation date

description
read-only
string

Share replication description

destination
read-only
NetAppShareReplicationDestination

Share replication destination information

id
read-only
stringuuid

Share replication ID

progress
read-only
integer

Percentage of the source share’s data that has been successfully replicated to the destination share

replicaState
read-only
NetAppShareReplicaStateEnum

Share replica state

Valuesactiveerrorin_syncout_of_sync
source
read-only
NetAppShareReplicationSource

Share replication source information

status
read-only
NetAppShareReplicationStatusEnum

Share replication status

Valuesacceptedcompletedcutovercutting_overdeleteddeletingerrorpending

Example uses serviceName = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/1.0/storage/netapp/{serviceName}/shareReplication \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "createdAt": "2024-01-01T12:00:00Z", "description": "string", "destination": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "id": "00000000-0000-0000-0000-000000000000", "progress": 0, "replicaState": "active", "source": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "status": "accepted"}

Accept a share replicationBeta

POST
/1.0/storage/netapp/{serviceName}/shareReplication/{shareReplicationId}/accept

Accepts the share replication and creates the destination share on this service, with the name, size and protocol given in the body. The replication must be in status pending. Acceptance is asynchronous: the replication is returned with status accepted, follow its progress until the replica state is in_sync.

Path parameters

serviceName
required
stringuuid

Service name

shareReplicationId
required
stringuuid

Share replication ID

Request body (required)

share
NetAppShareForShareReplication

Replication share

Response

200NetAppShareReplicationsuccessful operation
createdAt
read-only
stringdate-time

Share replication creation date

description
read-only
string

Share replication description

destination
read-only
NetAppShareReplicationDestination

Share replication destination information

id
read-only
stringuuid

Share replication ID

progress
read-only
integer

Percentage of the source share’s data that has been successfully replicated to the destination share

replicaState
read-only
NetAppShareReplicaStateEnum

Share replica state

Valuesactiveerrorin_syncout_of_sync
source
read-only
NetAppShareReplicationSource

Share replication source information

status
read-only
NetAppShareReplicationStatusEnum

Share replication status

Valuesacceptedcompletedcutovercutting_overdeleteddeletingerrorpending

Example uses serviceName = 00000000-0000-0000-0000-000000000000, shareReplicationId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/1.0/storage/netapp/{serviceName}/shareReplication/{shareReplicationId}/accept \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "createdAt": "2024-01-01T12:00:00Z", "description": "string", "destination": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "id": "00000000-0000-0000-0000-000000000000", "progress": 0, "replicaState": "active", "source": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "status": "accepted"}

Cut over a share replicationBeta

POST
/1.0/storage/netapp/{serviceName}/shareReplication/{shareReplicationId}/cutover

Cuts over the share replication: the destination share becomes the primary, the replication stops, and the source and destination data diverge after it, so the operation cannot be undone. The call must be made on the destination service, and the replication must be in status accepted. The cutover is asynchronous: follow the status of the share replication until it is completed.

Path parameters

serviceName
required
stringuuid

Service name

shareReplicationId
required
stringuuid

Share replication ID

Response

200NetAppShareReplicationsuccessful operation
createdAt
read-only
stringdate-time

Share replication creation date

description
read-only
string

Share replication description

destination
read-only
NetAppShareReplicationDestination

Share replication destination information

id
read-only
stringuuid

Share replication ID

progress
read-only
integer

Percentage of the source share’s data that has been successfully replicated to the destination share

replicaState
read-only
NetAppShareReplicaStateEnum

Share replica state

Valuesactiveerrorin_syncout_of_sync
source
read-only
NetAppShareReplicationSource

Share replication source information

status
read-only
NetAppShareReplicationStatusEnum

Share replication status

Valuesacceptedcompletedcutovercutting_overdeleteddeletingerrorpending

Example uses serviceName = 00000000-0000-0000-0000-000000000000, shareReplicationId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/1.0/storage/netapp/{serviceName}/shareReplication/{shareReplicationId}/cutover \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "createdAt": "2024-01-01T12:00:00Z", "description": "string", "destination": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "id": "00000000-0000-0000-0000-000000000000", "progress": 0, "replicaState": "active", "source": { "serviceID": "00000000-0000-0000-0000-000000000000", "shareID": "00000000-0000-0000-0000-000000000000" }, "status": "accepted"}

Delete a share replicationBeta

DELETE
/1.0/storage/netapp/{serviceName}/shareReplication/{shareReplicationId}

Deletes the share replication. Deletion is asynchronous and blocked while the replication is in status cutting_over, deleting or error. If the replication was accepted, the destination share is deleted with it.

Path parameters

serviceName
required
stringuuid

Service name

shareReplicationId
required
stringuuid

Share replication ID

Response

200—successful operation

Example uses serviceName = 00000000-0000-0000-0000-000000000000, shareReplicationId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/1.0/storage/netapp/{serviceName}/shareReplication/{shareReplicationId} \
  -H "authorization: Bearer $OVH_TOKEN"