node-red-contrib-linode
Version:
Use Linode API to provides the ability to programmatically manage the full range of Linode products and services / Swagger with Node-Red.
1 lines • 31 kB
JSON
[{"id":"ec4ab36f84bc672a","type":"inject","z":"055aaafb7da45cdf","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payloadType":"date","x":120,"y":60,"wires":[["c87d09ca4c7b411a"]]},{"id":"c87d09ca4c7b411a","type":"function","z":"055aaafb7da45cdf","name":"get access token","func":"msg.access_token = global.get(\"ACCESS_TOKEN\")\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":310,"y":60,"wires":[["570e5a707f279537"]]},{"id":"4dad7d36265b6e54","type":"debug","z":"055aaafb7da45cdf","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1070,"y":60,"wires":[]},{"id":"570e5a707f279537","type":"linode","z":"055aaafb7da45cdf","name":"","container":"account","openApiUrl":"","api":"Account","operation":"getAccount","operationData":{"x-linode-grant":"read_only","tags":["Account"],"summary":"Account View","description":"Returns the contact and billing information related to your Account.\n","operationId":"getAccount","x-linode-cli-action":"view","security":[{"personalAccessToken":[]},{"oauth":["account:read_only"]}],"responses":{"200":{"description":"Returns a single Account object.","content":{"application/json":{"schema":{"type":"object","description":"Account object","properties":{"active_promotions":{"type":"array","items":{"type":"object","readOnly":true,"description":"Promotions generally\noffer a set amount of credit that can be used toward your Linode\nservices, and the promotion expires after a specified date. As well,\na monthly cap on the promotional offer is set.\n\nSimply put, a promotion offers a certain amount of credit every\nmonth, until either the expiration date is passed, or until the total\npromotional credit is used, whichever comes first.\n","properties":{"credit_monthly_cap":{"x-linode-cli-display":5,"type":"string","description":"The amount available to spend per month.\n","example":"10.00"},"credit_remaining":{"x-linode-cli-display":3,"type":"string","description":"The total amount of credit left for this promotion.\n","example":"50.00"},"description":{"type":"string","description":"A detailed description of this promotion.\n","example":"Receive up to $10 off your services every month for 6 months! Unused credits will expire once this promotion period ends."},"expire_dt":{"x-linode-cli-display":2,"type":"string","description":"When this promotion's credits expire.\n","example":"2018-01-31T23:59:59"},"image_url":{"type":"string","description":"The location of an image for this promotion.\n","example":"https://linode.com/10_a_month_promotion.svg"},"summary":{"x-linode-cli-display":10,"type":"string","description":"Short details of this promotion.\n","example":"$10 off your Linode a month!"},"this_month_credit_remaining":{"x-linode-cli-display":4,"type":"string","description":"The amount of credit left for this month for this promotion.\n","example":"10.00"},"service_type":{"x-linode-cli-display":1,"type":"string","enum":["all","backup","blockstorage","db_mysql","ip_v4","linode","linode_disk","linode_memory","longview","managed","nodebalancer","objectstorage","transfer_tx"],"description":"The service to which this promotion applies.\n","example":"all"}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/Promotion"}},"active_since":{"type":"string","format":"date-time","description":"The datetime of when the account was activated.","example":"2018-01-01T00:01:01","readOnly":true},"address_1":{"type":"string","description":"First line of this Account's billing address.","maxLength":64,"example":"123 Main Street"},"address_2":{"type":"string","description":"Second line of this Account's billing address.","maxLength":64,"example":"Suite A"},"balance":{"type":"number","readOnly":true,"description":"This Account's balance, in US dollars.","example":200,"x-linode-cli-display":4},"balance_uninvoiced":{"type":"number","readOnly":true,"description":"This Account's current estimated invoice in US dollars. This is not your final invoice balance. Transfer charges are not included in the estimate.\n","example":145,"x-linode-cli-display":4},"capabilities":{"type":"array","items":{"type":"string"},"description":"A list of capabilities your account supports.\n","example":["Linodes","NodeBalancers","Block Storage","Object Storage"],"readOnly":true},"city":{"type":"string","description":"The city for this Account's billing address.","maxLength":24,"example":"Philadelphia"},"credit_card":{"type":"object","readOnly":true,"description":"Credit Card information associated with this Account.","properties":{"last_four":{"type":"string","description":"The last four digits of the credit card associated with this Account.\n","example":1111},"expiry":{"type":"string","description":"The expiration month and year of the credit card.","example":"11/2022"}}},"company":{"type":"string","description":"The company name associated with this Account.","maxLength":128,"example":"Linode LLC"},"country":{"type":"string","description":"The two-letter country code of this Account's billing address.\n","minLength":2,"maxLength":2,"example":"US"},"email":{"type":"string","description":"The email address of the person associated with this Account.","maxLength":128,"example":"john.smith@linode.com","x-linode-cli-display":3},"first_name":{"type":"string","description":"The first name of the person associated with this Account.","maxLength":50,"example":"John","x-linode-cli-display":1},"last_name":{"type":"string","description":"The last name of the person associated with this Account.","maxLength":50,"example":"Smith","x-linode-cli-display":2},"phone":{"type":"string","description":"The phone number associated with this Account.","maxLength":32,"example":"215-555-1212"},"state":{"type":"string","description":"If billing address is in the United States, this is the State portion of the Account's billing address. If the address is outside the US, this is the Province associated with the Account's billing address.\n","maxLength":24,"example":"Pennsylvania"},"tax_id":{"type":"string","description":"The tax identification number associated with this Account, for tax calculations in some countries. If you do not live in a country that collects tax, this should be `null`.\n","maxLength":100,"example":"ATU99999999"},"euuid":{"type":"string","description":"An external unique identifier for this account.\n","format":"uuid","readOnly":true,"example":"E1AF5EEC-526F-487D-B317EBEB34C87D71"},"zip":{"type":"string","description":"The zip code of this Account's billing address. The following restrictions apply:\n\n- May only consist of letters, numbers, spaces, and hyphens.\n- Must not contain more than 9 letter or number characters.\n","example":"19102-1234"}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/Account"}}}},"default":{"description":"Error","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","description":"An object for describing a single error that occurred during the processing of a request.\n","properties":{"reason":{"type":"string","description":"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](/docs/api/support/#support-ticket-open) or perform some other action before you can complete the request successfully.\n","example":"fieldname must be a valid value"},"field":{"type":"string","description":"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.\n","example":"fieldname"}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/ErrorObject"}}}}}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/responses/ErrorResponse"}},"x-code-samples":[{"lang":"Shell","source":"curl -H \"Authorization: Bearer $TOKEN\" \\\n https://api.linode.com/v4/account\n"},{"lang":"CLI","source":"linode-cli account view\n"}],"__originalOperationId":"getAccount","path":"/account"},"errorHandling":"Standard","parameters":[],"contentType":"application/json","outputs":1,"x":510,"y":60,"wires":[["47234d3b9208c717"]]},{"id":"17f678c170e4bf83","type":"linode","z":"055aaafb7da45cdf","name":"","container":"domains","openApiUrl":"","api":"Domains","operation":"getDomains","operationData":{"x-linode-grant":"read_only","parameters":[{"name":"page","in":"query","description":"The page of a collection to return.","required":false,"schema":{"type":"integer","minimum":1,"default":1},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/parameters/pageOffset"},{"name":"page_size","in":"query","description":"The number of items to return per page.","schema":{"type":"integer","minimum":25,"maximum":100,"default":100},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/parameters/pageSize"}],"tags":["Domains"],"summary":"Domains List","description":"This is a collection of Domains that you have registered in Linode's DNS Manager. Linode is not a registrar, and in order for these to work you must own the domains and point your registrar at Linode's nameservers.\n","operationId":"getDomains","x-linode-cli-action":"list","security":[{"personalAccessToken":[]},{"oauth":["domains:read_only"]}],"responses":{"200":{"description":"A paginated list of Domains you have registered.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","description":"A domain zonefile in our DNS system. You must own the domain name and tell your registrar to use Linode's nameservers in order for a domain in our system to be treated as authoritative.\n","properties":{"id":{"type":"integer","description":"This Domain's unique ID","example":1234,"readOnly":true,"x-linode-cli-display":1},"type":{"type":"string","enum":["master","slave"],"description":"Whether this Domain represents the authoritative source of information for the domain it describes (\"master\"), or whether it is a read-only copy of a master (\"slave\").\n","example":"master","x-linode-cli-display":3},"domain":{"type":"string","pattern":"\\A(\\*\\.)?([a-zA-Z0-9-_]{1,63}\\.)+([a-zA-Z]{2,3}\\.)?([a-zA-Z]{2,16}|xn--[a-zA-Z0-9]+)\\Z","minLength":1,"maxLength":255,"description":"The domain this Domain represents. Domain labels cannot be longer than 63 characters and must conform to [RFC1035](https://tools.ietf.org/html/rfc1035). Domains must be unique on Linode's platform, including across different Linode accounts; there cannot be two Domains representing the same domain.\n","example":"example.org","x-linode-filterable":true,"x-linode-cli-display":2},"group":{"deprecated":true,"type":"string","description":"The group this Domain belongs to. This is for display purposes only.\n","example":null,"minLength":1,"maxLength":50,"x-linode-filterable":true},"status":{"type":"string","enum":["disabled","active"],"default":"active","description":"Used to control whether this Domain is currently being rendered.\n","example":"active","x-linode-cli-display":4,"x-linode-cli-color":{"active":"green","disabled":"yellow","edit_mode":"yellow","default_":"red"}},"description":{"type":"string","minLength":1,"maxLength":255,"description":"A description for this Domain. This is for display purposes only.\n","example":null},"soa_email":{"type":"string","format":"email","description":"Start of Authority email address. This is required for `type` master Domains.\n","example":"admin@example.org","x-linode-cli-display":5},"retry_sec":{"type":"integer","default":0,"description":"The interval, in seconds, at which a failed refresh should be retried.\n\n* Valid values are\n0, 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200.\n\n* Any other value is rounded up to the nearest valid value.\n\n* A value of 0 is equivalent to the default value of 14400.\n","example":300},"master_ips":{"type":"array","items":{"type":"string","format":"ip"},"description":"The IP addresses representing the master DNS for this Domain. At least one value is required for `type` slave Domains.\n","example":[]},"axfr_ips":{"type":"array","items":{"type":"string","format":"ip"},"description":"The list of IPs that may perform a zone transfer for this Domain. This is potentially dangerous, and should be set to an empty list unless you intend to use it.\n","example":[]},"expire_sec":{"type":"integer","default":0,"description":"The amount of time in seconds that may pass before this Domain is no longer\nauthoritative.\n\n* Valid values are\n0, 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200.\n\n* Any other value is rounded up to the nearest valid value.\n\n* A value of 0 is equivalent to the default value of 1209600.\n","example":300},"refresh_sec":{"type":"integer","default":0,"description":"The amount of time in seconds before this Domain should be refreshed.\n\n* Valid values are\n0, 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200.\n\n* Any other value is rounded up to the nearest valid value.\n\n* A value of 0 is equivalent to the default value of 14400.\n","example":300},"ttl_sec":{"type":"integer","default":0,"description":"\"Time to Live\" - the amount of time in seconds that this Domain's records may be cached by resolvers or other domain servers.\n* Valid values are 0, 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200.\n* Any other value is rounded up to the nearest valid value.\n* A value of 0 is equivalent to the default value of 86400.\n","example":300},"tags":{"x-linode-filterable":true,"description":"An array of tags applied to this object. Tags are for organizational purposes only.\n","type":"array","items":{"type":"string"},"example":["example tag","another example"]}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/Domain"}},"page":{"type":"integer","readOnly":true,"example":1,"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/PaginationEnvelope/properties/page"},"pages":{"type":"integer","readOnly":true,"example":1,"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/PaginationEnvelope/properties/pages"},"results":{"type":"integer","readOnly":true,"example":1,"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/PaginationEnvelope/properties/results"}}}}}},"default":{"description":"Error","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","description":"An object for describing a single error that occurred during the processing of a request.\n","properties":{"reason":{"type":"string","description":"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](/docs/api/support/#support-ticket-open) or perform some other action before you can complete the request successfully.\n","example":"fieldname must be a valid value"},"field":{"type":"string","description":"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.\n","example":"fieldname"}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/ErrorObject"}}}}}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/responses/ErrorResponse"}},"x-code-samples":[{"lang":"Shell","source":"curl -H \"Authorization: Bearer $TOKEN\" \\\n https://api.linode.com/v4/domains\n"},{"lang":"CLI","source":"linode-cli domains list\n"}],"__originalOperationId":"getDomains","path":"/domains"},"errorHandling":"Standard","parameters":[{"id":"pagequery","name":"page","in":"query","required":false,"value":"","isActive":false,"type":"num","allowedTypes":["num","jsonata","msg","flow","global"],"description":"The page of a collection to return.","schema":{"type":"integer","minimum":1,"default":1},"keys":null},{"id":"page_sizequery","name":"page_size","in":"query","value":"","isActive":false,"type":"num","allowedTypes":["num","jsonata","msg","flow","global"],"description":"The number of items to return per page.","schema":{"type":"integer","minimum":25,"maximum":100,"default":100},"keys":null}],"contentType":"application/json","outputs":1,"x":910,"y":60,"wires":[["4dad7d36265b6e54"]]},{"id":"47234d3b9208c717","type":"linode","z":"055aaafb7da45cdf","name":"","container":"","openApiUrl":"","api":"Linode Instances","operation":"getLinodeInstances","operationData":{"x-linode-grant":"read_only","parameters":[{"name":"page","in":"query","description":"The page of a collection to return.","required":false,"schema":{"type":"integer","minimum":1,"default":1},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/parameters/pageOffset"},{"name":"page_size","in":"query","description":"The number of items to return per page.","schema":{"type":"integer","minimum":25,"maximum":100,"default":100},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/parameters/pageSize"}],"summary":"Linodes List","description":"Returns a paginated list of Linodes you have permission to view.\n","tags":["Linode Instances"],"operationId":"getLinodeInstances","x-linode-cli-action":"list","security":[{"personalAccessToken":[]},{"oauth":["linodes:read_only"]}],"responses":{"200":{"description":"Returns an array of all Linodes on your Account.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"label":{"x-linode-filterable":true,"x-linode-cli-display":2,"type":"string","description":"The Linode's label is for display purposes only. If no label is provided for a Linode,\na default will be assigned.\n\nLinode labels have the following constraints:\n\n * Must begin and end with an alphanumeric character.\n * May only consist of alphanumeric characters, dashes (`-`), underscores (`_`) or periods (`.`).\n * Cannot have two dashes (`--`), underscores (`__`) or periods (`..`) in a row.\n","example":"linode123","minLength":3,"maxLength":32,"pattern":"^[a-zA-Z]((?!--|__|..)[a-zA-Z0-9-_.])+$"},"region":{"type":"string","x-linode-filterable":true,"readOnly":true,"description":"This is the [Region](/docs/api/regions/#regions-list) where the Linode was deployed. A Linode's region can only be changed by initiating a [cross data center migration](/docs/api/linode-instances/#dc-migrationpending-host-migration-initiate).\n","x-linode-cli-display":3,"example":"us-east"},"image":{"type":"string","description":"An Image ID to deploy the Disk from.\n\nAccess the Images List ([GET /images](/docs/api/images/#images-list)) endpoint with authentication to view\nall available Images. Official Linode Images start with `linode/`, while your Account's Images start with `private/`. Creating\na disk from an Account Image requires `read_only` or `read_write` permissions for that Image. Access the User's\nGrant Update ([PUT /account/users/{username}/grants](/docs/api/account/#users-grants-update)) endpoint to\nadjust permissions for an Account Image.\n","example":"linode/debian10","x-linode-filterable":true,"readOnly":true,"nullable":true,"x-linode-cli-display":5},"type":{"type":"string","readOnly":true,"description":"This is the [Linode Type](/docs/api/linode-types/#types-list) that this Linode was deployed with.\nTo change a Linode's Type, use [POST /linode/instances/{linodeId}/resize](/docs/api/linode-instances/#linode-resize).\n","x-linode-cli-display":4,"example":"g6-standard-1"},"group":{"deprecated":true,"type":"string","x-linode-filterable":true,"description":"A deprecated property denoting a group label for this Linode.\n","example":"Linode-Group"},"tags":{"x-linode-filterable":true,"description":"An array of tags applied to this object. Tags are for organizational purposes only.\n","type":"array","items":{"type":"string"},"example":["example tag","another example"]},"id":{"x-linode-filterable":true,"type":"integer","description":"This Linode's ID which must be provided for all operations impacting this Linode.\n","example":123,"readOnly":true,"x-linode-cli-display":1},"status":{"type":"string","description":"A brief description of this Linode's current state. This field may change without direct action from you. For example, when a Linode goes into maintenance mode its status will display \"stopped\".\n","example":"running","readOnly":true,"enum":["running","offline","booting","rebooting","shutting_down","provisioning","deleting","migrating","rebuilding","cloning","restoring","stopped"],"x-linode-cli-display":6,"x-linode-cli-color":{"running":"green","offline":"red","default_":"yellow"}},"hypervisor":{"type":"string","description":"The virtualization software powering this Linode.\n","example":"kvm","readOnly":true,"enum":["kvm"]},"created":{"type":"string","format":"date-time","description":"When this Linode was created.","example":"2018-01-01T00:01:01","readOnly":true},"updated":{"type":"string","format":"date-time","description":"When this Linode was last updated.","example":"2018-01-01T00:01:01","readOnly":true},"ipv4":{"x-linode-filterable":true,"type":"array","format":"ipv4","items":{"type":"string"},"example":["203.0.113.1","192.0.2.1"],"readOnly":true,"description":"This Linode's IPv4 Addresses. Each Linode is assigned a single public IPv4 address\nupon creation, and may get a single private IPv4 address if needed. You may need to\n[open a support ticket](/docs/api/support/#support-ticket-open)\nto get additional IPv4 addresses.\n\nIPv4 addresses may be reassigned between your Linodes, or shared with other Linodes.\nSee the [/networking](/docs/api/networking/) endpoints for details.\n","x-linode-cli-display":7},"ipv6":{"type":"string","format":"ipv6/128","nullable":true,"description":"This Linode's IPv6 SLAAC address. This address is specific to a Linode, and may not be shared. If the Linode has not been assigned an IPv6 address, the return value will be `null`.\n","example":"c001:d00d::1337/128","readOnly":true},"specs":{"type":"object","description":"Information about the resources available to this Linode.","readOnly":true,"properties":{"disk":{"type":"integer","description":"The amount of storage space, in MB, this Linode has access to. A typical Linode will divide this space between a primary disk with an `image` deployed to it, and a swap disk, usually 512 MB. This is the default configuration created when deploying a Linode with an `image` through [POST /linode/instances](/docs/api/linode-instances/#linode-create). While this configuration is suitable for 99% of use cases, if you need finer control over your Linode's disks, see the [/linode/instances/{linodeId}/disks](/docs/api/linode-instances/#disks-list) endpoints.\n","example":81920,"readOnly":true},"memory":{"type":"integer","description":"The amount of RAM, in MB, this Linode has access to. Typically a Linode will choose to boot with all of its available RAM, but this can be configured in a Config profile, see the [/linode/instances/{linodeId}/configs](/docs/api/linode-instances/#configuration-profiles-list) endpoints and the LinodeConfig object for more information.\n","example":4096,"readOnly":true},"vcpus":{"type":"integer","description":"The number of vcpus this Linode has access to. Typically a Linode will choose to boot with all of its available vcpus, but this can be configured in a Config Profile, see the [/linode/instances/{linodeId}/configs](/docs/api/linode-instances/#configuration-profiles-list) endpoints and the LinodeConfig object for more information.\n","example":2,"readOnly":true},"transfer":{"type":"integer","description":"The amount of network transfer this Linode is allotted each month.","example":4000,"readOnly":true}}},"alerts":{"type":"object","properties":{"cpu":{"type":"integer","description":"The percentage of CPU usage required to trigger an alert.\nIf the average CPU usage over two hours exceeds this value, we'll send you an alert.\nYour Linode's total CPU capacity is represented as 100%, multiplied by its number of\ncores.\n\nFor example, a two core Linode's CPU capacity is represented as 200%. If you want\nto be alerted at 90% of a two core Linode's CPU capacity, set the alert value to `180`.\n\nThe default value is 90% multiplied by the number of cores.\n\nIf the value is set to `0` (zero), the alert is disabled.\n","example":180},"network_in":{"type":"integer","description":"The amount of incoming traffic, in Mbit/s, required to trigger an alert. If the average incoming traffic over two hours exceeds this value, we'll send you an alert. If this is set to `0` (zero), the alert is disabled.\n","example":10},"network_out":{"type":"integer","description":"The amount of outbound traffic, in Mbit/s, required to trigger an alert. If the average outbound traffic over two hours exceeds this value, we'll send you an alert. If this is set to `0` (zero), the alert is disabled.\n","example":10},"transfer_quota":{"type":"integer","description":"The percentage of network transfer that may be used before an alert is triggered. When this value is exceeded, we'll alert you. If this is set to `0` (zero), the alert is disabled.\n","example":80},"io":{"type":"integer","description":"The amount of disk IO operation per second required to trigger an alert. If the average disk IO over two hours exceeds this value, we'll send you an alert. If set to `0` (zero), this alert is disabled.\n","example":10000}}},"backups":{"type":"object","description":"Information about this Linode's backups status. For information about available backups, see [/linode/instances/{linodeId}/backups](/docs/api/linode-instances/#backups-list).\n","properties":{"enabled":{"type":"boolean","description":"If this Linode has the Backup service enabled. To enable backups, see [POST /linode/instances/{linodeId}/backups/enable](/docs/api/linode-instances/#backups-enable).\n","example":true,"readOnly":true},"schedule":{"type":"object","properties":{"day":{"type":"string","nullable":true,"description":"The day of the week that your Linode's weekly Backup is taken.\nIf not set manually, a day will be chosen for you. Backups\nare taken every day, but backups taken on this day are\npreferred when selecting backups to retain for a longer period.\n\n\nIf not set manually, then when backups are initially enabled, this\nmay come back as `Scheduling` until the `day` is automatically selected.\n","example":"Saturday","enum":["Scheduling","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},"window":{"type":"string","nullable":true,"description":"The window in which your backups will be taken, in UTC. A\nbackups window is a two-hour span of time in which the backup\nmay occur.\n\n\nFor example, `W10` indicates that your backups should be\ntaken between 10:00 and 12:00. If you do not choose a backup\nwindow, one will be selected for you automatically.\n\n\nIf not set manually, when backups are initially enabled this\nmay come back as `Scheduling` until the `window` is automatically selected.\n","example":"W22","enum":["Scheduling","W0","W2","W4","W6","W8","W10","W12","W14","W16","W18","W20","W22"]}}},"last_successful":{"type":"string","format":"date-time","description":"The last successful backup date. 'null' if there was no previous backup.","readOnly":true,"example":"2018-01-01T00:01:01"}}},"watchdog_enabled":{"type":"boolean","description":"The watchdog, named Lassie, is a Shutdown Watchdog that monitors your Linode and will reboot it if it powers off unexpectedly. It works by issuing a boot job when your Linode powers off without a shutdown job being responsible.\nTo prevent a loop, Lassie will give up if there have been more than 5 boot jobs issued within 15 minutes.\n","example":true}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/Linode"}},"page":{"type":"integer","readOnly":true,"example":1,"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/PaginationEnvelope/properties/page"},"pages":{"type":"integer","readOnly":true,"example":1,"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/PaginationEnvelope/properties/pages"},"results":{"type":"integer","readOnly":true,"example":1,"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/PaginationEnvelope/properties/results"}}}}}},"default":{"description":"Error","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","description":"An object for describing a single error that occurred during the processing of a request.\n","properties":{"reason":{"type":"string","description":"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](/docs/api/support/#support-ticket-open) or perform some other action before you can complete the request successfully.\n","example":"fieldname must be a valid value"},"field":{"type":"string","description":"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.\n","example":"fieldname"}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/schemas/ErrorObject"}}}}}},"$$ref":"https://www.linode.com/docs/api/openapi.yaml#/components/responses/ErrorResponse"}},"x-code-samples":[{"lang":"Shell","source":"curl -H \"Authorization: Bearer $TOKEN\" \\\n https://api.linode.com/v4/linode/instances\n"},{"lang":"CLI","source":"linode-cli linodes list\n"}],"__originalOperationId":"getLinodeInstances","path":"/linode/instances"},"errorHandling":"Standard","parameters":[{"id":"pagequery","name":"page","in":"query","required":false,"value":"","isActive":false,"type":"num","allowedTypes":["num","jsonata","msg","flow","global"],"description":"The page of a collection to return.","schema":{"type":"integer","minimum":1,"default":1},"keys":null},{"id":"page_sizequery","name":"page_size","in":"query","value":"","isActive":false,"type":"num","allowedTypes":["num","jsonata","msg","flow","global"],"description":"The number of items to return per page.","schema":{"type":"integer","minimum":25,"maximum":100,"default":100},"keys":null}],"contentType":"application/json","outputs":1,"x":710,"y":60,"wires":[["17f678c170e4bf83"]]}]