Skip to content

HubSpot: Create a batch of Blog Authors

HubSpot blogAuthors.batchCreateAuthors: arguments, response, policy and SDK examples.

← Blog authors operations · Get started

Operation hubspot.blog_authors_batch_create_authors

Provider route: POST /cms/blogs/2026-09/authors/batch/create. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/hubspot with npm, or alter-sdk-hubspot with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { HubSpotIntegration } from "@alter-ai/hubspot";
async function execute(input: Parameters<HubSpotIntegration["blogAuthors"]["batchCreateAuthors"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new HubSpotIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.blogAuthors.batchCreateAuthors(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_hubspot import HubSpotIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = HubSpotIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.blog_authors.batch_create_authors(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
bodyModelRequired within parentExpand Create a batch of Blog Authors — request body — body

Referenced models: Create a batch of Blog Authors — request body — body

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$JSONRoot
$ (anyOf 1)ModelAlternativeExpand Create a batch of Blog Authors — response body — status: CANCELED, COMPLETE, PENDING, PROCESSING — Batch Response Blog Author
$ (anyOf 2)ModelAlternativeExpand Create a batch of Blog Authors — response body — status: CANCELED, COMPLETE, PENDING, PROCESSING — Batch Response Blog Author With Errors

Referenced models: Create a batch of Blog Authors — response body — status: CANCELED, COMPLETE, PENDING, PROCESSING — Batch Response Blog Author, Create a batch of Blog Authors — response body — status: CANCELED, COMPLETE, PENDING, PROCESSING — Batch Response Blog Author With Errors

2 more schemas are linked from the tables above, on the schema pages.

Create a batch of Blog Authors — request body — body
FieldTypePresenceDescription and constraints
$objectRoot
inputsarrayRequired within parentBlog authors to input.
inputs[]ModelEach itemExpand Create a new Blog Author — request body — body

Referenced models: Create a new Blog Author — request body — body

Create a batch of Blog Authors — response body — status: CANCELED, COMPLETE, PENDING, PROCESSING — Batch Response Blog Author
FieldTypePresenceDescription and constraints
$objectRoot
completedAtstringRequired within parentTime of batch operation completion.
Format: date-time
linksobjectOptionalLinks associated with batch operation.
Additional keys: see wildcard field
links.*stringAdditional keys
requestedAtstringOptionalTime of batch operation request.
Format: date-time
resultsarrayRequired within parentResults of batch operation.
results[]ModelEach itemExpand Update a Blog Author — response body
startedAtstringRequired within parentTime of batch operation start.
Format: date-time
statusstringRequired within parentStatus of batch operation.
Known values: CANCELED, COMPLETE, PENDING, PROCESSING

Referenced models: Update a Blog Author — response body

Create a batch of Blog Authors — response body — status: CANCELED, COMPLETE, PENDING, PROCESSING — Batch Response Blog Author With Errors
FieldTypePresenceDescription and constraints
$objectRoot
completedAtstringRequired within parentTime of batch operation completion.
Format: date-time
errorsarrayOptionalErrors in batch operation.
errors[]ModelEach itemExpand Create folders — response body — status: CANCELED, COMPLETE, PENDING, PROCESSING errors item
linksobjectOptionalLinks associated with batch operation.
Additional keys: see wildcard field
links.*stringAdditional keys
numErrorsJSONOptional
numErrors (anyOf 1)integerAlternativeNumber of errors.
Format: int32
numErrors (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
requestedAtstringOptionalTime of batch operation request.
Format: date-time
resultsarrayRequired within parentResults of batch operation.
results[]ModelEach itemExpand Update a Blog Author — response body
startedAtstringRequired within parentTime of batch operation start.
Format: date-time
statusstringRequired within parentStatus of batch operation.
Known values: CANCELED, COMPLETE, PENDING, PROCESSING

Referenced models: Create folders — response body — status: CANCELED, COMPLETE, PENDING, PROCESSING errors item, Update a Blog Author — response body

Create a new Blog Author — request body — body
FieldTypePresenceDescription and constraints
$objectRoot
avatarstringRequired within parentURL to the blog author's avatar, if supplying a custom one.
biostringRequired within parentA short biography of the blog author.
createdstringRequired within parentThe timestamp (ISO8601 format) when this Blog Author was created.
Format: date-time
deletedAtstringRequired within parentThe timestamp (ISO8601 format) when this Blog Author was deleted.
Format: date-time
displayNamestringRequired within parentThe full name of the Blog Author to be displayed.
emailstringRequired within parentEmail address of the Blog Author.
facebookstringRequired within parentURL to the Blog Author's Facebook page.
fullNamestringRequired within parentThe full, unabbreviated name of the blog author, typically their first and last name combined.
idstringRequired within parentThe unique ID of the Blog Author.
languagestringRequired within parentThe explicitly defined ISO 639 language code of the blog author.
One of: aa, ab, ae, af, af-na, af-za, agq, agq-cm, ak, ak-gh, am, am-et, an, ann, ann-ng, ar, ar-001, ar-ae, ar-bh, ar-dj, ar-dz, ar-eg, ar-eh, ar-er, ar-il, ar-iq, ar-jo, ar-km, ar-kw, ar-lb, ar-ly, ar-ma, ar-mr, ar-om, ar-ps, ar-qa, ar-sa, ar-sd, ar-so, ar-ss, ar-sy, ar-td, ar-tn, ar-ye, as, as-in, asa, asa-tz, ast, ast-es, av, ay, az, az-az, ba, bal, bal-pk, bas, bas-cm, be, be-by, bem, bem-zm, bez, bez-tz, bg, bg-bg, bgc, bgc-in, bho, bho-in, bi, blo, blo-bj, bm, bm-ml, bn, bn-bd, bn-in, bo, bo-cn, bo-in, br, br-fr, brx, brx-in, bs, bs-ba, ca, ca-ad, ca-es, ca-fr, ca-it, ccp, ccp-bd, ccp-in, ce, ce-ru, ceb, ceb-ph, cgg, cgg-ug, ch, chr, chr-us, ckb, ckb-iq, ckb-ir, co, cr, cs, cs-cz, csw, csw-ca, cu, cu-ru, cv, cv-ru, cy, cy-gb, da, da-dk, da-gl, dav, dav-ke, de, de-at, de-be, de-ch, de-de, de-gr, de-it, de-li, de-lu, dje, dje-ne, doi, doi-in, dsb, dsb-de, dua, dua-cm, dv, dyo, dyo-sn, dz, dz-bt, ebu, ebu-ke, ee, ee-gh, ee-tg, el, el-cy, el-gr, en, en-001, en-150, en-ae, en-ag, en-ai, en-as, en-at, en-au, en-bb, en-be, en-bi, en-bm, en-bs, en-bw, en-bz, en-ca, en-cc, en-ch, en-ck, en-cm, en-cn, en-cx, en-cy, en-cz, en-de, en-dg, en-dk, en-dm, en-ee, en-eg, en-er, en-es, en-fi, en-fj, en-fk, en-fm, en-fr, en-gb, en-gd, en-gg, en-gh, en-gi, en-gm, en-gs, en-gu, en-gy, en-hk, en-hu, en-id, en-ie, en-il, en-im, en-in, en-io, en-it, en-je, en-jm, en-ke, en-ki, en-kn, en-ky, en-lc, en-lr, en-ls, en-lu, en-mg, en-mh, en-mo, en-mp, en-ms, en-mt, en-mu, en-mv, en-mw, en-mx, en-my, en-na, en-nf, en-ng, en-nl, en-no, en-nr, en-nu, en-nz, en-pg, en-ph, en-pk, en-pl, en-pn, en-pr, en-pt, en-pw, en-ro, en-rw, en-sb, en-sc, en-sd, en-se, en-sg, en-sh, en-si, en-sk, en-sl, en-ss, en-sx, en-sz, en-tc, en-th, en-tk, en-tn, en-to, en-tt, en-tv, en-tz, en-ug, en-um, en-us, en-vc, en-vg, en-vi, en-vn, en-vu, en-ws, en-za, en-zm, en-zw, eo, eo-001, es, es-419, es-ar, es-bo, es-br, es-bz, es-cl, es-co, es-cr, es-cu, es-do, es-ea, es-ec, es-es, es-gq, es-gt, es-hn, es-ic, es-mx, es-ni, es-pa, es-pe, es-ph, es-pr, es-py, es-sv, es-us, es-uy, es-ve, et, et-ee, eu, eu-es, ewo, ewo-cm, fa, fa-af, fa-ir, ff, ff-bf, ff-cm, ff-gh, ff-gm, ff-gn, ff-gw, ff-lr, ff-mr, ff-ne, ff-ng, ff-sl, ff-sn, fi, fi-fi, fil, fil-ph, fj, fo, fo-dk, fo-fo, fr, fr-be, fr-bf, fr-bi, fr-bj, fr-bl, fr-ca, fr-cd, fr-cf, fr-cg, fr-ch, fr-ci, fr-cm, fr-dj, fr-dz, fr-fr, fr-ga, fr-gf, fr-gn, fr-gp, fr-gq, fr-ht, fr-km, fr-lu, fr-ma, fr-mc, fr-mf, fr-mg, fr-ml, fr-mq, fr-mr, fr-mu, fr-nc, fr-ne, fr-pf, fr-pm, fr-re, fr-rw, fr-sc, fr-sn, fr-sy, fr-td, fr-tg, fr-tn, fr-vu, fr-wf, fr-yt, frr, frr-de, fur, fur-it, fy, fy-nl, ga, ga-gb, ga-ie, gaa, gaa-gh, gd, gd-gb, gl, gl-es, gn, gsw, gsw-ch, gsw-fr, gsw-li, gu, gu-in, guz, guz-ke, gv, gv-im, ha, ha-gh, ha-ne, ha-ng, haw, haw-us, he, he-il, hi, hi-in, hmn, ho, hr, hr-ba, hr-hr, hsb, hsb-de, ht, ht-ht, hu, hu-hu, hy, hy-am, hz, ia, ia-001, id, id-id, ie, ie-ee, ig, ig-ng, ii, ii-cn, ik, io, is, is-is, it, it-ch, it-it, it-sm, it-va, iu, ja, ja-jp, jgo, jgo-cm, jmc, jmc-tz, jv, jv-id, ka, ka-ge, kab, kab-dz, kam, kam-ke, kar, kde, kde-tz, kea, kea-cv, kg, kgp, kgp-br, kh, khq, khq-ml, ki, ki-ke, kj, kk, kk-kz, kkj, kkj-cm, kl, kl-gl, kln, kln-ke, km, km-kh, kn, kn-in, ko, ko-cn, ko-kp, ko-kr, kok, kok-in, kr, ks, ks-in, ksb, ksb-tz, ksf, ksf-cm, ksh, ksh-de, ku, ku-tr, kv, kw, kw-gb, kxv, kxv-in, ky, ky-kg, la, lag, lag-tz, lb, lb-lu, lg, lg-ug, li, lij, lij-it, lkt, lkt-us, lmo, lmo-it, ln, ln-ao, ln-cd, ln-cf, ln-cg, lo, lo-la, lrc, lrc-iq, lrc-ir, lt, lt-lt, lu, lu-cd, luo, luo-ke, luy, luy-ke, lv, lv-lv, mai, mai-in, mas, mas-ke, mas-tz, mdf, mdf-ru, mer, mer-ke, mfe, mfe-mu, mg, mg-mg, mgh, mgh-mz, mgo, mgo-cm, mh, mi, mi-nz, mk, mk-mk, ml, ml-in, mn, mn-mn, mni, mni-in, mr, mr-in, ms, ms-bn, ms-id, ms-my, ms-sg, mt, mt-mt, mua, mua-cm, my, my-mm, mzn, mzn-ir, na, naq, naq-na, nb, nb-no, nb-sj, nd, nd-zw, nds, nds-de, nds-nl, ne, ne-in, ne-np, ng, nl, nl-aw, nl-be, nl-bq, nl-ch, nl-cw, nl-lu, nl-nl, nl-sr, nl-sx, nmg, nmg-cm, nn, nn-no, nnh, nnh-cm, no, no-no, nqo, nqo-gn, nr, nso, nso-za, nus, nus-ss, nv, ny, nyn, nyn-ug, oc, oc-es, oc-fr, oj, om, om-et, om-ke, or, or-in, os, os-ge, os-ru, pa, pa-in, pa-pk, pcm, pcm-ng, pi, pis, pis-sb, pl, pl-pl, prg, prg-001, ps, ps-af, ps-pk, pt, pt-ao, pt-br, pt-ch, pt-cv, pt-gq, pt-gw, pt-lu, pt-mo, pt-mz, pt-pt, pt-st, pt-tl, qu, qu-bo, qu-ec, qu-pe, raj, raj-in, rm, rm-ch, rn, rn-bi, ro, ro-md, ro-ro, rof, rof-tz, ru, ru-by, ru-kg, ru-kz, ru-md, ru-ru, ru-ua, rw, rw-rw, rwk, rwk-tz, sa, sa-in, sah, sah-ru, saq, saq-ke, sat, sat-in, sbp, sbp-tz, sc, sc-it, sd, sd-in, sd-pk, se, se-fi, se-no, se-se, seh, seh-mz, ses, ses-ml, sg, sg-cf, shi, shi-ma, si, si-lk, sk, sk-sk, sl, sl-si, sm, smn, smn-fi, sms, sms-fi, sn, sn-zw, so, so-dj, so-et, so-ke, so-so, sq, sq-al, sq-mk, sq-xk, sr, sr-ba, sr-cs, sr-me, sr-rs, sr-xk, ss, st, st-ls, st-za, su, su-id, sv, sv-ax, sv-fi, sv-se, sw, sw-cd, sw-ke, sw-tz, sw-ug, sy, syr, syr-iq, syr-sy, szl, szl-pl, ta, ta-in, ta-lk, ta-my, ta-sg, te, te-in, teo, teo-ke, teo-ug, tg, tg-tj, th, th-th, ti, ti-er, ti-et, tk, tk-tm, tl, tn, tn-bw, tn-za, to, to-to, tok, tok-001, tr, tr-cy, tr-tr, ts, tt, tt-ru, tw, twq, twq-ne, ty, tzm, tzm-ma, ug, ug-cn, uk, uk-ua, ur, ur-in, ur-pk, uz, uz-af, uz-uz, vai, vai-lr, ve, vec, vec-it, vi, vi-vn, vmw, vmw-mz, vo, vo-001, vun, vun-tz, wa, wae, wae-ch, wo, wo-sn, xh, xh-za, xnr, xnr-in, xog, xog-ug, yav, yav-cm, yi, yi-001, yi-ua, yo, yo-bj, yo-ng, yrl, yrl-br, yrl-co, yrl-ve, yue, yue-cn, yue-hk, yue-mo, za, za-cn, zgh, zgh-ma, zh, zh-cn, zh-hans, zh-hant, zh-hk, zh-mo, zh-my, zh-sg, zh-tw, zu, zu-za
linkedinstringRequired within parentURL to the blog author's LinkedIn page.
namestringRequired within parentThe name field for the blog author. (This appears to be a shorter or alternative name field compared to fullName.)
slugstringRequired within parentA URL-friendly identifier for the blog author that can be used to reference the author in URLs. Typically generated from the author's name and contains lowercase letters, hyphens, and underscores.
translatedFromIdintegerRequired within parentID of the primary blog author this object was translated from.
Format: int64
twitterstringRequired within parentURL or username of the Twitter account associated with the Blog Author. This will be normalized into the Twitter url for said user.
updatedstringRequired within parentThe timestamp (ISO8601 format) when this Blog Author was updated.
Format: date-time
websitestringRequired within parentURL to the website of the Blog Author.
Batch insert events — response body — errors item errors item
FieldTypePresenceDescription and constraints
$objectRootRepresents detailed information about an error that occurred in the API. This component is used to provide additional context and specifics about errors, typically as part of an error response.
codestringOptionalThe status code associated with the error detail
contextobjectOptionalContext about the error condition
Additional keys: see wildcard field
context.*arrayAdditional keys
context.*[]stringEach item
instringOptionalThe name of the field or parameter in which the error was found.
messagestringRequired within parentA human readable message describing the error along with remediation steps where appropriate
subCategorystringOptionalA specific category that contains more specific detail about the error

SDK function policy ID: hubspot.blog_authors_batch_create_authors. Catalog operation: blog_authors_batch_create_authors. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

Required provider scopes: ["content"]

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.