ves-io-schema-api_credential-CustomAPI-Create
Examples of performing api_credential CustomAPI Create
Usecase:
Create kubeconfig for vk8s-documentation for user-1
Request:
Request using vesctl:
vesctl request rpc api_credential.CustomAPI.Create -i request.yaml --uri /public/namespaces/system/api_credentials --http-method POST
where file request.yaml has following contents:
expirationDays: 20name: user-1-kubeconfignamespace: documentationspec: type: KUBE_CONFIG virtualK8sName: vk8s-documentation virtualK8sNamespace: documentationvesctl yaml response:
{}Request using curl:
curl -X 'POST' -d '{"namespace":"documentation","name":"user-1-kubeconfig","spec":{"type":"KUBE_CONFIG","virtual_k8s_namespace":"documentation","virtual_k8s_name":"vk8s-documentation"},"expiration_days":20}' -H 'Content-Type: application/json' -H 'X-Volterra-Useragent: v1/pgm=_var_folders_q2_3kp8z3zs0x5_m7pk1bgb0_ph0000gp_T_go-build1655461974_b001_apidocs.test/host=MTY6VVHQPH/svc=S:examplesvc/site=mytestce01' 'https://acmecorp.console.ves.volterra.io/api/web/namespaces/system/api_credentials'curl response:
HTTP/1.1 200 OKContent-Length: 81Content-Type: application/jsonDate: Fri, 19 Jun 2026 22:02:14 GMTVary: Accept-Encoding
{ "data": "", "name": "", "active": false, "expiration_timestamp": null}Usecase:
Create client certificate for user-1 of acmecorp
Request:
Request using vesctl:
vesctl request rpc api_credential.CustomAPI.Create -i request.yaml --uri /public/namespaces/system/api_credentials --http-method POST
where file request.yaml has following contents:
expirationDays: 20name: user-1-certnamespace: documentationspec: password: my$tr0ngP@sswdvesctl yaml response:
{}Request using curl:
curl -X 'POST' -d '{"namespace":"documentation","name":"user-1-cert","spec":{"password":"my$tr0ngP@sswd"},"expiration_days":20}' -H 'Content-Type: application/json' -H 'X-Volterra-Useragent: v1/pgm=_var_folders_q2_3kp8z3zs0x5_m7pk1bgb0_ph0000gp_T_go-build1655461974_b001_apidocs.test/host=MTY6VVHQPH/svc=S:examplesvc/site=mytestce01' 'https://acmecorp.console.ves.volterra.io/api/web/namespaces/system/api_credentials'curl response:
HTTP/1.1 200 OKContent-Length: 81Content-Type: application/jsonDate: Fri, 19 Jun 2026 22:02:14 GMTVary: Accept-Encoding
{ "data": "", "name": "", "active": false, "expiration_timestamp": null}Usecase:
Create API Token for user-1 of acmecorp
Request:
Request using vesctl:
vesctl request rpc api_credential.CustomAPI.Create -i request.yaml --uri /public/namespaces/system/api_credentials --http-method POST
where file request.yaml has following contents:
expirationDays: 20name: user-1-tokennamespace: documentationspec: type: API_TOKENvesctl yaml response:
{}Request using curl:
curl -X 'POST' -d '{"namespace":"documentation","name":"user-1-token","spec":{"type":"API_TOKEN"},"expiration_days":20}' -H 'Content-Type: application/json' -H 'X-Volterra-Useragent: v1/pgm=_var_folders_q2_3kp8z3zs0x5_m7pk1bgb0_ph0000gp_T_go-build1655461974_b001_apidocs.test/host=MTY6VVHQPH/svc=S:examplesvc/site=mytestce01' 'https://acmecorp.console.ves.volterra.io/api/web/namespaces/system/api_credentials'curl response:
HTTP/1.1 200 OKContent-Length: 81Content-Type: application/jsonDate: Fri, 19 Jun 2026 22:02:14 GMTVary: Accept-Encoding
{ "data": "", "name": "", "active": false, "expiration_timestamp": null}