Web links

Update web link

Changed on

Updates a web link object.

put/web_links/{web_link_id}

Request

  • Base URL
    https://api.box.com/2.0
  • URL
    https://api.box.com/2.0/web_links/{web_link_id}
  • Auth
    OAuth 2
    Authorization code: https://account.box.com/api/oauth2/authorize
    Token URL: https://api.box.com/oauth2/token

Path parameters

web_link_idstring required

The ID of the web link.

Request body

urlstring

The new URL that the web link links to. Must start with "http://" or "https://".

namestring

A new name for the web link. Defaults to the URL if not set.

descriptionstring

A new description of the web link.

Example request

{
  "url": "https://box.com",
  "parent": {
    "id": "123",
    "user_id": "12346930"
  },
  "name": "Box Website",
  "description": "Cloud Content Management",
  "shared_link": {
    "access": "open",
    "password": "do-not-use-this-password",
    "vanity_name": "my-shared-link",
    "unshared_at": "2012-12-12T10:53:43-08:00",
    "one_time_passcode": {
      "mode": "none"
    }
  }
}

Response

Returns the updated web link object.

idstring required

The unique identifier for this web link.

type'web_link' required

The value will always be web_link.

etagstring

The entity tag of this web link. Used with If-Match headers.

urlstring

The URL this web link points to.

sequence_idstring

A numeric identifier that represents the most recent user event that has been applied to this item.

This can be used in combination with the GET /events-endpoint to filter out user events that would have occurred before this identifier was read.

An example would be where a Box Drive-like application would fetch an item via the API, and then listen to incoming user events for changes to the item. The application would ignore any user events where the sequence_id in the event is smaller than or equal to the sequence_id in the originally fetched resource.

namestring

The name of the web link.

descriptionstring

The description accompanying the web link. This is visible within the Box web application.

created_atstring date-time

When this file was created on Box’s servers.

modified_atstring date-time

When this file was last updated on the Box servers.

trashed_atstring date-time nullable

When this file was moved to the trash.

purged_atstring date-time nullable

When this file will be permanently deleted.

item_status'active' | 'trashed' | 'deleted'

Whether this item is deleted or not. Values include active, trashed if the file has been moved to the trash, and deleted if the file has been permanently deleted.

allowed_shared_link_access_levelsstring[]

The shared link access levels the authenticated user is allowed to use when creating or updating a shared link for this web link.

The list depends on item policy and user authorization, so it may be narrower than the levels available to the owner. An empty array means no access level is available to this user.

Example response

{
  "id": "11446498",
  "type": "web_link",
  "etag": "1",
  "url": "https://www.example.com/example/1234",
  "sequence_id": "3",
  "name": "My Bookmark",
  "parent": {
    "id": "12345",
    "etag": "1",
    "type": "folder",
    "sequence_id": "3",
    "name": "Contracts"
  },
  "description": "Example page",
  "path_collection": {
    "total_count": 1,
    "entries": [
      {
        "id": "12345",
        "etag": "1",
        "type": "folder",
        "sequence_id": "3",
        "name": "Contracts"
      }
    ]
  },
  "created_at": "2012-12-12T10:53:43-08:00",
  "modified_at": "2012-12-12T10:53:43-08:00",
  "trashed_at": "2012-12-12T10:53:43-08:00",
  "purged_at": "2012-12-12T10:53:43-08:00",
  "created_by": {
    "id": "11446498",
    "type": "user",
    "name": "Aaron Levie",
    "login": "ceo@example.com"
  },
  "modified_by": {
    "id": "11446498",
    "type": "user",
    "name": "Aaron Levie",
    "login": "ceo@example.com"
  },
  "owned_by": {
    "id": "11446498",
    "type": "user",
    "name": "Aaron Levie",
    "login": "ceo@example.com"
  },
  "shared_link": {
    "url": "https://www.box.com/s/vspke7y05sb214wjokpk",
    "download_url": "https://www.box.com/shared/static/rh935iit6ewrmw0unyul.jpeg",
    "vanity_url": "https://acme.app.box.com/v/my_url/",
    "vanity_name": "my_url",
    "access": "open",
    "effective_access": "company",
    "effective_permission": "can_download",
    "unshared_at": "2018-04-13T13:53:23-07:00",
    "is_password_enabled": true,
    "permissions": {
      "can_download": true,
      "can_preview": true
    },
    "download_count": 3,
    "preview_count": 3,
    "one_time_passcode": {
      "mode": "allowlist",
      "allowlist": [
        {
          "type": "email",
          "value": "alice@example.com",
          "created_at": "2026-05-19T12:00:00Z",
          "created_by": {
            "id": "11446498",
            "type": "user"
          }
        },
        {
          "type": "domain",
          "value": "example.com",
          "created_at": "2026-05-19T12:00:00Z",
          "created_by": {
            "id": "11446498",
            "type": "user"
          }
        }
      ]
    }
  },
  "item_status": "active",
  "collections": [
    {
      "id": "11446498",
      "type": "collection",
      "name": "Favorites",
      "collection_type": "favorites"
    }
  ],
  "allowed_shared_link_access_levels": [
    "open"
  ]
}

Changes

    • breaking

      the response property / became nullable for the status

    • warning

      added the new unprocessable_entity enum value to the response property for the response status

    • info

      added the new optional request property /

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added subschema #2 to the / response property allOf list for the response status

    • info

      removed subschema #2 subschema #3 from the / response property allOf list for the response status

    • info

      added the required property /// to the response with the status