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:

          expirationDays: 20
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"},"expiration_days":20}' -H 'Content-Type: application/json' -H 'X-Volterra-Useragent: v1/pgm=_var_folders_2__8qnt6fwd5dvglr1xqq6l8b7w0000gp_T_go-build3109416560_b001_apidocs.test/host=C02FN35BMD6R/svc=S:examplesvc/site=mytestce01' 'https://acmecorp.console.ves.volterra.io/api/web/namespaces/system/api_credentials'
        

curl response:

          HTTP/1.1 200 OK
Content-Length: 81
Content-Type: application/json
Date: Thu, 21 Mar 2024 14:04:26 GMT
Vary: Accept-Encoding

{
  "data": "",
  "name": "",
  "active": false,
  "expiration_timestamp": null
}
        

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:

          expirationDays: 40
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","expiration_days":40}' -H 'Content-Type: application/json' -H 'X-Volterra-Useragent: v1/pgm=_var_folders_2__8qnt6fwd5dvglr1xqq6l8b7w0000gp_T_go-build3109416560_b001_apidocs.test/host=C02FN35BMD6R/svc=S:examplesvc/site=mytestce01' '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: Thu, 21 Mar 2024 14:04:26 GMT
Vary: Accept-Encoding

{
  "status": false
}