Skip to main content
PUT
/
api
/
v1
/
blogs
/
:blog_id
/
articles
/
:id.json
Update Article
curl --request PUT \
  --url https://api.launchmystore.io/api/v1/blogs/:blog_id/articles/:id.json \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "title": "<string>",
  "handle": "<string>",
  "author": "<string>",
  "body_html": "<string>",
  "summary_html": "<string>",
  "published": true,
  "published_at": "<string>",
  "tags": "<string>",
  "template_suffix": "<string>",
  "image": {},
  "seo": {},
  "metafields": [
    {}
  ]
}
'
{
  "success": true,
  "data": {}
}

Documentation Index

Fetch the complete documentation index at: https://docs.launchmystore.io/llms.txt

Use this file to discover all available pages before exploring further.

Update Article

Updates an existing article. Only provided fields will be updated.

Request

curl -X PUT "https://api.launchmystore.io/api/v1/blogs/blog_abc123/articles/art_xyz789.json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Summer Collection Launch - Extended!",
    "body_html": "<p>Due to popular demand, our summer sale has been extended...</p>",
    "tags": "summer, announcements, sale-extended"
  }'

Path Parameters

blog_id
string
required
The unique blog ID
id
string
required
The unique article ID to update

Body Parameters

All parameters are optional. Only provided fields will be updated.
title
string
The article title
handle
string
URL-safe handle
author
string
Author name
body_html
string
Article content (HTML)
summary_html
string
Article summary/excerpt (HTML)
published
boolean
Whether the article is published
published_at
string
Publication date (ISO 8601)
tags
string
Comma-separated tags (replaces existing tags)
template_suffix
string
Custom template suffix (set to null to remove)
image
object
Featured image. Set to null to remove.
seo
object
SEO metadata
metafields
array
Metafields to add or update

Response

success
boolean
Whether the request succeeded
data
object
The updated article object

Example Response

{
  "success": true,
  "data": {
    "id": "art_xyz789",
    "blog_id": "blog_abc123",
    "title": "Summer Collection Launch - Extended!",
    "handle": "summer-product-launch-announcement",
    "author": "Jane Smith",
    "body_html": "<p>Due to popular demand, our summer sale has been extended...</p>",
    "summary_html": "<p>Our summer sale has been extended!</p>",
    "published": true,
    "published_at": "2024-03-15T10:00:00Z",
    "tags": "summer, announcements, sale-extended",
    "image": {
      "id": "img_art123",
      "src": "https://cdn.launchmystore.io/images/summer-launch.jpg",
      "alt": "Summer Collection Launch"
    },
    "created_at": "2024-03-14T09:00:00Z",
    "updated_at": "2024-03-25T14:30:00Z"
  }
}

Notes

  • Changing the handle will break existing links to the article
  • Setting published: false will unpublish the article immediately
  • Setting published_at to a future date will schedule the article

Error Codes

CodeDescription
UNAUTHORIZEDInvalid or missing access token
FORBIDDENApp doesn’t have write_content scope
NOT_FOUNDArticle or blog with the specified ID does not exist
VALIDATION_ERRORInvalid request body (see error details)
DUPLICATE_HANDLEAn article with this handle already exists in this blog