Skip to content

Blogs

Articles on WordPress, Shopify, Wix and Webflow sites: list, draft, schedule, publish, update and delete. These accounts take articles, not posts.

GET/v1/accounts/{id}/blogs

A Shopify store can have several blogs and a Webflow site one per CMS collection with a rich text field; WordPress and Wix have one.

Parameters

  • idstringrequired

Response 200

data []
  • idstringrequired

    Send it as blogId. WordPress and Wix sites have one blog, 1.

  • titlestringrequired
  • handlestring
Terminal window
curl "https://api.marsial.dev/v1/accounts/acc_3k9x2m/blogs" \
-H "Authorization: Bearer $MARSIAL_API_KEY"
GET/v1/accounts/{id}/blogs/{blogId}/articles

Published, scheduled, drafts and, on WordPress, pending and private ones.

Parameters

  • idstringrequired
  • blogIdstringrequired
  • cursorstring

    max 4,000

  • limitinteger

    max 50

Response 200

data
  • itemsobject[]required
    items
    • idstringrequired

      The site's own id for the article.

    • blogIdstringrequired
    • accountIdstringrequired
    • platformstringrequired

      Values: wordpress · shopify · wix · webflow

    • titlestringrequired
    • bodyHtmlstring
    • handlestring
    • excerptstring
    • tagsstring[]required
    • authorstring
    • imageobject
      image
      • urlstring (uri)required
      • altTextstring
    • seoobject
      seo
      • titlestring
      • descriptionstring
    • statusstring

      Published, scheduled, draft, waiting for review or private.

      Values: publish · future · draft · pending · private

    • isPublishedbooleanrequired
    • publishDatestring
    • urlstring (uri)

      The article on the site, once published.

  • nextCursorstring | nullrequired

    Send it as cursor for the next page; null on the last one.

Terminal window
curl "https://api.marsial.dev/v1/accounts/acc_3k9x2m/blogs/1/articles?limit=20" \
-H "Authorization: Bearer $MARSIAL_API_KEY"
POST/v1/accounts/{id}/blogs/{blogId}/articles

A draft unless you send isPublished: true; with a future publishDate the site schedules it. The image is downloaded by the site from its URL (upload it first with POST /media/upload-url). seo works on Shopify and Wix; fields sets a Webflow collection's own fields.

Parameters

  • idstringrequired
  • blogIdstringrequired

Body

  • titlestringrequired

    max 500

  • bodyHtmlstring

    The article as HTML.

    max 500,000

  • handlestring

    URL slug. Made from the title when omitted.

    max 255

  • excerptstring

    max 5,000

  • tagsstring[]

    Replaces the whole list; missing tags are created.

    max 100 items

  • authorstring

    WordPress: a user id. Shopify: a display name. Webflow: the author item id.

    max 200

  • imageobject

    Featured image from a public URL (for example from POST /v1/media/upload-url).

    image
    • urlstring (uri)required
    • altTextstring

      max 500

  • seoobject

    Shopify and Wix only.

    seo
    • titlestring

      max 200

    • descriptionstring

      max 500

  • isPublishedboolean

    false keeps it as a draft.

  • publishDatestring (date-time)

    A future date schedules it.

  • fieldsobject

    Webflow only: the collection's own fields, by slug.

Response 201

data
  • idstringrequired

    The site's own id for the article.

  • blogIdstringrequired
  • accountIdstringrequired
  • platformstringrequired

    Values: wordpress · shopify · wix · webflow

  • titlestringrequired
  • bodyHtmlstring
  • handlestring
  • excerptstring
  • tagsstring[]required
  • authorstring
  • imageobject
    image
    • urlstring (uri)required
    • altTextstring
  • seoobject
    seo
    • titlestring
    • descriptionstring
  • statusstring

    Published, scheduled, draft, waiting for review or private.

    Values: publish · future · draft · pending · private

  • isPublishedbooleanrequired
  • publishDatestring
  • urlstring (uri)

    The article on the site, once published.

Terminal window
curl -X POST "https://api.marsial.dev/v1/accounts/acc_3k9x2m/blogs/1/articles" \
-H "Authorization: Bearer $MARSIAL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "Our autumn collection",
"bodyHtml": "<p>The first pieces land next month.</p>",
"excerpt": "An early look at what is arriving.",
"tags": [
"autumn",
"new arrivals"
],
"image": {
"url": "https://cdn.acme.com/autumn.jpg",
"altText": "Wool coats on a rail"
},
"isPublished": true,
"publishDate": "2026-11-03T09:00:00+01:00"
}'
GET/v1/accounts/{id}/blogs/{blogId}/articles/{articleId}

Parameters

  • idstringrequired
  • blogIdstringrequired
  • articleIdstringrequired

Response 200

data
  • idstringrequired

    The site's own id for the article.

  • blogIdstringrequired
  • accountIdstringrequired
  • platformstringrequired

    Values: wordpress · shopify · wix · webflow

  • titlestringrequired
  • bodyHtmlstring
  • handlestring
  • excerptstring
  • tagsstring[]required
  • authorstring
  • imageobject
    image
    • urlstring (uri)required
    • altTextstring
  • seoobject
    seo
    • titlestring
    • descriptionstring
  • statusstring

    Published, scheduled, draft, waiting for review or private.

    Values: publish · future · draft · pending · private

  • isPublishedbooleanrequired
  • publishDatestring
  • urlstring (uri)

    The article on the site, once published.

Terminal window
curl "https://api.marsial.dev/v1/accounts/acc_3k9x2m/blogs/1/articles/1842" \
-H "Authorization: Bearer $MARSIAL_API_KEY"
PATCH/v1/accounts/{id}/blogs/{blogId}/articles/{articleId}

Fields you leave out keep their value. tags replaces the whole list. isPublished: false takes it back to draft.

Parameters

  • idstringrequired
  • blogIdstringrequired
  • articleIdstringrequired

Body

  • titlestring

    max 500

  • bodyHtmlstring

    The article as HTML.

    max 500,000

  • handlestring

    URL slug. Made from the title when omitted.

    max 255

  • excerptstring

    max 5,000

  • tagsstring[]

    Replaces the whole list; missing tags are created.

    max 100 items

  • authorstring

    WordPress: a user id. Shopify: a display name. Webflow: the author item id.

    max 200

  • imageobject

    Featured image from a public URL (for example from POST /v1/media/upload-url).

    image
    • urlstring (uri)required
    • altTextstring

      max 500

  • seoobject

    Shopify and Wix only.

    seo
    • titlestring

      max 200

    • descriptionstring

      max 500

  • isPublishedboolean

    false keeps it as a draft.

  • publishDatestring (date-time)

    A future date schedules it.

  • fieldsobject

    Webflow only: the collection's own fields, by slug.

Response 200

data
  • idstringrequired

    The site's own id for the article.

  • blogIdstringrequired
  • accountIdstringrequired
  • platformstringrequired

    Values: wordpress · shopify · wix · webflow

  • titlestringrequired
  • bodyHtmlstring
  • handlestring
  • excerptstring
  • tagsstring[]required
  • authorstring
  • imageobject
    image
    • urlstring (uri)required
    • altTextstring
  • seoobject
    seo
    • titlestring
    • descriptionstring
  • statusstring

    Published, scheduled, draft, waiting for review or private.

    Values: publish · future · draft · pending · private

  • isPublishedbooleanrequired
  • publishDatestring
  • urlstring (uri)

    The article on the site, once published.

Terminal window
curl -X PATCH "https://api.marsial.dev/v1/accounts/acc_3k9x2m/blogs/1/articles/1842" \
-H "Authorization: Bearer $MARSIAL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"isPublished": false
}'
DELETE/v1/accounts/{id}/blogs/{blogId}/articles/{articleId}

Parameters

  • idstringrequired
  • blogIdstringrequired
  • articleIdstringrequired

Response 204

No content

Terminal window
curl -X DELETE "https://api.marsial.dev/v1/accounts/acc_3k9x2m/blogs/1/articles/1842" \
-H "Authorization: Bearer $MARSIAL_API_KEY"

© 2026 Marsial by TWOFACES ·marsial.dev ·Dashboard ·soporte@twofacesco.com