HubSpot · Capability

HubSpot Blog Posts API — Batch Operations

HubSpot Blog Posts API — Batch Operations. 4 operations. Lead operation: Hubspot Archive Multiple Blog Posts. Self-contained Naftiko capability covering one Hubspot business surface.

Run with Naftiko HubspotBatch Operations

What You Can Do

POST
Batcharchiveblogposts — Hubspot Archive Multiple Blog Posts
/v1/cms/v3/blogs/posts/batch/archive
POST
Batchcreateblogposts — Hubspot Create Multiple Blog Posts
/v1/cms/v3/blogs/posts/batch/create
POST
Batchreadblogposts — Hubspot Read Multiple Blog Posts
/v1/cms/v3/blogs/posts/batch/read
POST
Batchupdateblogposts — Hubspot Update Multiple Blog Posts
/v1/cms/v3/blogs/posts/batch/update

MCP Tools

hubspot-archive-multiple-blog-posts

Hubspot Archive Multiple Blog Posts

hubspot-create-multiple-blog-posts

Hubspot Create Multiple Blog Posts

hubspot-read-multiple-blog-posts

Hubspot Read Multiple Blog Posts

hubspot-update-multiple-blog-posts

Hubspot Update Multiple Blog Posts

Capability Spec

blog-posts-batch-operations.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: HubSpot Blog Posts API — Batch Operations
  description: 'HubSpot Blog Posts API — Batch Operations. 4 operations. Lead operation: Hubspot Archive Multiple Blog Posts.
    Self-contained Naftiko capability covering one Hubspot business surface.'
  tags:
  - Hubspot
  - Batch Operations
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    HUBSPOT_API_KEY: HUBSPOT_API_KEY
capability:
  consumes:
  - type: http
    namespace: blog-posts-batch-operations
    baseUri: https://api.hubapi.com
    description: HubSpot Blog Posts API — Batch Operations business capability. Self-contained, no shared references.
    resources:
    - name: cms-v3-blogs-posts-batch-archive
      path: /cms/v3/blogs/posts/batch/archive
      operations:
      - name: batcharchiveblogposts
        method: POST
        description: Hubspot Archive Multiple Blog Posts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cms-v3-blogs-posts-batch-create
      path: /cms/v3/blogs/posts/batch/create
      operations:
      - name: batchcreateblogposts
        method: POST
        description: Hubspot Create Multiple Blog Posts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cms-v3-blogs-posts-batch-read
      path: /cms/v3/blogs/posts/batch/read
      operations:
      - name: batchreadblogposts
        method: POST
        description: Hubspot Read Multiple Blog Posts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: archived
          in: query
          type: boolean
          description: Whether to include archived posts
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cms-v3-blogs-posts-batch-update
      path: /cms/v3/blogs/posts/batch/update
      operations:
      - name: batchupdateblogposts
        method: POST
        description: Hubspot Update Multiple Blog Posts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: archived
          in: query
          type: boolean
          description: Whether to update archived posts
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.HUBSPOT_API_KEY}}'
  exposes:
  - type: rest
    namespace: blog-posts-batch-operations-rest
    port: 8080
    description: REST adapter for HubSpot Blog Posts API — Batch Operations. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/cms/v3/blogs/posts/batch/archive
      name: cms-v3-blogs-posts-batch-archive
      description: REST surface for cms-v3-blogs-posts-batch-archive.
      operations:
      - method: POST
        name: batcharchiveblogposts
        description: Hubspot Archive Multiple Blog Posts
        call: blog-posts-batch-operations.batcharchiveblogposts
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cms/v3/blogs/posts/batch/create
      name: cms-v3-blogs-posts-batch-create
      description: REST surface for cms-v3-blogs-posts-batch-create.
      operations:
      - method: POST
        name: batchcreateblogposts
        description: Hubspot Create Multiple Blog Posts
        call: blog-posts-batch-operations.batchcreateblogposts
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cms/v3/blogs/posts/batch/read
      name: cms-v3-blogs-posts-batch-read
      description: REST surface for cms-v3-blogs-posts-batch-read.
      operations:
      - method: POST
        name: batchreadblogposts
        description: Hubspot Read Multiple Blog Posts
        call: blog-posts-batch-operations.batchreadblogposts
        with:
          archived: rest.archived
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cms/v3/blogs/posts/batch/update
      name: cms-v3-blogs-posts-batch-update
      description: REST surface for cms-v3-blogs-posts-batch-update.
      operations:
      - method: POST
        name: batchupdateblogposts
        description: Hubspot Update Multiple Blog Posts
        call: blog-posts-batch-operations.batchupdateblogposts
        with:
          archived: rest.archived
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: blog-posts-batch-operations-mcp
    port: 9090
    transport: http
    description: MCP adapter for HubSpot Blog Posts API — Batch Operations. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: hubspot-archive-multiple-blog-posts
      description: Hubspot Archive Multiple Blog Posts
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: blog-posts-batch-operations.batcharchiveblogposts
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: hubspot-create-multiple-blog-posts
      description: Hubspot Create Multiple Blog Posts
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: blog-posts-batch-operations.batchcreateblogposts
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: hubspot-read-multiple-blog-posts
      description: Hubspot Read Multiple Blog Posts
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: blog-posts-batch-operations.batchreadblogposts
      with:
        archived: tools.archived
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: hubspot-update-multiple-blog-posts
      description: Hubspot Update Multiple Blog Posts
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: blog-posts-batch-operations.batchupdateblogposts
      with:
        archived: tools.archived
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.