Changelog
Latest updates from the Linode team
API
4.0.22

4.0.22: 2019-04-29

Fixed

  • Added validation on the root_device property when creating (POST /linode/instances/{linodeId}/configs) or updating (PUT /linode/instances/{linodeId}/configs/{configId}) a Linode’s configuration profile.
  • Creating an SRV domain record (POST /domains/{domainId}/records) no longer adds an additional extension to the name property.
  • A cloned (POST /domains/{domainId}/clone) MX or SRV Domain record no longer return an incorrect value for the target property (GET /domains/123/records) when the record contains a subdomain.
  • Deprecated data centers are no longer returned from the regions endpoint (GET /regions).
    • Deprecated data centers include Tokyo1 (“id”: “ap-northeast-1a”, “country”: “jp”).
  • Viewing (GET /account) and updating your account (PUT /account) now returns a consistent value for the credit_card object’s expiry property.
  • More explicit error messages are returned when creating a NodeBalancer (POST /nodebalancers), creating a NodeBalancer node (POST /nodebalancers/{nodeBalancerId}/configs/{configId}/nodes), updating a NodeBalancer node (PUT /nodebalancers/{nodeBalancerId}/configs/{configId}/nodes/{nodeId}) and an invalid node IP address is provided.
API
4.0.21

4.0.21: 2019-04-22

Added

  • Added taxes to invoices and invoice items.
    • Added the subtotal and tax properties to invoices (GET /account/invoices/{invoiceId})
    • The total property of an invoice now represents the total of the invoice after taxes.
    • Added the tax and total properties to invoice items (GET /account/invoices/{invoiceId}/items).
    • An invoice item’s total is the item’s amount plus the taxes levied on the item.
  • The Events endpoints (GET /account/events, GET /account/events/{eventId}) will now include Lassie reboots and reboots of a Linode’s host.

Fixed

  • Reverted ability to filter StackScripts by image (introduced in release 4.0.19).
  • Resizing (POST /linode/instances/{linodeId}/resize) or upgrading (POST /linode/instances/{linodeId}/mutate) a Linode will now throw an error if there is no availability in the Linode’s data center.
  • The backups_enabled property of a Linode will now return true if a Linode’s backups are temporarily paused by the Linode Support Team.
  • Assigning a new credit card to an account (POST /account/credit-card) when the account has an expired credit card on file will no longer return an error.
API
4.0.20

4.0.20: 2019-04-08

Added

  • Added a “reserved” section to the GET /linodes/instances/:id/ips endpoint that lists reserved IPs.
  • Added sequence and logo_url to StackScripts.

Fixed

  • Correctly resize disks created with a private image.
API
4.0.19

4.0.19: 2019-03-28

Added:

  • Add filtering for StackScripts by image.
    • /stackscripts now accepts X-Filter for images.
  • Increased PayPal max payments amount to $500 USD or credit card limit; whichever value is higher.
    • POST /account/payments/paypal enforces max amount for usd field.

Fixed:

  • Allow filtering on region by slug and slug alias.
    • /instances accepts X-Filter for region using data center slug or slug alias.
  • Support ticket description and replies cannot contain only whitespace or newlines.
    • POST /support/tickets and /support/tickets/:id/replies disallow description field to contain only whitespace or new lines.
API
4.0.18

4.0.18: 2019-03-11

Added:

  • Updated POST /account/payments/paypal
    • adds checkout_token to the response
  • Updated GET /profile
    • adds active_since date
    • adds balance_uninvoiced amount

Fixed:

  • GET profile/apps no longer returns internal client tokens
API
4.0.17

4.0.17: 2019-02-27

Added:

  • Adds Region Features:
    • Adds features to the Region object. features is a list of strings describing what a region supports.
  • Adds events for the following actions:
    • Domain update, domain record update
    • Image update
    • Linode update, disk update
    • StackScript update
    • Longview client update
    • NodeBalancer update, nodebalancer config update
    • ssh key update
    • Volume update
    • Linode config create, update, delete

Changed:

  • Tag Validation expanded to 50 characters to accommodate display groups.
API
4.0.16

4.0.16: 2019-02-21

Changed:

  • Host API docs from within developers.linode.com to unify navigation/header.
  • Replace external Markdown links in the API spec with anchor tags.
API
4.0.15

4.0.15: 2019-02-11

Added:

  • Allow up to 50 characters for Tag labels
  • Removed restriction preventing resize across plan generations
  • Add filtering for entity type and id on Events
    • /account/events now accepts X-Filter for entity.type and entity.id
    • If filtering by entity.id, entity.type is also required
    • Allowed types are: linode, nodebalancer, domain, volume

Fixed:

  • Allow issuing console tokens for IPv6 clients
API
4.0.14

4.0.14: 2019-02-05

Added:

  • Documentation for Dedicated CPU class (“dedicated”) in Linode Types
API
4.0.13

4.0.13: 2019-01-21

Fixed:

  • Mismatched labels/descriptions for fields in API schemas
API
4.0.12

4.0.12: 2019-01-21

Added:

  • Trusted Devices
    • Lists devices with active Remember Me sessions on the account for the past 30 days, device name and browser used.
API
4.0.11

4.0.11: 2018-12-17

Added

  • community_like Event type
  • Include prefix_length in ipv6 global pools response

Fixed

  • Consistent ordering of Linode IPv4s
    • Public addresses come before private addresses, order is always the same
  • New Users are assigned a referral code
API
4.0.10

4.0.10: 2018-12-03

Added:

  • Added ‘tags’ to NodeBalancers
    • The NodeBalancer object now includes “tags”, an array of string
    • POST /nodebalancers now accepts “tags”, an array of strings
    • GET /tags/:tag now returns tagged NodeBalancers in addition to other types
API
4.0.9

4.0.9: 2018-11-19

Added

  • Updates tag endpoints to accept and return Volumes
    • GET /tags
    • POST /tags
  • Added tags to Volumes

Fixed

  • Fixed validating RDNS when set via /networking endpoint
API
4.0.8

4.0.8: 2018-11-05

Added:

  • Added ‘tags’ to Domains
    • The Domain object now includes “tags”, an array of strings
    • POST /domains now accepts “tags”, an array of strings
    • GET /tags/:tag now returns tagged Domains in addition to Linodes
API
4.0.7

4.0.7: 2018-10-24

Added:

  • Added “migration_imminent” notification for Linodes that will migrate soon
  • POST /linode/instances/:id/migrate can now initiate scheduled migrations

Fixed:

  • Fixed bad interaction between clone and global backups_enabled that resulted in failed clone
API
4.0.6

4.0.6: 2018-09-24

Added

  • Added closeable support tickets via /support/tickets/:id/close
    • Only applies to tickets that are closeable
API
4.0.5

4.0.5: 2018-09-10

Added

  • Added backups-enabled to /account/settings to automatically add backups service for new Linodes.
  • Added tags for Linodes
  • Added linode/types-legacy collection, returning all Linode types that cannot be deployed.
  • Added successor field to Linode Type object.

Fixed

  • Fixed issue with backup windows when a window could not be determined.
  • Fixed bug related to reattaching volumes to another Linode when the original Linode is deleted.
API
4.0.4

4.0.4: 2018-08-28

Added

  • Added User SSH Keys
    • Allows storage and deployment of public SSH Keys
    • Added GET /profile/sshkeys
    • Added POST /profile/sshkeys
    • Added GET /profile/sshkeys/{ssh_key_id}
    • Added PUT /profile/sshkeys/{ssh_key_id}
    • Added DELETE /profile/sshkeys/{ssh_key_id}
    • Added SSH Key labels to User object
  • Allow deploying Linodes with stored SSH Keys
    • Added authorized_users to POST /linodes/instances/
  • Allow rebuilding Linodes with stored SSH Keys
    • Added authorized_users to POST /linodes/instances/{linode_id}/rebuild
  • Allow deploying Disks with stored SSH Keys
    • Added authorized_users to POST /linodes/instances/{linode_id}/disks
  • NodeBalancer config rebuild
    • Allows fast track config/node rebuilding
    • POST nodebalancers/{nodebalancerId}/configs/{configId}/rebuild
  • Add expires to Image map for automatic Images

Fixed

  • Removed duplicative Event for StackScript creation
  • Fixed typo in DNS error message
  • Added ‘field’ to StackScript errors
API
4.0.3

4.0.3: 2018-07-12

Added

  • Added POST /linode/instances/{linodeId}/migrate
    • In some circumstances, a Linode may have pending migrations scheduled that that you can initiate when convenient.
    • This endpoint initiates the scheduled migration, which will shut the Linode down, migrate it, and then bring it back to its original state.
  • Added POST /domains/import
    • Imports a domain zone from a remote nameserver that allows zone transfers (AXFR).
  • Added ability to create a Linode with private networking enabled.
    • POST /linode/instances now accepts a boolean “private_ip”.
    • If true, the created Linode will have private networking enabled when created.
  • Added optional “config_id” to POST /linode/instances/{linodeId}/reboot

Fixed

  • Fixed example response for POST /volumes/{volumeId}/attach
API
4.0.2

4.0.2: 2018-06-20

Added

  • Added fast-track NodeBalancer creation
    • POST /nodebalancers now accepts “configs”, details of configs to create
    • Each config in “configs” must have at least one node in “nodes”
  • Added X-Spec-Version header to API responses
  • Added persistent ordering to all collections
    • All collections are now returned in a predictable, consistent order
  • Added watchdog_enabled to Linode object
  • Added X-Spec-Version header to all responses
    • This header describes the version of our OpenAPI spec that describes this API

Fixed

  • Require shutting down before resetting root password for a disk
  • Fixed url for Community events
API
4.0.1

4.0.1: 2018-05-14

Added

Added missing “resizing” Linode status.

Fixed

  • Fixed bug where Linodes got stuck in rescue mode.
  • Fixed bug when attaching a Volume to a Linode with no configs.
  • API now returns 500 when an IP Address cannot be allocated.
    • Previously, this incorrectly returned a 400.
  • Fixed 500 on POST /domains/:id/records with service.
    • Bug occurred when service was sent into this endpoint without "type": "SRV".
  • Fixed errors caused by illegal characters in URL errors.
API
4.0.0

4.0.0: 2018-04-02

Added

  • Added fields to Notification object
    • Added “label” - a brief description of the notification
    • Added “severity” - one of “minor”, “major”, or “critical”
    • Added “until” - a datetime or null
    • Added “notice” to possible values for “type”
  • Added POST /linode/instances/:id/disks/:id/clone
    • This used to be at POST /linode/instances/:id/disks/:id
  • GET /linode/instances is now filterable on “id”
  • GET /account/events is now filterable on “id”

Changed

  • Unify IPv4, IPv6 GET/POST; use “type”: “public”
  • Moved /managed/linode_settings to /managed/linode-settings
    • /managed/linode_settings/:id moved to /managed/linode-settings/:id
    • This was to keep our convention of using dashes in URLs instead of underscores
  • Password no longer accepted in POST /account/users
    • You may no longer provide a password when creating a new user
    • New users will immediately receive a password reset email to set their password
  • Changed returned Region IDs
    • Slugs such as “us-east-1a” are now returned as “us-east”
    • These values had previosuly been accepted as input.
    • “us-south” was renamed “us-central”
    • Old values are still accepted (and translated) in requests
  • Moved GET/PUT for range/pool v6 addresses to /networking/ips
    • GET /networking/ipv6/:address moved to GET /networking/ips/:address
    • PUT /networking/ipv6/:address moved to GET /networking/ips/:address
  • /linode/instances/$id/rebuild returns a Linode
  • Fixed inconsistent responses for action endpoints
    • POST /linode/instances/:id/backups-enable now returns {} on success
    • POST /linode/instances/:id/backups-disable now returns {} on success
  • Creating a payment now returns the new payment
    • POST /account/payments now returns a Payment object
    • POST /account/payments/paypal/execute now returns a Payment object
  • Moved ipv4-specific networking endpoints
    • POST /networking/ip-assign moved to POST /networking/ipv4/assign
    • POST /networking/ip-sharing moved to POST /networking/ipv4/share
    • POST /networking/ipv4/assign now returns {} on success

Removed:

  • Removed “addresses” from GET /linode/instances/:id/ips response
    • These addresses are now returned in GET /networking/ips
  • Removed the ability to change another user’s email address
    • PUT /account/users/:username no longer accepts “email”
    • PUT /profile can still be used to change your own email address
API

2018-03-14

Added

  • Added support for refresh tokens
    • Apps with an active refresh token are returned in GET /profile/apps
    • Revoking an app’s access to your account expires any refresh tokens it has

Changed

  • Removed the ability to change passwords
    • Removed POST /profile/password
    • Removed POST /account/users/:username/password
    • To reset your password, use manager.linode.com

Fixed

  • Fix output for ipv6 RDNS endpoints
    • PUT /networking/ips/:address now returns the modified v6 address
    • PUT /linode/instances/:id/ips/:address now returns the modified v6 address
    • Nothing has changed for these endpoints when :address is a v4 address
  • Fixed bug setting RDNS for v6 addresses
  • Fixed bug making it impossible to provide authorized_keys when rebuilding a Linode
API

2018-02-26

Added

  • Added GET /networking/ips
    • Returns all ipv4 and ipv6 addresses on your account
  • Added support for short region slugs
    • Omitting the suffix of a region slug picks a default
    • For example, “us-east” is treated as “us-east-1a”
  • Support tickets ordered by status, update date

Changed

  • Unified IPv4 and IPv6 Objects
    • Removed “range” from IPv6 object
    • Added “linode_id” to IPv6 object
    • Added “region” to IPv6 object
  • Removed GET /networking/ipv4
  • Separated /networking/ipv6 into /pools and /ranges
    • Added GET /networking/ipv6/pools
    • Added GET /networking/ipv6/ranges
    • Removed GET /networking/ipv6
  • Changed GET /linode/instances/:id/ips response
    • ipv6.link_local is now a full IPAddress object
  • Improved response for unrestricted user’s grants
    • Changed GET /profile/grants and GET /account/users/:username/grants
    • Now returns a 204 with no content when getting grants for unrestricted users
  • Moved /linode/instances/:id/ips/sharing to /networking/ip-sharing
    • linode_id must now be passed in, along with existing ips list
  • Removed deprecated “distribution” fields and endpoints
    • Removed GET /linode/distributions
    • Removed GET /linode/distributions/:id
    • These fields or endpoints had been deprecated since 2017-12-11
  • Changed POST /managed/contacts
    • “phone” is an object containing primary and secondary numbers
    • phone_primary -> phone.primary
    • phone_secondary -> phone.secondary
  • Changed account/notifications
    • Removed xsa notification type
    • Renamed balance_outstanding to payment_due
  • Changed error response
    • “field” changed to represent nesting with x.x
  • Changed GET/PUT /account
    • Renamed “vat_number” to “tax_id”
  • Removed managed_issue from POST /support/tickets

Fixed

  • Cloned linodes now copy original Linode’s image
  • Fixed bug parsing OAuth Scopes when creating token