StackScripts

View StackScript

get
https://api.linode.com/v4/linode/stackscripts/{stackscriptId}

Returns all of the information about a specified StackScript, including the contents of the script.

Authorizations

Personal Access Token
OAuth: ( stackscripts:read_only)

Path Parameters

stackscriptId
Required
string

The ID of the StackScript to look up.

Request Samples

curl https://api.linode.com/v4/linode/stackscripts/10079

Response Samples

{
  "id": 1234,
  "created": "2018-01-01T00:01:01",
  "username": "myuser",
  "label": "a-stackscript",
  "description": "This StackScript installs and configures MySQL\n",
  "is_public": true,
  "updated": "2018-01-01T00:01:01",
  "user_gravatar_id": "a445b305abda30ebc766bc7fda037c37",
  "images": [],
  "deployments_total": 12,
  "deployments_active": 1,
  "rev_note": "Set up MySQL",
  "script": "\"#!/bin/bash\"\n",
  "user_defined_fields": [
    {
      "label": "Enter the password",
      "name": "DB_PASSWORD",
      "example": "hunter2",
      "oneOf": "avalue,anothervalue,thirdvalue",
      "manyOf": "avalue,anothervalue,thirdvalue",
      "default": ""
    }
  ]
}

Responses

200: A single StackScript.

id
integer

The unique ID of this StackScript.

created
string <date-time>

The date this StackScript was created.

username
string

The User who created the StackScript.

label
Filterable
string [3 .. 128] characters

The StackScript's label is for display purposes only.

description
Filterable
string

A description for the StackScript.

is_public
Filterable
boolean

This determines whether other users can use your StackScript. Once a StackScript is made public, it cannot be made private.

updated
string <date-time>

The date this StackScript was last updated.

user_gravatar_id
string

The Gravatar ID for the User who created the StackScript.

images
array of objects

An array of Image IDs. These are the images that can be deployed with this Stackscript.

deployments_total
integer

The total number of times this StackScript has been deployed.

deployments_active
integer

Count of currently active, deployed Linodes created from this StackScript.

rev_note
Filterable
string

This field allows you to add notes for the set of revisions made to this StackScript.

script
string

The script to execute when provisioning a new Linode with this StackScript.

user_defined_fields
array of objects

This is a list of fields defined with a special syntax inside this StackScript that allow for supplying customized parameters during deployment. See Variables and UDFs for more information.

label
string

A human-readable label for the field that will serve as the input prompt for entering the value during deployment.

name
string

The name of the field.

example
string

An example value for the field.

oneOf
string

A list of acceptable single values for the field.

manyOf
string

A list of acceptable values for the field in any quantity, combination or order.

default
string

The default value. If not specified, this value will be used.

default: Error

errors
array of objects
reason
string

What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to open a Support Ticket or perform some other action before you can complete the request successfully.

field
string

The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as "null" if the error is not specific to any single element of the request.

Update StackScript

put
https://api.linode.com/v4/linode/stackscripts/{stackscriptId}

Updates a StackScript.

Once a StackScript is made public, it cannot be made private.

Authorizations

Personal Access Token
OAuth: ( stackscripts:read_write)

Path Parameters

stackscriptId
Required
string

The ID of the StackScript to look up.

Request Body Schema

description
Filterable
string

A description for the StackScript.

images
array

An array of Image IDs. These are the images that can be deployed with this Stackscript.

is_public
Filterable
boolean

This determines whether other users can use your StackScript. Once a StackScript is made public, it cannot be made private.

label
Filterable
string [3 .. 128] characters

The StackScript's label is for display purposes only.

rev_note
Filterable
string

This field allows you to add notes for the set of revisions made to this StackScript.

script
string

The script to execute when provisioning a new Linode with this StackScript.

Request Samples

curl -H "Content-Type: application/json" \
    -H "Authorization: Bearer $TOKEN" \
    -X PUT -d '{
      "label": "a-stackscript",
      "description": "This StackScript installs and configures MySQL",
      "images": [
        "linode/debian9",
        "linode/debian8"
      ],
      "is_public": true,
      "rev_note": "Set up MySQL",
      "script": "#!/bin/bash"
    }' \
    https://api.linode.com/v4/linode/stackscripts/10079

Response Samples

{
  "id": 1234,
  "label": "a-stackscript",
  "username": "myuser",
  "description": "This StackScript installs and configures MySQL\n",
  "created": "2018-01-01T00:01:01",
  "is_public": true,
  "updated": "2018-01-01T00:01:01",
  "user_gravatar_id": "a445b305abda30ebc766bc7fda037c37",
  "images": [],
  "deployments_total": 12,
  "deployments_active": 1,
  "rev_note": "Set up MySQL",
  "script": "\"#!/bin/bash\"\n",
  "user_defined_fields": [
    {
      "label": "Enter the password",
      "name": "DB_PASSWORD",
      "example": "hunter2",
      "oneOf": "avalue,anothervalue,thirdvalue",
      "manyOf": "avalue,anothervalue,thirdvalue",
      "default": ""
    }
  ]
}

Responses

200: StackScript was successfully modified.

id
integer

The unique ID of this StackScript.

label
Filterable
string [3 .. 128] characters

The StackScript's label is for display purposes only.

username
string

The User who created the StackScript.

description
Filterable
string

A description for the StackScript.

created
string <date-time>

The date this StackScript was created.

is_public
Filterable
boolean

This determines whether other users can use your StackScript. Once a StackScript is made public, it cannot be made private.

updated
string <date-time>

The date this StackScript was last updated.

user_gravatar_id
string

The Gravatar ID for the User who created the StackScript.

images
array of objects

An array of Image IDs. These are the images that can be deployed with this Stackscript.

deployments_total
integer

The total number of times this StackScript has been deployed.

deployments_active
integer

Count of currently active, deployed Linodes created from this StackScript.

rev_note
Filterable
string

This field allows you to add notes for the set of revisions made to this StackScript.

script
string

The script to execute when provisioning a new Linode with this StackScript.

user_defined_fields
array of objects

This is a list of fields defined with a special syntax inside this StackScript that allow for supplying customized parameters during deployment. See Variables and UDFs for more information.

label
string

A human-readable label for the field that will serve as the input prompt for entering the value during deployment.

name
string

The name of the field.

example
string

An example value for the field.

oneOf
string

A list of acceptable single values for the field.

manyOf
string

A list of acceptable values for the field in any quantity, combination or order.

default
string

The default value. If not specified, this value will be used.

default: Error

errors
array of objects
reason
string

What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to open a Support Ticket or perform some other action before you can complete the request successfully.

field
string

The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as "null" if the error is not specific to any single element of the request.

Delete StackScript

delete
https://api.linode.com/v4/linode/stackscripts/{stackscriptId}

Deletes a private StackScript you have permission to read_write. You cannot delete a public StackScript.

Authorizations

Personal Access Token
OAuth: ( stackscripts:read_write)

Path Parameters

stackscriptId
Required
string

The ID of the StackScript to look up.

Request Samples

curl -H "Authorization: Bearer $TOKEN" \
    -X DELETE \
    https://api.linode.com/v4/linode/stackscripts/10079

Response Samples

{}

Responses

200: StackScript was deleted.

default: Error

errors
array of objects
reason
string

What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to open a Support Ticket or perform some other action before you can complete the request successfully.

field
string

The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as "null" if the error is not specific to any single element of the request.