ves-io-schema-api_credential-CustomAPI-Renew

Examples of performing api_credential CustomAPI Renew

Usecase:

Create API Token for user-1 of acmecorp

Request:

Request using vesctl:

vesctl request rpc api_credential.CustomAPI.Renew -i request.yaml --uri /public/namespaces/system/api_credentials --http-method POST

where file request.yaml has following contents:

expirationTimestamp: "2020-10-13T09:52:55.082999200Z"
name: user-1-token-2
spec:
  type: API_TOKEN

vesctl yaml response:

{}

Request using curl:

curl -X 'POST' -d '{"name":"user-1-token-2","spec":{"type":"API_TOKEN"},"expirationTimestamp":"2020-10-13T09:52:55.082999200Z"}' -H 'Content-Type: application/json' -H 'X-Volterra-Useragent: v1/pgm=_tmp_go-build823219857_b001_apidocs.test/host=docker-desktop' 'https://acmecorp.console.ves.volterra.io/api/web/namespaces/system/api_credentials'

curl response:

HTTP/1.1 200 OK
Content-Length: 30
Content-Type: application/json
Date: Wed, 23 Sep 2020 09:52:58 GMT
Vary: Accept-Encoding

{
  "data": "",
  "name": ""
}

Usecase:

Renew above api credential object with new expiry

Request:

Request using vesctl:

vesctl request rpc api_credential.CustomAPI.Renew -i request.yaml --uri /public/namespaces/system/renew/api_credentials --http-method POST

where file request.yaml has following contents:

expirationTimestamp: "2020-11-02T09:52:55.083008200Z"
name: user-1-token-2-396f90e7-37a2-489f-8f2d-138c2124833c

vesctl yaml response:

{}

Request using curl:

curl -X 'POST' -d '{"name":"user-1-token-2-396f90e7-37a2-489f-8f2d-138c2124833c","expirationTimestamp":"2020-11-02T09:52:55.083008200Z"}' -H 'Content-Type: application/json' -H 'X-Volterra-Useragent: v1/pgm=_tmp_go-build823219857_b001_apidocs.test/host=docker-desktop' 'https://acmecorp.console.ves.volterra.io/api/web/namespaces/system/renew/api_credentials'

curl response:

HTTP/1.1 200 OK
Content-Length: 21
Content-Type: application/json
Date: Wed, 23 Sep 2020 09:52:58 GMT
Vary: Accept-Encoding

{
  "status": false
}