The REST Admin API is a legacy API as of October 1, 2024. All apps and integrations should be built with the GraphQL Admin API. For details and migration steps, visit our migration guide.

Requires themes access scope.

Note

Starting with Admin API 2023-04, if an app distributed through the Shopify App Store uses the Asset resource to create, edit or delete a theme's asset, you need to request the required protected access scope. In most cases, you shouldn't use the Asset resource. To learn more about when you can use the Asset resource, and how to migrate, refer to the Asset resource.

Theme assets are the individual files that make up a shop's theme.

A theme's assets include its templates, images, stylesheets, and extra snippets of code. They are arranged among the theme's directories, such as layout, templates, and assets. You can use the Asset resource to add, change, or remove asset files from a shop's theme. For a complete list of theme directories, refer to Theme architecture.

To learn how to create your own theme, see Building themes.

Was this section helpful?

Properties

attachment
A base64-encoded image.

checksum
read-only
The MD5 representation of the content, consisting of a string of 32 hexadecimal digits. May be null if an asset has not been updated recently.

content_type
read-only
The MIME representation of the content, consisting of the type and subtype of the asset.

created_at
read-only
The date and time (ISO 8601 format) when the asset was created.

The path to the asset within a theme. It consists of the file's directory and filename. For example, the asset assets/bg-body-green.gif is in the assets directory, so its key is assets/bg-body-green.gif.

public_url
read-only
->url
The public-facing URL of the asset.

size
read-only
The asset size in bytes.

theme_id
read-only
deprecated
The ID for the theme that an asset belongs to.

updated_at
read-only
The date and time (ISO 8601 format) when an asset was last updated.

value
The text content of the asset, such as the HTML and Liquid markup of a template file.

Was this section helpful?
{}The Asset resource
{
  "attachment": "R0lGODlhAQABAPABAP///wAAACH5Ow==\n",
  "checksum": "f69db2c563b5be32648ac7367557c09c",
  "content_type": "image/gif",
  "created_at": "2010-07-12T15:31:50-04:00",
  "key": "assets/bg-body-green.gif",
  "public_url": "http://static.shopify.com/assets/bg.gif?1",
  "size": 1542,
  "theme_id": 828155753,
  "updated_at": "2010-07-12T15:31:50-04:00",
  "value": "<div id=\"page\">\n<h1>404 Page not found</h1>\n<p>We couldn't find the page you were looking for.</p>\n</div>"
}

Retrieves a list of assets for a theme.

Note: Retrieving a list of assets returns only metadata about each asset. To retrieve an asset's content, you need to retrieve the asset individually.


api_version
string
required

theme_id
string
required

fields
Specify which fields to show using a comma-separated list of field names.

Was this section helpful?
Path parameters
themeid=828155753
string
required
Was this section helpful?
get
/admin/api/2024-10/themes/828155753/assets.json
Copy
curl -X GET "https://your-development-store.myshopify.com/admin/api/2024-10/themes/828155753/assets.json" \
-H "X-Shopify-Access-Token: {access_token}"
{}Response
JSON
HTTP/1.1 200 OK
{
  "assets": [
    {
      "key": "layout/theme.liquid",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/x-liquid",
      "size": 3252,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/sidebar-devider.gif",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/sidebar-devider.gif?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/gif",
      "size": 1016,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/bg-body-pink.gif",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/bg-body-pink.gif?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/gif",
      "size": 1562,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/bg-content.gif",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/bg-content.gif?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/gif",
      "size": 134,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "sections/header_section.liquid",
      "public_url": null,
      "created_at": "2017-04-28T10:30:00-04:00",
      "updated_at": "2017-04-28T10:30:00-04:00",
      "content_type": "application/x-liquid",
      "size": 998,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/shop.css.liquid",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/shop.css.liquid?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/x-liquid",
      "size": 14675,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/shop.js",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/shop.js?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/javascript",
      "size": 348,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/bg-main.gif",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/bg-main.gif?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/gif",
      "size": 297,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "sections/content_section.liquid",
      "public_url": null,
      "created_at": "2016-02-11T14:31:50-05:00",
      "updated_at": "2016-02-11T14:31:50-05:00",
      "content_type": "application/x-liquid",
      "size": 997,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "templates/page.liquid",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/x-liquid",
      "size": 147,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/bg-body-green.gif",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/bg-body-green.gif?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/gif",
      "size": 1542,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/shop.css",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/shop.css?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "text/css",
      "size": 14058,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "config/settings_schema.json",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/json",
      "size": 4570,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "sections/product_section.liquid",
      "public_url": null,
      "created_at": "2016-02-14T16:31:41-05:00",
      "updated_at": "2016-02-14T16:31:41-05:00",
      "content_type": "application/x-liquid",
      "size": 2440,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "templates/blog.liquid",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/x-liquid",
      "size": 773,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "templates/article.liquid",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/x-liquid",
      "size": 2486,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "templates/product.liquid",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/x-liquid",
      "size": 2796,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "sections/footer_section.liquid",
      "public_url": null,
      "created_at": "2017-04-28T10:30:00-04:00",
      "updated_at": "2017-04-28T10:30:00-04:00",
      "content_type": "application/x-liquid",
      "size": 999,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/bg-footer.gif",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/bg-footer.gif?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/gif",
      "size": 1434,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/bg-sidebar.gif",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/bg-sidebar.gif?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/gif",
      "size": 124,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/bg-body-orange.gif",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/bg-body-orange.gif?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/gif",
      "size": 1548,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "templates/collection.liquid",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/x-liquid",
      "size": 946,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/sidebar-menu.jpg",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/sidebar-menu.jpg?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/jpeg",
      "size": 1609,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "templates/cart.liquid",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/x-liquid",
      "size": 2047,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "config/settings_data.json",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/json",
      "size": 4570,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "templates/index.liquid",
      "public_url": null,
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "application/x-liquid",
      "size": 1068,
      "checksum": null,
      "theme_id": 828155753
    },
    {
      "key": "assets/bg-body.gif",
      "public_url": "https://cdn.shopify.com/s/files/1/0005/4838/0009/t/1/assets/bg-body.gif?v=1278963110",
      "created_at": "2010-07-12T15:31:50-04:00",
      "updated_at": "2010-07-12T15:31:50-04:00",
      "content_type": "image/gif",
      "size": 1571,
      "checksum": null,
      "theme_id": 828155753
    }
  ]
}

Retrieves a single asset for a theme by its key.

To retrieve a single asset, include asset[key]=#{asset_key} as a request parameter. For example, to retrieve the asset with a key of templates/index.liquid, the request might be /admin/themes/828155753/assets.json?asset[key]=templates/index.liquid.

For more information on the key property, refer to Asset properties.


api_version
string
required

asset[key]
required
≤ 100
Retrieves a single asset for a theme by specifying the asset's key.

theme_id
string
required

fields
Specify which fields to show using a comma-separated list of field names.

Was this section helpful?
Query parameters
asset[key]=templates/index.liquid
required
≤ 100
Retrieves a single asset for a theme by specifying the asset's key.
Was this section helpful?
get
/admin/api/2024-10/themes/828155753/assets.json?asset[key]=templates/index.liquid
Copy
curl -X GET "https://your-development-store.myshopify.com/admin/api/2024-10/themes/828155753/assets.json?asset%5Bkey%5D=templates%2Findex.liquid" \
-H "X-Shopify-Access-Token: {access_token}"
{}Response
JSON
HTTP/1.1 200 OK
{
  "asset": {
    "key": "templates/index.liquid",
    "public_url": null,
    "value": "<!-- LIST 3 PER ROW -->\n<h2>Featured Products</h2>\n<table id=\"products\" cellspacing=\"0\" cellpadding=\"0\">\n  {% tablerow product in collections.frontpage.products cols:3 %}\n    <a href=\"{{product.url}}\">{{ product.featured_image | product_img_url: 'small' | img_tag }}</a>\n    <h3><a href=\"{{product.url}}\">{{product.title}}</a></h3>\n    <ul class=\"attributes\">\n      <li><span class=\"money\">{{product.price_min | money}}</span></li>\n    </ul>\n  {% endtablerow %}\n</table>\n<!-- /LIST 3 PER ROW -->\n\n{{ content_for_index }}\n\n<div id=\"articles\">\n  {% assign article = pages.frontpage %}\n  <div class=\"article\">\n    {% if article.content != \"\" %}\n      <h3>{{ article.title }}</h3>\n      <div class=\"article-body textile\">\n        {{ article.content }}\n      </div>\n    {% else %}\n      <div class=\"article-body textile\">\n        In <em>Admin &gt; Blogs &amp; Pages</em>, create a page with the handle <strong><code>frontpage</code></strong> and it will show up here.\n        <br />\n        {{ \"Learn more about handles\" | link_to \"http://wiki.shopify.com/Handle\" }}\n      </div>\n    {% endif %}\n  </div>\n</div>\n",
    "created_at": "2010-07-12T15:31:50-04:00",
    "updated_at": "2010-07-12T15:31:50-04:00",
    "content_type": "application/x-liquid",
    "size": 1068,
    "checksum": null,
    "theme_id": 828155753
  }
}

Creates or updates an asset for a theme.

In the PUT request, you can include the src or source_key property to create the asset from an existing file.


api_version
string
required

theme_id
string
required

source_key
The path within the theme to an existing asset. Include in the body of the PUT request to create a duplicate asset.

src
The source URL of an image. Include in the body of the PUT request to upload the image to Shopify.

Was this section helpful?
Path parameters
themeid=828155753
string
required
Request body
asset
Asset resource
Was this section helpful?
put
/admin/api/2024-10/themes/828155753/assets.json
Copy
curl -d '{"asset":{"key":"templates/index.liquid","value":"<img src='backsoon-postit.png'><p>We are busy updating the store for you and will be back within the hour.</p>"}}' \
-X PUT "https://your-development-store.myshopify.com/admin/api/2024-10/themes/828155753/assets.json" \
-H "X-Shopify-Access-Token: {access_token}" \
-H "Content-Type: application/json"
{}Response
JSON
HTTP/1.1 200 OK
{
  "asset": {
    "key": "templates/index.liquid",
    "public_url": null,
    "created_at": "2010-07-12T15:31:50-04:00",
    "updated_at": "2024-09-26T14:28:02-04:00",
    "content_type": "application/x-liquid",
    "size": 110,
    "checksum": "cd71db2e14df976c8aa44b44c8dae77b",
    "theme_id": 828155753
  }
}

Deletes an asset from a theme.

api_version
string
required

asset[key]
required
≤ 100
Deletes a single asset from a theme by specifying the asset's key.

theme_id
string
required

Was this section helpful?
Query parameters
asset[key]=assets/bg-body.gif
required
≤ 100
Deletes a single asset from a theme by specifying the asset's key.
Was this section helpful?
del
/admin/api/2024-10/themes/828155753/assets.json?asset[key]=assets/bg-body.gif
Copy
curl -X DELETE "https://your-development-store.myshopify.com/admin/api/2024-10/themes/828155753/assets.json?asset%5Bkey%5D=assets%2Fbg-body.gif" \
-H "X-Shopify-Access-Token: {access_token}"
{}Response
JSON
HTTP/1.1 200 OK
{
  "message": "assets/bg-body.gif was successfully deleted"
}