Skip to content

Barbican

All operations require authentication.

19 operationsv2/publicCloud/project
Agent setup

List secret containersProduction

GET
/v2/publicCloud/project/{projectId}/keyManager/container

Returns the secret containers of the project. A container groups secrets used together, such as a certificate and its private key. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

Headers

X-Pagination-Cursor
string

Pagination cursor

X-Pagination-Size
integer

Pagination size

Response

200Container[]successful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the container

currentState
read-only
ContainerCurrentState

Current observed state of the container from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the container

id
read-only
stringuuid

Unique identifier of the container

resourceStatus
read-only
ResourceStatusEnum

Container readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
ContainerTargetSpec

Last target specification of the container

updatedAt
read-only
stringdate-time

Last update date of the container

Example uses projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/container \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
[ { "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "creatorId": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "status": "ACTIVE", "type": "CERTIFICATE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "type": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z" }]

Get a secret containerProduction

GET
/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}

Returns the container, its secret references and its current state. Relies on the OpenStack Barbican component.

Path parameters

containerId
required
stringuuid

Container ID

projectId
required
string

Project ID

Response

200Containersuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the container

currentState
read-only
ContainerCurrentState

Current observed state of the container from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the container

id
read-only
stringuuid

Unique identifier of the container

resourceStatus
read-only
ResourceStatusEnum

Container readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
ContainerTargetSpec

Last target specification of the container

updatedAt
read-only
stringdate-time

Last update date of the container

404objectError 404 response

Example uses containerId = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/container/{containerId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "creatorId": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "status": "ACTIVE", "type": "CERTIFICATE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "type": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z"}

Create a secret containerProduction

POST
/v2/publicCloud/project/{projectId}/keyManager/container

Creates a certificate, RSA or generic container in a region. It references existing secrets, each under a role name. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

Request body (required)

targetSpec
required
ContainerTargetSpec

Desired target specification for the container

Response

200Containersuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the container

currentState
read-only
ContainerCurrentState

Current observed state of the container from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the container

id
read-only
stringuuid

Unique identifier of the container

resourceStatus
read-only
ResourceStatusEnum

Container readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
ContainerTargetSpec

Last target specification of the container

updatedAt
read-only
stringdate-time

Last update date of the container

400objectError 400 response
409objectError 409 response

Example uses projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/container \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "creatorId": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "status": "ACTIVE", "type": "CERTIFICATE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "type": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z"}

Delete a secret containerProduction

DELETE
/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}

Deletes the container. Relies on the OpenStack Barbican component.

Path parameters

containerId
required
stringuuid

Container ID

projectId
required
string

Project ID

Response

200Containersuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the container

currentState
read-only
ContainerCurrentState

Current observed state of the container from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the container

id
read-only
stringuuid

Unique identifier of the container

resourceStatus
read-only
ResourceStatusEnum

Container readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
ContainerTargetSpec

Last target specification of the container

updatedAt
read-only
stringdate-time

Last update date of the container

404objectError 404 response
409objectError 409 response

Example uses containerId = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/container/{containerId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "creatorId": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "status": "ACTIVE", "type": "CERTIFICATE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "type": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z"}

Replace container secret referencesProduction

PUT
/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}

Replaces all secret references of the container. Only the secret references can be changed after creation. Relies on the OpenStack Barbican component.

Path parameters

containerId
required
stringuuid

Container ID

projectId
required
string

Project ID

Request body (required)

checksum
string

Optional concurrency-control checksum. When supplied, it must match the resource's current checksum or the request is rejected with a 409 checksum-mismatch conflict. When omitted or empty, the concurrency check is skipped and the write is forced (last-write-wins).

targetSpec
required
ContainerUpdateTargetSpec

Desired target specification for the container

Response

200Containersuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the container

currentState
read-only
ContainerCurrentState

Current observed state of the container from the infrastructure

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the container

id
read-only
stringuuid

Unique identifier of the container

resourceStatus
read-only
ResourceStatusEnum

Container readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
ContainerTargetSpec

Last target specification of the container

updatedAt
read-only
stringdate-time

Last update date of the container

404objectError 404 response
409objectError 409 response

Example uses containerId = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/container/{containerId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "creatorId": "string", "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "status": "ACTIVE", "type": "CERTIFICATE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "location": { "availabilityZone": "string", "region": "string" }, "name": "string", "secretRefs": [ { "name": "string", "secret": { "id": "00000000-0000-0000-0000-000000000000" } } ], "type": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z"}

List container consumersProduction

GET
/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}/consumer

Returns the resources registered as using the container: instances, images or load balancers. Relies on the OpenStack Barbican component.

Path parameters

containerId
required
stringuuid

Container ID

projectId
required
string

Project ID

Headers

X-Pagination-Cursor
string

Pagination cursor

X-Pagination-Size
integer

Pagination size

Response

200ContainerConsumer[]successful operation
id
read-only
string

Computed consumer identifier

resourceId
read-only
stringuuid

UUID of the resource consuming the container

resourceType
read-only
ConsumerResourceTypeEnum

Type of the resource consuming the container

ValuesIMAGEINSTANCELOADBALANCER
service
read-only
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK

Example uses containerId = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}/consumer \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
[ { "id": "string", "resourceId": "00000000-0000-0000-0000-000000000000", "resourceType": "IMAGE", "service": "COMPUTE" }]

Get a container consumerProduction

GET
/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}/consumer/{consumerId}

Returns one resource registered as using the container, with its type and service. Relies on the OpenStack Barbican component.

Path parameters

consumerId
required
string

Consumer ID

containerId
required
stringuuid

Container ID

projectId
required
string

Project ID

Response

200ContainerConsumersuccessful operation
id
read-only
string

Computed consumer identifier

resourceId
read-only
stringuuid

UUID of the resource consuming the container

resourceType
read-only
ConsumerResourceTypeEnum

Type of the resource consuming the container

ValuesIMAGEINSTANCELOADBALANCER
service
read-only
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK
404objectError 404 response

Example uses consumerId = string, containerId = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}/consumer/{consumerId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "id": "string", "resourceId": "00000000-0000-0000-0000-000000000000", "resourceType": "IMAGE", "service": "COMPUTE"}

Register a container consumerProduction

POST
/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}/consumer

Records that an instance, an image or a load balancer uses the container. Relies on the OpenStack Barbican component.

Path parameters

containerId
required
stringuuid

Container ID

projectId
required
string

Project ID

Request body (required)

resourceId
required
stringuuid

UUID of the resource consuming the container

resourceType
required
ConsumerResourceTypeEnum

Type of the resource consuming the container

ValuesIMAGEINSTANCELOADBALANCER
service
required
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK

Response

200ContainerConsumersuccessful operation
id
read-only
string

Computed consumer identifier

resourceId
read-only
stringuuid

UUID of the resource consuming the container

resourceType
read-only
ConsumerResourceTypeEnum

Type of the resource consuming the container

ValuesIMAGEINSTANCELOADBALANCER
service
read-only
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK
400objectError 400 response
404objectError 404 response
409objectError 409 response

Example uses containerId = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}/consumer \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "id": "string", "resourceId": "00000000-0000-0000-0000-000000000000", "resourceType": "IMAGE", "service": "COMPUTE"}

Remove a container consumerProduction

DELETE
/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}/consumer/{consumerId}

Removes the consumer registration. The resource itself is not deleted. Relies on the OpenStack Barbican component.

Path parameters

consumerId
required
string

Consumer ID

containerId
required
stringuuid

Container ID

projectId
required
string

Project ID

Response

200ContainerConsumersuccessful operation
id
read-only
string

Computed consumer identifier

resourceId
read-only
stringuuid

UUID of the resource consuming the container

resourceType
read-only
ConsumerResourceTypeEnum

Type of the resource consuming the container

ValuesIMAGEINSTANCELOADBALANCER
service
read-only
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK
404objectError 404 response

Example uses consumerId = string, containerId = 00000000-0000-0000-0000-000000000000, projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/container/{containerId}/consumer/{consumerId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "id": "string", "resourceId": "00000000-0000-0000-0000-000000000000", "resourceType": "IMAGE", "service": "COMPUTE"}

List secret consumersProduction

GET
/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/consumer

Returns the resources registered as using the secret: instances, images or load balancers. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

secretId
required
stringuuid

Secret ID

Headers

X-Pagination-Cursor
string

Pagination cursor

X-Pagination-Size
integer

Pagination size

Response

200SecretConsumer[]successful operation
id
read-only
string

Computed consumer identifier

resourceId
read-only
stringuuid

UUID of the resource consuming the secret

resourceType
read-only
ConsumerResourceTypeEnum

Type of the resource consuming the secret

ValuesIMAGEINSTANCELOADBALANCER
service
read-only
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK

Example uses projectId = string, secretId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/consumer \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
[ { "id": "string", "resourceId": "00000000-0000-0000-0000-000000000000", "resourceType": "IMAGE", "service": "COMPUTE" }]

Get a secret consumerProduction

GET
/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/consumer/{consumerId}

Returns one resource registered as using the secret, with its type and service. Relies on the OpenStack Barbican component.

Path parameters

consumerId
required
string

Consumer ID

projectId
required
string

Project ID

secretId
required
stringuuid

Secret ID

Response

200SecretConsumersuccessful operation
id
read-only
string

Computed consumer identifier

resourceId
read-only
stringuuid

UUID of the resource consuming the secret

resourceType
read-only
ConsumerResourceTypeEnum

Type of the resource consuming the secret

ValuesIMAGEINSTANCELOADBALANCER
service
read-only
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK
404objectError 404 response

Example uses consumerId = string, projectId = string, secretId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/consumer/{consumerId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "id": "string", "resourceId": "00000000-0000-0000-0000-000000000000", "resourceType": "IMAGE", "service": "COMPUTE"}

Register a secret consumerProduction

POST
/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/consumer

Records that an instance, an image or a load balancer uses the secret. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

secretId
required
stringuuid

Secret ID

Request body (required)

resourceId
required
stringuuid

UUID of the resource consuming the secret

resourceType
required
ConsumerResourceTypeEnum

Type of the resource consuming the secret

ValuesIMAGEINSTANCELOADBALANCER
service
required
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK

Response

200SecretConsumersuccessful operation
id
read-only
string

Computed consumer identifier

resourceId
read-only
stringuuid

UUID of the resource consuming the secret

resourceType
read-only
ConsumerResourceTypeEnum

Type of the resource consuming the secret

ValuesIMAGEINSTANCELOADBALANCER
service
read-only
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK
400objectError 400 response
404objectError 404 response
409objectError 409 response

Example uses projectId = string, secretId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/consumer \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "id": "string", "resourceId": "00000000-0000-0000-0000-000000000000", "resourceType": "IMAGE", "service": "COMPUTE"}

Remove a secret consumerProduction

DELETE
/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/consumer/{consumerId}

Removes the consumer registration. The resource itself is not deleted. Relies on the OpenStack Barbican component.

Path parameters

consumerId
required
string

Consumer ID

projectId
required
string

Project ID

secretId
required
stringuuid

Secret ID

Response

200SecretConsumersuccessful operation
id
read-only
string

Computed consumer identifier

resourceId
read-only
stringuuid

UUID of the resource consuming the secret

resourceType
read-only
ConsumerResourceTypeEnum

Type of the resource consuming the secret

ValuesIMAGEINSTANCELOADBALANCER
service
read-only
ConsumerServiceEnum

OpenStack service type of the consumer

ValuesCOMPUTEIMAGELOADBALANCERNETWORK
404objectError 404 response

Example uses consumerId = string, projectId = string, secretId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/consumer/{consumerId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "id": "string", "resourceId": "00000000-0000-0000-0000-000000000000", "resourceType": "IMAGE", "service": "COMPUTE"}

List secretsProduction

GET
/v2/publicCloud/project/{projectId}/keyManager/secret

Returns the secrets of the project, without their payload. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

Headers

X-Pagination-Cursor
string

Pagination cursor

X-Pagination-Size
integer

Pagination size

Response

200Secret[]successful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the secret

currentState
read-only
SecretCurrentState

Current state of the secret

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the secret

id
read-only
stringuuid

Unique identifier of the secret

resourceStatus
read-only
ResourceStatusEnum

Secret readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SecretTargetSpec

Last target specification of the secret

updatedAt
read-only
stringdate-time

Last update date of the secret

Example uses projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
[ { "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "algorithm": "AES", "bitLength": 128, "creatorId": "string", "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE", "status": "ACTIVE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "algorithm": "AES", "bitLength": 128, "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payload": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z" }]

Get a secretProduction

GET
/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}

Returns the secret metadata and its current state, without the payload. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

secretId
required
stringuuid

Secret ID

Response

200Secretsuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the secret

currentState
read-only
SecretCurrentState

Current state of the secret

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the secret

id
read-only
stringuuid

Unique identifier of the secret

resourceStatus
read-only
ResourceStatusEnum

Secret readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SecretTargetSpec

Last target specification of the secret

updatedAt
read-only
stringdate-time

Last update date of the secret

404objectError 404 response

Example uses projectId = string, secretId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "algorithm": "AES", "bitLength": 128, "creatorId": "string", "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE", "status": "ACTIVE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "algorithm": "AES", "bitLength": 128, "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payload": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z"}

Create a secretProduction

POST
/v2/publicCloud/project/{projectId}/keyManager/secret

Creates a secret in a region. A payload requires a payload content type, and it is never returned in responses. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

Request body (required)

targetSpec
required
SecretTargetSpec

Desired target specification for the secret to create

Response

200Secretsuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the secret

currentState
read-only
SecretCurrentState

Current state of the secret

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the secret

id
read-only
stringuuid

Unique identifier of the secret

resourceStatus
read-only
ResourceStatusEnum

Secret readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SecretTargetSpec

Last target specification of the secret

updatedAt
read-only
stringdate-time

Last update date of the secret

400objectError 400 response
409objectError 409 response

Example uses projectId = string

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "algorithm": "AES", "bitLength": 128, "creatorId": "string", "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE", "status": "ACTIVE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "algorithm": "AES", "bitLength": 128, "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payload": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z"}

Delete a secretProduction

DELETE
/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}

Deletes the secret and its payload. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

secretId
required
stringuuid

Secret ID

Response

200Secretsuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the secret

currentState
read-only
SecretCurrentState

Current state of the secret

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the secret

id
read-only
stringuuid

Unique identifier of the secret

resourceStatus
read-only
ResourceStatusEnum

Secret readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SecretTargetSpec

Last target specification of the secret

updatedAt
read-only
stringdate-time

Last update date of the secret

404objectError 404 response
409objectError 409 response

Example uses projectId = string, secretId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "algorithm": "AES", "bitLength": 128, "creatorId": "string", "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE", "status": "ACTIVE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "algorithm": "AES", "bitLength": 128, "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payload": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z"}

Update secret metadataProduction

PUT
/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}

Replaces all metadata of the secret. Only the metadata can be changed after creation. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

secretId
required
stringuuid

Secret ID

Request body (required)

checksum
string

Optional concurrency-control checksum. When supplied, it must match the resource's current checksum or the request is rejected with a 409 checksum-mismatch conflict. When omitted or empty, the concurrency check is skipped and the write is forced (last-write-wins).

targetSpec
required
SecretUpdateTargetSpec

Desired target specification for the secret

Response

200Secretsuccessful operation
checksum
read-only
string

Computed hash representing the current target specification value

createdAt
read-only
stringdate-time

Creation date of the secret

currentState
read-only
SecretCurrentState

Current state of the secret

currentTasks
read-only
CurrentTask[]

Ongoing asynchronous tasks related to the secret

id
read-only
stringuuid

Unique identifier of the secret

resourceStatus
read-only
ResourceStatusEnum

Secret readiness in the system

ValuesCREATINGCREATION_PLANNEDDELETINGERROROUT_OF_SYNCREADYSUSPENDEDUNKNOWNUPDATING
targetSpec
read-only
SecretTargetSpec

Last target specification of the secret

updatedAt
read-only
stringdate-time

Last update date of the secret

400objectError 400 response
404objectError 404 response
409objectError 409 response

Example uses projectId = string, secretId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId} \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "checksum": "string", "createdAt": "2024-01-01T12:00:00Z", "currentState": { "algorithm": "AES", "bitLength": 128, "creatorId": "string", "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE", "status": "ACTIVE" }, "currentTasks": [ { "errors": [ { "message": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "link": "string", "status": "ERROR", "type": "string" } ], "id": "00000000-0000-0000-0000-000000000000", "resourceStatus": "CREATING", "targetSpec": { "algorithm": "AES", "bitLength": 128, "expiration": "2024-01-01T12:00:00Z", "location": { "availabilityZone": "string", "region": "string" }, "metadata": { "key": "string" }, "mode": "CBC", "name": "string", "payload": "string", "payloadContentType": "APPLICATION_OCTET_STREAM", "secretType": "CERTIFICATE" }, "updatedAt": "2024-01-01T12:00:00Z"}

Get a secret payloadProduction

POST
/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/payload

Returns the payload of the secret. No other call returns it. Relies on the OpenStack Barbican component.

Path parameters

projectId
required
string

Project ID

secretId
required
stringuuid

Secret ID

Response

200SecretPayloadsuccessful operation
payload
read-only
stringpassword

Secret payload data

404objectError 404 response
409objectError 409 response

Example uses projectId = string, secretId = 00000000-0000-0000-0000-000000000000

$ curl https://api.eu.ovhcloud.com/v2/publicCloud/project/{projectId}/keyManager/secret/{secretId}/payload \
  -H "authorization: Bearer $OVH_TOKEN"
ResponseExample
{ "payload": "string"}