Create

  • POST
  • /workspaces
  • /:domain
  • /variables

Creates a new environment variable. Restricted to admins only.

Request

REQUIRED SCOPES
WORKSPACE, VARIABLE_ADD
URL PARAMETERS
domainrequired string
The workspace domain.
POST PARAMETERS
keyrequired string
The name of the variable.
valuerequired string
The value of the variable.
typestring
The type of the added variable. Can be one of VAR or SSH_KEY.
descriptionstring
The optional description of the variable.
settableboolean
If set to true the variable value can be set by Buddy actions.
encryptedboolean
If set to true the variable value will be encrypted and hidden.
projectProject
The project, to which the new environment variable will be added.
pipelinePipeline
The pipeline, to which the new environment variable will be added.
actionAction
The pipeline action, to which the new environment variable will be added.
file_placestring
Available values: CONTAINER, NONE. Set if type is SSH_KEY. If it's NONE, the variable can be used as a parameter in an action. For CONTAINER, the given key is additionally copied to an action container on each run.
file_pathstring
Specifies where to copy the file on each run. Set if type is SSH_KEY.
file_chmodstring
File permission set on copy to a container on each run. Set if type is SSH_KEY.

Last modified on Sep 27, 2024

Example: Add a new workspace - scoped variable

curl -X POST "https://api.buddy.works/workspaces/:domain/variables" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
  "value": "-----BEGIN RSA PRIVATE KEY-----MIIEpAIBAAKCAQEAz/qH9/t6jCVuGPHcDDvnyqtasOlsjZOgF9dtRioNG93GrLPzDoi+SgUBzesoKXb1CGOW1wKAzLSADzuFMKwSydxCBVwziGZ33F+XsnHGKX3mpx8rRZV2UWNHRtJK3wmJHfEsIDHznPcbJT2I++cK36yGGpiNtzItfdvhExeFeXJVjp/BrZS2D4ixBu5VjqFe5XskIN6N//QCgfwxTwmnhoGBnB8xiWnDCHHUP/rf6Tr6FPneWt2zE5H53kqApT1boDN/VgaltptjW5zh6DnN6S9zhMBY4OkQoQQ1pCWrH56uryYaqTdslkoP4F1Hos9DkkCwCce8J/uFLE6PVY7Xk6JiQIDAQABAoIBAEOd5TTXetkzlh7gCzWjCFIY7d0SAaXdNCg9Fq/IYRzXT6sEwKYyt3g0WqbY1FkpaeojzXIH7tNDE/nabcWuNsC77oYgy3m8J3B/LQ6zbtPCirpPZ6vS8/UBmQFdRJ1YnwbvZ4aUnpZiu7+lODXf5BESDUpe75alEt7uzZn2K8cZQRb3O8cIpv4KIqxA4kpf+VkJ/1l8pLLx/cG85pxuLy6RlV8IlerOq7ZK85afdGPM9VKK+WNvL7803/Egt5Zs8p+Uc0W8ZXHhEzje4UreYE83AgU3EMSAJp69JnYQGGQsDHAC63GqUBSpWlI1gImZ9shD2rXrHkiiTnltcTWHx0CgYEA+UCU3rB+AoptMA/R9HxfJlgFacQPCnbSeziksTV0lyd44LiXJBBbchTKFg4sxBSuPcq0+rKnUxPcNNRbmw9Wvo+amqeyRvXDuXRXTxxmFpqDQehMW1A3Hav3aVfcarGcQAiZJAOQz1Hhma05Xy2HQsqHOqqVB7FktNcoIKccRgcCgYEA1ZvoHtkKG7ZAI+XJZmJUnsimWfH67prbAnlfBKGz/gDxA0REmTsAT92+T5jiXM6VyHj6G2GGVILZoG1L1YDecF/GLvhb3QmW8cwKnaX84XoI0oKYaNGnzmZIMcKQKZdFUZfbXBTT4I/xx1I+/aYRkp2WZBE5Emfg+RfZKkLT+8CgYBkyCMpo81fs58Qk1O3M4FkMxPxzVo4KWh8jKbUV3hplX9V1b83VDDQdfaB0qIibRA1r+MGSuJgFdHtOdSsRGHOnm6f0/y2ynq4Sv1ehIoWy6UVChuNtHKEsdrZImiCT4xxK8jYEgUEfwQsQil3fY46iG+DXiPiN20T3gdgpJ/EwKBgQCBon2LgxJ0YPWqE4FXpmNOfd0fBxDPj6FMbhYxPGV8yFt8LQkoqTr2PU+LBPCTfDhAktLOnTAlx8eFae804mGcdCY3P4Z/2lCRMGBV1OVAwEpyaDPGr41jglQhJUpek9g32h59z0ZwIU7Na0Nozm35cqVCk6CLnva013rhHwojdwKBgQCd1NBOpiE2/R7JsmK8crt0NH+Q9RFPKfnv4itvsuy9dRtDV04jl60jbzVC+EKD4M6jysijNF4TDTfXljmHjkx8oGW9PTZQ88TQm8maOO1mKuQAWAu3AeCIZXqdmiQQASD+p6+goJLgpKuKQJQ2LQJZgi1gvw+jBeTJPILXQgt1Q==-----END RSA PRIVATE KEY-----",
  "type": "SSH_KEY",
  "key": "id_my_key",
  "encrypted": true,
  "description": "My Server Key",
  "file_path": "~/.ssh/id_my_key",
  "file_chmod": "600",
  "file_place": "CONTAINER"
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddytest/variables/1", "id": 1, "key": "id_my_key", "value": "secure!wrhFNb0bE+u7EBP9//Uyi4grDjGq3QswCJdWnF5CXW2YhbCWLC2jvT0VgnmWohdUlrhTlS7gmuMpXBaPTdywhZ1q90HtFTaAhlUe+dgc7eTYHp5wmeFUYfgzI6bsXu/+0IDInlWJS7tGqsokcdacAcrlOhLcUimVLjR3uhm2K+KqwtX0rNhf14NxWtI6F8VdyIIzQs4XH6Ol0pRPEXdEB57ThBDEMeEXxYeeO4oueQ0aGM+bVK64fEmFar5X8IQrasmkFfbNW1XId2WxwX23NZma5Mce6NQ7R0yjrLACtYawtuhLEn0C2E1iE/VZviYegMxf+wf4NPpdtMW5lv7BjrXNM8FNpMXRaombF4BfnqQkARDIaPxt3UeCP9ZX+HLXxQvSMgSl55UZkFBKUXn9bHyil9TDAJysVIwn5Dhy1j8XzXT+8jrnA5jS0Ch+axyVydUAxek8e7am0rkpfRCVFKonyBExP+GhLfThoBJUtxetDMY9SNvq19/W9smnDewanupkuwMji7MLPYlVOvkhyeh978xJPeQX/UvWOn6Xb/rSQU3FrOOOZAMW1jJTfJXrudIBGakbl8w8rCOp4do5IjZmti7BeSVkKNpE1YYLpyit+4atzCUX8FlHSoafcE4QozQvFLM2iNXE5LgEvMcBE1F7/YQvseN5IiQnCnpB8MVw2wdpwk+eaP64ztN3ueGo/JkBppgtDLJxIWnL4/udsLpaBEO9nksNMkUa1gnOYK150YPxe8/rBIEIi2gC9TYmXgd1jzNdMgK2Djc1UXtdeSwGQL4y0ubi836BNmC65D/t7LkA5EchrVR2e943fMQmcFiBLQQNeGw7pQU5uZAx7OMvTvTyQi+Pp9/tcLDqpHZHR4V+xB1k60RbzMaVJAeE0kmqvQu/BnXLb/ktkJTZgnwEsafAUfai7i0Y0RPw05HntTtcy3oqnsjjdUv3I5/R/+c/JWKK+Ses1qWQx03k7b6ZhjBiA9v8xDneI5ieg3ybcHlCIugTs6faPwDvxmvnEzbL9tOPu/PEvml0wdd3Ujjr/M/fZvICbpNMzcBV/bxRtzyNjMVFzBkYBPtTWJnNjvN5bCFEbQxr+rrFD06FSboVbcdfcrudT0IsEI1NPIwj35GMjdDTSrcoIr9jRyZ7j0TbNe9NGvqeFv6E3uRfzcbOR3JlixPRutXWQeAlRn0NbM2QtSUoYg6lZsk1ReMrtMht2sHRwIKtITZXwCGh1RkCyUKtxPSYPzoj51Zc9BGUBWZipEGR0HMZY1vMLDPn11w6lcd/6vg+qLN18kQJ9++sDC221ntLZtrtt2349eNOdkP0mytfPIHOlhz2lOexE8iMceqe9QQwSYX0V+aZwCGBrapoT97ubV0Ae6fZ6O0xIhKiZzvOD48TbNYdz8M0VMCbiKa+WesEYFINYOgegOXgCtI4pA1OipV+xRF949lTRhW1bBeVfdBEU8tDkwqop7NFPdtFq8BsqphQkj0itN1VTR5l6Cv00qwRZm1RODyDGCL6jg/AAZCnzT793jmQuKPiExCwXz+bc6h9cAz1MzUHiqV3kyUl6Gj3gmnUB31yGt4KHXbODgEvGHD1RmYfw0tAEcHZJfSvAN91qOkCczy30gerkax3KHWl5V9WderuGfPKQYGFRZQCesSPwMwjv6dWnEvUz4WdMNyAfICtgA67LCWwbW92IG74RHtF9BNd5cKnULI8KaRNMm0nKmdVTFYhQEqcVcNWCA4tVsGnUIOcoBE+wd7mGG6RUgHpAewLi+1++ulKo5PMRvIv+5c3etj8qcnci1s8VcoYi31DgRhP/G+QwZOB1Nj4fU3wyWYsVCox934m9p5apkNhvVcd5XU9GeajK3ISCG2fos+BEXHMpBl33sUn2Q6hOvOE7stjchTRNuo6EPw6iS/dZFcLCwR2asVlQQI8W5UdIcJJ0bfO5zDWQNuhZDukGn367E714EYrvqqUynup9ElXS3jk7Jj95SYhZts1j2p1lhtLFtRhXVVNkghPkbEVv3v35PKGW2MHZI/h1K/RMZ7HUSD047rkKFjbX8kr7g0GUFdVAx0IzLlN9PTcycOcw3T2Rq6zvygxe0pkzfFBkp97VpkKdelvK1F3wah+G79Y8Uj/zfWb/pQYXsBkK3H8Vxapli0vBkBZHr+BOQGb55UV/G/F7F88sENBx/mquy8fy5a6jD/srS3Zy9viRSgRJdbGuaNiRQLES2rfabIjc5yBU9vwKMuYuMnw5pviQUNW8UPtiW2EOxuRlDDNAZuGtffqJM6BT6lewQfS3ZnCE61+6pAewiRYCOKRTgjx50g/iBPFtRSyfzUT1UC51qVTtosFXn8tFIJ8VgwgGL4gTwW6pxXkY3TAQxjMTJsQpwYDU+RsOJYsNFQyAsXOeUwoRVfqZUM/y3o9ITPyABWvzsyLyW84OkL28NmMrV6JW1dsj0eyxxDcRGhTc1caTpNhi7gBr6thABvH3u3qXX5S0m6VkK7Vb3/GemutjUdvJTueAmQYjK/SW6wd12G9CrbW4yToZrZyldKNiL+q9Y2Ql8bG20VT+1cRrzLGBoltITuHd+Aao8ofh6jWTkKFZ5Tq2I/RkZ1aKMZwRiV38oRIdSCQJGAPwH0aS/T3IdH6x5pmbk8JDtsnBi6akSlik+jKb9/i0tjam2A1zJZq30fszU0lxhFnyv0r7GuS6hPHyv5ib02BKUb0bF/825bcZNrK1J3UI/h+unBcoGgj0af+bED7gNGp124aXscL1W4IODek1SLvntetm1yFgV0m5LkHaAdU5r8tGlcBNOlzkSKOOTHfN7xB46hbcEkMNdG6eym0YjjLOCJ15KS8GT86/cDBC4/3X6Y14d6eZ9lW/6LpQMTxbMbIs62m1MzPuK02Tbt8OXvMT6N84Rd7RHtQjvrD6i2Eo1ChzteW8FRYOH2cq3TKWX7UdvZ8VwJYU0IwP0kjNpjcHps8b5m0T9e3eJf0IKirkKK8TKhoq93Lcmw0MKglp7QrHtVtIRmxgGXLBj79SPl8WNxZ2iHtbfCyZSiDWgAi0j8jumbSU6x79sFzQWM0uipF3vGq5VuKTZeRBiu6C6tupeui8fSKBSoGleqlAHNN0+GSZmopGdmC3gvPAV2Npv5SVxys2REnTVn0nuhqrrWkeqQ8OuWDCoVV4XfJeVVm0/NPj3lBu3U3AOytdllc7Icf548UIE+eG6QRzimrWZf52aEUv6n0tHB5NF16dUqqwC0yb+GhhfuxaP59BfpK8sLMyp0ErV4KE7TMo8feTeFglXm8IG/NNkPRkpX7D7cTl2TWlycrjt36ZJVj8HziQpg93f5HwZZPhftCHVfscgzoqXh01npXYTqRchywURau5GiFXMPdz1hqtGTsAUs/vBkiUe+910s6Nd5qvZj0wxE/JyJ2mhVJT5iS4FB8LOZ+vFE5jWKE78p7drikZGMzgX379nh7jdeiJjxTrdniLwiBwp20yqY+w1mQdThQOPthGRgaGkDo+I2WNBi33HTRLA2BRxT+zYmdTo+QJhkYMOCibcjRd8EFqUsK20r5MeMqHQP8MuLzqweLiSGJITNi+RjoHV8Wh0riqpZOlXmn/kVksd8H3HH8rkFDLunp1Iyy3OsDe9vmmebQPrhbkvmDsamcfL5dTQuakRafX6zG26FzZLI3oJQLOW4xSUgpc39Eg1lZDea6/qtE+8FyDxv5Li+/SYaBWD8g9ERSy1sc616qNBkwJGLFCJqeNqM/kZHV1zsPZu1H++yp3GGLTBCfGobZykSz6qaB1MMPDMmHAlYxng9vpiEilXw3cubXygINYs7xEcHCucvI6EC6to29ut2zCCr6ArSezAXOFvS9G4M7ZuAnP1uWAq1f1GEo1aZMHZt4qYClNf8VGLmNY3H8fz6V/8EIeHaPhxF8DwaXHRVeN3herqoYTuNb4r5jXz+FTNIEhPdFqe+14k5xNspHd1o57c1kNrMcfjJ1+BlIbLwAq5LN4V+1a7uX01TJjkOK7DOc1iFCB97mEl45N2AY7O9mExd/pC6vKu5DqZe4VclLeomBqH/jlJ9LUq+H67aCZWth75qswrK5T3lym2uthJrbdE1F7UYkqEgpJyBD0IXmyMC2ey/oKCs3UXriEy/NFe5QFZ5mZ/8gKa7E2I6JeV1WfiinDRtZDTcpDykTZ138mWhKcK2IiWue+ZTA7XTp1xllo+/WIBo+vRMv8yI3ecHeqmuGaXzwutXfFreticwvglsXV9DxGYUlaHdOq30PKiqRclhFW2JZYD0i2NCAzbdvxDx2azVSBkpq7OH9ogvmOP7w8OdI52XZ2bY9cSXPAPw=.IOCC4LynFRFWrd6O+Sp6Rg==", "type": "SSH_KEY", "encrypted": true, "description": "My Server Key", "file_path": "~/.ssh/id_my_key", "file_chmod": "600", "file_place": "CONTAINER", "public_value": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAs9yoz6vqv/mh7md3ApyB6EEz5DKR2uLcOFmDxFfolnRB8YxFZoxK7Ac+BV2/PNWUK/sm/n/RWc6a6JWdNwbQ9nm4A9mAMJQgRyls/PW0AIHkflO1Dzon4C7j4RJt7ijf1kFxosmVz6MaBEvMV82IpagtTGUsm4jXXclYj04QsMkUiG5JBwrl5qB6kemqUoUCptqcXlDZXtVDZBbS1HtuMXbFC8ANscbhT9+L5JX6PDwc1tozcjKDLpDpar7G8YJ5zFFBTjw/adcE2JkCB3cG9LLBbWbGFAIGsyiNBRa4wHJQP9rAKebpt4vFAof8Yg0IAvtvmoBRa5L8yousThjvQvMmWYR0QToeUx6GZzrWMZ9Z5Wa6dVqbQBRS1p4m/Xv+VaH5hI00hc3zEmow58NoKSPhipvmS5Xk74aLrj7/Wj7lHSzu54apFnhN1+1+QhC+8ITNa6lHNUY0t9xiJ5auRGDmUFsBICdPr+Npt7sOsZbdUHk/Ka0Y7hIFIElTDbWdo7sxwKenWnwrB0Y2qDprVYKgZFGbuQd57FqOYP5TF6S6raMSo03dZjj5WJpYDXJXP1RMFkFwzZUZxdqKmty+yBvf0/kd6zlr+WPTlf+CMb4l9FjwIYsYfQuBnVzwwjHVCFkbYHa1KTMBVxSAMHi4/JWgU4fDJtMMB/yvxXvG7n0=", "key_fingerprint": "d3:5a:ef:be:46:dc:ea:c9:95:51:78:54:36:da:7c:9d", "checksum": "b7827991973f4c275a70d51e96bd3e09474ac9beba74ea17d24081e83c8c13ad" }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999

Example: Project - scoped variable

curl -X POST "https://api.buddy.works/workspaces/:domain/variables" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
  "key": "my_var",
  "value": "some value",
  "project": {
    "name": "myproject"
  }
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddytest/variables/1", "type": "VAR", "id": 1, "key": "my_var", "value": "some value", "encrypted": false }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999

Example: Pipeline - scoped variable

curl -X POST "https://api.buddy.works/workspaces/:domain/variables" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
  "key": "my_var",
  "value": "some value",
  "pipeline": {
    "id": 1
  }
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddytest/variables/1", "type": "VAR", "id": 1, "key": "my_var", "value": "some value", "encrypted": false }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999

Example: Action - scoped variable

curl -X POST "https://api.buddy.works/workspaces/:domain/variables" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
  "key": "my_var",
  "value": "some value",
  "action": {
    "id": 1
  }
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddytest/variables/1", "type": "VAR", "id": 1, "key": "my_var", "value": "some value", "encrypted": false }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999