Vasa Providers APIs

Vasa Providers APIs

APIs for managing VASA Providers

Table of Contents

1. Validate VASA Provider

  • This API validates the input specification of the VASA Provider

1.1. Prerequisites API

The following data is required

  • VASA Provider name

  • VASA Provider URL

  • List of storage containers

    • For each storage container

      • Name of the storage container

      • Storage protocol type

  • List of VASA users

    • For each VASA user

      • User name

      • Password.

Tip : Refer to: VasaProvider.

1.2. Steps API

  • Validate the input specification.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/validations' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "username" : "User1",
    "password" : "password"
  }, {
    "username" : "User2",
    "password" : "password"
  } ]
}'

HTTP Request

POST /v1/vasa-providers/validations HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 391
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "username" : "User1",
    "password" : "password"
  }, {
    "username" : "User2",
    "password" : "password"
  } ]
}

HTTP Response

HTTP/1.1 202 Accepted
Location: /v1/vasa-providers/validations/834f73a9-62a9-4e5a-8af1-987296ac1cc1
Content-Type: application/json
Content-Length: 321

{
  "id" : "834f73a9-62a9-4e5a-8af1-987296ac1cc1",
  "description" : "Validate input specification to add a VASA Provider to VMware Cloud Foundation",
  "executionStatus" : "IN_PROGRESS",
  "validationChecks" : [ {
    "description" : "Validating VASA Provider input specification",
    "resultStatus" : "UNKNOWN"
  } ]
}
  • Poll the status of the validation using the get validation API with the ID from the response.

Tip : Refer to: Get VASA Provider Validation.

[_validatevasaproviderspec] API [_getvasaprovidervalidation] API [_addvasaprovider] API [_getvasaproviders] API [_getvasaprovider] API [_updatevasaprovider] API [_removevasaprovider] API

2. Get VASA Provider Validation

2.1. Prerequisites API

The following data is required

  • ID of the VASA Provider Validation

2.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/validations/59f874aa-8fdd-4f47-9ada-5c05c1cd1cc6' -i -X GET \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/vasa-providers/validations/59f874aa-8fdd-4f47-9ada-5c05c1cd1cc6 HTTP/1.1
Accept: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 321

{
  "id" : "59f874aa-8fdd-4f47-9ada-5c05c1cd1cc6",
  "description" : "Validate input specification to add a VASA Provider to VMware Cloud Foundation",
  "executionStatus" : "COMPLETED",
  "validationChecks" : [ {
    "description" : "Validating VASA Provider input specification",
    "resultStatus" : "SUCCEEDED"
  } ]
}

[_validatevasaproviderspec] API [_getvasaprovidervalidation] API [_addvasaprovider] API [_getvasaproviders] API [_getvasaprovider] API [_updatevasaprovider] API [_removevasaprovider] API

3. Add VASA Provider

  • This API is used to add a VASA Provider to the system. The added VASA Provider would be used during domain creation, cluster creation flows.

  • If a VASA Provider already exists, you will get an error with HTTP status 400.

3.1. Prerequisites API

The following data is required

  • VASA Provider name

  • VASA Provider URL

  • List of storage containers

    • For each storage container

      • Name of the storage container

      • Storage protocol type

  • List of VASA users

    • For each VASA user

      • User name

      • Password.

Tip : Refer to: VasaProvider.

3.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "username" : "User1",
    "password" : "password"
  }, {
    "username" : "User2",
    "password" : "password"
  } ]
}'

HTTP Request

POST /v1/vasa-providers HTTP/1.1
Content-Type: application/json
Content-Length: 391
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "username" : "User1",
    "password" : "password"
  }, {
    "username" : "User2",
    "password" : "password"
  } ]
}

HTTP Response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 669

{
  "id" : "d8e76036-ce7c-4a78-bd08-6136e5f0c5b5",
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "id" : "7e4ec7f1-9713-41fd-a05c-8309528f83b8",
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "id" : "15140ede-bdca-48bb-981f-e75f1397084b",
    "username" : "User1"
  }, {
    "id" : "133bf525-71d4-4fd2-846c-27356ee5c527",
    "username" : "User2"
  }, {
    "id" : "ee6c1ee8-9a96-4d55-b1dc-4a1d0021ca3f",
    "username" : "User3"
  } ]
}

[_validatevasaproviderspec] API [_getvasaprovidervalidation] API [_addvasaprovider] API [_getvasaproviders] API [_getvasaprovider] API [_updatevasaprovider] API [_removevasaprovider] API

4. Get the VASA Providers

  • This API is used to get the VASA Providers.

4.1. Prerequisites API

None

4.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers' -i -X GET \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/vasa-providers HTTP/1.1
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 649

{
  "elements" : [ {
    "id" : "d8e76036-ce7c-4a78-bd08-6136e5f0c5b5",
    "name" : "VASA-Provider1",
    "url" : "https://10.0.0.217:8443/vasa/version.xml",
    "storageContainers" : [ {
      "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
      "name" : "StorageContainer-FC",
      "protocolType" : "FC"
    }, {
      "id" : "7e4ec7f1-9713-41fd-a05c-8309528f83b8",
      "name" : "StorageContainer-NFS",
      "protocolType" : "NFS"
    } ],
    "users" : [ {
      "id" : "15140ede-bdca-48bb-981f-e75f1397084b",
      "username" : "User1"
    }, {
      "id" : "133bf525-71d4-4fd2-846c-27356ee5c527",
      "username" : "User2"
    } ]
  } ]
}

[_validatevasaproviderspec] API [_getvasaprovidervalidation] API [_addvasaprovider] API [_getvasaproviders] API [_getvasaprovider] API [_updatevasaprovider] API [_removevasaprovider] API

5. Get a VASA Provider

This API is used to get a VASA Provider.

5.1. Prerequisites API

The following data is required:

  • ID of the VASA Provider

5.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5' -i -X GET \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5 HTTP/1.1
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 586

{
  "id" : "d8e76036-ce7c-4a78-bd08-6136e5f0c5b5",
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "id" : "7e4ec7f1-9713-41fd-a05c-8309528f83b8",
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "id" : "15140ede-bdca-48bb-981f-e75f1397084b",
    "username" : "User1"
  }, {
    "id" : "133bf525-71d4-4fd2-846c-27356ee5c527",
    "username" : "User2"
  } ]
}

[_validatevasaproviderspec] API [_getvasaprovidervalidation] API [_addvasaprovider] API [_getvasaproviders] API [_getvasaprovider] API [_updatevasaprovider] API [_removevasaprovider] API

6. Update a VASA Provider

  • This API is used to update a VASA Provider.

6.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

The following data is optional

  • VASA Provider name

  • VASA Provider URL

Tip : Refer to: Get the VASA Providers

6.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "name" : "new-VASA-Provider1",
  "url" : "https://10.0.32.217/vasa/version.xml"
}'

HTTP Request

PATCH /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5 HTTP/1.1
Content-Type: application/json
Content-Length: 85
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "name" : "new-VASA-Provider1",
  "url" : "https://10.0.32.217/vasa/version.xml"
}

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 590

{
  "id" : "d8e76036-ce7c-4a78-bd08-6136e5f0c5b5",
  "name" : "new-VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "id" : "7e4ec7f1-9713-41fd-a05c-8309528f83b8",
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "id" : "15140ede-bdca-48bb-981f-e75f1397084b",
    "username" : "User1"
  }, {
    "id" : "133bf525-71d4-4fd2-846c-27356ee5c527",
    "username" : "User2"
  } ]
}

[_validatevasaproviderspec] API [_getvasaprovidervalidation] API [_addvasaprovider] API [_getvasaproviders] API [_getvasaprovider] API [_updatevasaprovider] API [_removevasaprovider] API

7. Delete a VASA Provider

  • Used to delete a VASA Provider.

  • Deleting a VASA Provider which is being used, will give an error.

  • Deleting a VASA Provider which does not exist, will give a HTTP response code 404.

7.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

7.2. Steps API

  • Invoke the API

Tip : Refer to: Get the VASA Providers API to retrieve all VASA providers in the system and use the ID of VASA Provider to be deleted.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5' -i -X DELETE \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

DELETE /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5 HTTP/1.1
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 204 No Content

[_validatevasaproviderspec] API [_getvasaprovidervalidation] API [_addvasaprovider] API [_getvasaproviders] API [_getvasaprovider] API [_updatevasaprovider] API [_removevasaprovider] API

8. Get the Storage Containers of a VASA Provider

  • This API is used to fetch all the storage containers of a VASA Provider

8.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

Tip : Refer to: Get the VASA Providers

8.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers' -i -X GET \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers HTTP/1.1
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 228

[ {
  "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
  "name" : "StorageContainer-FC",
  "protocolType" : "FC"
}, {
  "id" : "7e4ec7f1-9713-41fd-a05c-8309528f83b8",
  "name" : "StorageContainer-NFS",
  "protocolType" : "NFS"
} ]

[_getvasaproviders] API [_getvasaproviderstoragecontainers] API [_getvasaprovideruser] API [_addvasaproviderstoragecontainer] API [_addvasaprovideruser] API [_updatevasaproviderstoragecontainer] API [_updatevasaprovideruser] API [_removevasaproviderstoragecontainer] API

9. Get the Storage Containers by ProtocolType

  • This API is used to fetch all the storage containers for a given protocol type

9.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

  • Protocol type of the storage container

Tip : Refer to: Get the VASA Providers

9.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers?protocolType=FC' -i -X GET \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers?protocolType=FC HTTP/1.1
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 114

[ {
  "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
  "name" : "StorageContainer-FC",
  "protocolType" : "FC"
} ]

[_getvasaproviders] API [_getvasaproviderstoragecontainers] API [_getvasaprovideruser] API [_addvasaproviderstoragecontainer] API [_addvasaprovideruser] API [_updatevasaproviderstoragecontainer] API [_updatevasaprovideruser] API [_removevasaproviderstoragecontainer] API

10. Add the Storage Containers to a VASA Provider

  • This API is used to add the storage containers to a VASA Provider.

  • If a storage container already exists, you will get an error with HTTP status 400.

10.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

  • List of storage containers

    • For each storage container

      • Name of the storage container

      • Storage protocol type

Tip : Refer to: Get the VASA Providers

10.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '[ {
  "name" : "StorageContainer-ISCSI",
  "protocolType" : "ISCSI"
} ]'

HTTP Request

POST /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers HTTP/1.1
Content-Type: application/json
Content-Length: 71
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

[ {
  "name" : "StorageContainer-ISCSI",
  "protocolType" : "ISCSI"
} ]

HTTP Response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 712

{
  "id" : "d8e76036-ce7c-4a78-bd08-6136e5f0c5b5",
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "id" : "7e4ec7f1-9713-41fd-a05c-8309528f83b8",
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  }, {
    "id" : "386602cc-7fe2-44f6-bd2c-69af376850d5",
    "name" : "StorageContainer-ISCSI",
    "protocolType" : "ISCSI"
  } ],
  "users" : [ {
    "id" : "15140ede-bdca-48bb-981f-e75f1397084b",
    "username" : "User1"
  }, {
    "id" : "133bf525-71d4-4fd2-846c-27356ee5c527",
    "username" : "User2"
  } ]
}

[_getvasaproviders] API [_getvasaproviderstoragecontainers] API [_getvasaprovideruser] API [_addvasaproviderstoragecontainer] API [_addvasaprovideruser] API [_updatevasaproviderstoragecontainer] API [_updatevasaprovideruser] API [_removevasaproviderstoragecontainer] API

11. Rename a Storage Container of a VASA Provider

  • This API is used to rename a storage container of a VASA Provider.

11.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

  • ID of the storage container

  • New storage container name

Tip : Refer to: Get the VASA Providers and Get the Storage Containers of a VASA Provider

11.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers/b61af3c8-bc2b-4757-8e47-28061d28ca73' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "name" : "new-StorageContainer-FC"
}'

HTTP Request

PATCH /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers/b61af3c8-bc2b-4757-8e47-28061d28ca73 HTTP/1.1
Content-Type: application/json
Content-Length: 40
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "name" : "new-StorageContainer-FC"
}

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 590

{
  "id" : "d8e76036-ce7c-4a78-bd08-6136e5f0c5b5",
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
    "name" : "new-StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "id" : "7e4ec7f1-9713-41fd-a05c-8309528f83b8",
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "id" : "15140ede-bdca-48bb-981f-e75f1397084b",
    "username" : "User1"
  }, {
    "id" : "133bf525-71d4-4fd2-846c-27356ee5c527",
    "username" : "User2"
  } ]
}

[_getvasaproviders] API [_getvasaproviderstoragecontainers] API [_getvasaprovideruser] API [_addvasaproviderstoragecontainer] API [_addvasaprovideruser] API [_updatevasaproviderstoragecontainer] API [_updatevasaprovideruser] API [_removevasaproviderstoragecontainer] API

12. Delete a Storage Container of a VASA Provider

  • Used to delete a storage container of a VASA Provider

  • Deleting a storage container which is being used, will give an error.

  • Deleting a storage container which does not exist, will give a HTTP response code 404.

12.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

  • ID of the storage containers

12.2. Steps API

  • Invoke the API

Tip : Refer to: Get the VASA Providers and Get the Storage Containers of a VASA Provider

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers/b61af3c8-bc2b-4757-8e47-28061d28ca73' -i -X DELETE \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

DELETE /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/storage-containers/b61af3c8-bc2b-4757-8e47-28061d28ca73 HTTP/1.1
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 204 No Content

[_getvasaproviders] API [_getvasaproviderstoragecontainers] API [_getvasaprovideruser] API [_addvasaproviderstoragecontainer] API [_addvasaprovideruser] API [_updatevasaproviderstoragecontainer] API [_updatevasaprovideruser] API [_removevasaproviderstoragecontainer] API

13. Get the Users of a VASA Provider

13.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

Tip : Refer to: Get the VASA Providers

13.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/users' -i -X GET \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/users HTTP/1.1
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 156

[ {
  "id" : "15140ede-bdca-48bb-981f-e75f1397084b",
  "username" : "User1"
}, {
  "id" : "133bf525-71d4-4fd2-846c-27356ee5c527",
  "username" : "User2"
} ]

[_getvasaproviders] API [_getvasaproviderstoragecontainers] API [_getvasaprovideruser] API [_addvasaproviderstoragecontainer] API [_addvasaprovideruser] API [_updatevasaproviderstoragecontainer] API [_updatevasaprovideruser] API [_removevasaproviderstoragecontainer] API

14. Add the Users to a VASA Provider

  • This API is used to add the VASA users to a VASA Provider.

  • If a VASA user already exists, you will get an error with HTTP status 400.

14.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

  • List of VASA users

    • For each VASA user

      • User name

      • Password.

Tip : Refer to: Get the VASA Providers

14.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/users' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '[ {
  "username" : "User3",
  "password" : "password"
} ]'

HTTP Request

POST /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/users HTTP/1.1
Content-Type: application/json
Content-Length: 57
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

[ {
  "username" : "User3",
  "password" : "password"
} ]

HTTP Response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 669

{
  "id" : "d8e76036-ce7c-4a78-bd08-6136e5f0c5b5",
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "id" : "7e4ec7f1-9713-41fd-a05c-8309528f83b8",
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "id" : "15140ede-bdca-48bb-981f-e75f1397084b",
    "username" : "User1"
  }, {
    "id" : "133bf525-71d4-4fd2-846c-27356ee5c527",
    "username" : "User2"
  }, {
    "id" : "d6eb6354-071c-4623-abbe-dca8f4a1e8c6",
    "username" : "User3"
  } ]
}

[_getvasaproviders] API [_getvasaproviderstoragecontainers] API [_getvasaprovideruser] API [_addvasaproviderstoragecontainer] API [_addvasaprovideruser] API [_updatevasaproviderstoragecontainer] API [_updatevasaprovideruser] API [_removevasaproviderstoragecontainer] API

15. Update the User of a VASA Provider

  • This API is used to update the user of a VASA Provider.

15.1. Prerequisites API

The following data is required

  • ID of the VASA Provider

  • ID of the VASA User

The following data is optional

  • VASA user name

  • VASA password

Tip : Refer to: Get the VASA Providers and Get the Users of a VASA Provider

15.2. Steps API

  • Invoke the API

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/users/15140ede-bdca-48bb-981f-e75f1397084b' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "username" : "new-User1",
  "password" : "password"
}'

HTTP Request

PATCH /v1/vasa-providers/d8e76036-ce7c-4a78-bd08-6136e5f0c5b5/users/15140ede-bdca-48bb-981f-e75f1397084b HTTP/1.1
Content-Type: application/json
Content-Length: 57
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "username" : "new-User1",
  "password" : "password"
}

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 590

{
  "id" : "d8e76036-ce7c-4a78-bd08-6136e5f0c5b5",
  "name" : "VASA-Provider1",
  "url" : "https://10.0.0.217:8443/vasa/version.xml",
  "storageContainers" : [ {
    "id" : "b61af3c8-bc2b-4757-8e47-28061d28ca73",
    "name" : "StorageContainer-FC",
    "protocolType" : "FC"
  }, {
    "id" : "7e4ec7f1-9713-41fd-a05c-8309528f83b8",
    "name" : "StorageContainer-NFS",
    "protocolType" : "NFS"
  } ],
  "users" : [ {
    "id" : "15140ede-bdca-48bb-981f-e75f1397084b",
    "username" : "new-User1"
  }, {
    "id" : "133bf525-71d4-4fd2-846c-27356ee5c527",
    "username" : "User2"
  } ]
}

[_getvasaproviders] API [_getvasaproviderstoragecontainers] API [_getvasaprovideruser] API [_addvasaproviderstoragecontainer] API [_addvasaprovideruser] API [_updatevasaproviderstoragecontainer] API [_updatevasaprovideruser] API [_removevasaproviderstoragecontainer] API
Last updated 2024-08-27 16:13:54 -0700

Operations
GET
Get Vasa Providers
Get the VASA Providers
POST
Add Vasa Provider
Add a VASA Provider
GET
Get Vasa Provider User
Get the users of a VASA Provider
POST
Add Vasa Provider User
Add the users to a VASA Provider
GET
Get Vasa Provider Storage Containers
Get the storage containers of a VASA Provider
POST
Add Vasa Provider Storage Container
Add the storage containers to a VASA Provider
POST
Validate Vasa Provider Spec
Validate VasaProvider input specification
GET
Get Vasa Provider
Get a VASA Provider
DELETE
Remove Vasa Provider
Delete a VASA Provider
PATCH
Update Vasa Provider
Update a VASA Provider
PATCH
Update Vasa Provider User
Update the user of a VASA Provider
DELETE
Remove Vasa Provider Storage Container
Delete a storage container of a VASA Provider
PATCH
Update Vasa Provider Storage Container
Update the storage container of a VASA Provider
GET
Get Vasa Provider Validation
Get the status of the validation of the VASA Provider