Techsy
Kontakt
Začít
Zpět na blog
web-development

Integrace HubSpot API pro vlastní interní nástroje: Průvodce Node + Python (2026)

Napsal Mert Batur Gürbüz
Jul 22, 2026
13 minut čtení
Obsah
Integrace HubSpot API pro vlastní interní nástroje: Průvodce Node + Python (2026)

Integrace HubSpot API pro vlastní interní nástroje: Průvodce Node + Python (2026)

Stále hledáte klíč HubSpot API, abyste propojili svou integraci HubSpot API? Přestaňte hledat. HubSpot ukončil podporu statických klíčů API 30. listopadu 2022 a aktuální Node SDK (@hubspot/api-client, nyní ve verzi 14) by ho stejně nepřijalo. Správným pověřením pro interní nástroj pracující s jedním účtem je přístupový token soukromé aplikace (private app access token) a tento průvodce vás provede vytvořením skutečné synchronizace mezi HubSpotem a interním nástrojem jak v Node, tak v Pythonu – od vašeho prvního volání create contact až po webhook s ověřeným podpisem.

Rychlá odpověď: Integrace HubSpot API umožňuje vlastnímu internímu nástroji číst a zapisovat data CRM prostřednictvím REST API v3 od HubSpotu. Pro interní nástroj pracující s jedním účtem se autentizujte pomocí přístupového tokenu soukromé aplikace (HubSpot vyřadil klíče API v roce 2022) a poté synchronizujte změny v reálném čase pomocí webhooků místo periodického dotazování (pollingu).

Zde je to, co vytvoříte:

  • Autentizaci tokenem soukromé aplikace plus vaše první volání create contact v Node a Pythonu
  • Příjemce webhooků, který před důvěrou v payload ověří hlavičku X-HubSpot-Signature-v3
  • Synchronizaci odolnou vůči chybě 429, která dávkově zpracovává 100 záznamů do interního ticketovacího systému nebo ERP

Jak funguje integrace HubSpot API pro vlastní interní nástroje?

Integrace HubSpot API propojuje vlastní interní nástroj (aplikaci pro ticketing, ERP, dashboard pro fakturaci, zákaznický portál) s CRM systému HubSpot prostřednictvím jeho REST API v3. Váš nástroj čte a zapisuje objekty CRM (kontakty, obchody, společnosti nebo vlastní objekty) přes HTTPS pomocí přístupového tokenu soukromé aplikace a změny v reálném čase proudí zpět prostřednictvím webhooků.

Představte si CRM HubSpotu jako databázi, se kterou komunikujete přes HTTP. Každý záznam je objekt s typem a ID. hubspot crm api integration, kterou budujete, plní dvě úlohy: posílá data do HubSpotu (vytvoří kontakt při otevření ticketu) a čte data z něj (načte obchod, když se vykreslí váš interní dashboard).

Synchronizace běží jedním ze dvou směrů. Jednosměrná synchronizace kopíruje změny z HubSpotu do vašeho nástroje nebo z vašeho nástroje do HubSpotu. Obousměrná synchronizace dělá obojí a potřebuje ochranu proti cyklům, které probereme později. A místo toho, abyste se HubSpotu každou minutu ptali „je něco nového?“ (polling), zaregistrujete webhook, takže vám HubSpot oznámí změnu záznamu okamžitě.

Pokud byste raději vlastnili svá data zcela sami, než integrovali hostované CRM, self-hosting open-source CRM je jiná cesta, kterou stojí za to zvážit, než se zavážete. Ale pokud je HubSpot již vaším jediným zdrojem pravdy, API je způsob, jakým s ním komunikuje vše ostatní.

Pro interní nástroj pracující s jedním účtem nepotřebujete OAuth ani listing v marketplace aplikací. Token soukromé aplikace a webhook představují celou integraci.

Autentizace v roce 2026: Proč již neexistuje klíč HubSpot API

Pro autentizaci HubSpot API u interního nástroje pracujícího s jedním účtem použijte přístupový token soukromé aplikace. Je to statický bearer token, který vygenerujete jednou ve svém účtu HubSpot a je scopedován přesně na objekty, kterých se váš nástroj dotýká. Neexistuje žádný refresh flow ani expirace. OAuth existuje pro veřejné aplikace pro více účtů, nikoli pro dashboard, který váš operační tým provozuje interně.

Token soukromé aplikace versus zastaralý klíč API

Zde je nástraha, která zachytí polovinu vývojářů, kteří narazí na tento výsledek vyhledávání. HubSpot ukončil podporu klíčů API 30. listopadu 2022 a nyní jsou zcela nepodporované. Automatické doplňování stále navrhuje „hubspot api key“, protože svalová paměť nestihla tempo, ale není žádný klíč k získání. Sáhněte po soukromé aplikaci hubspot: vytvořte ji v Nastavení, udělte jí potřebné scope a zkopírujte přístupový token z karty Auth. Přehled soukromých aplikací HubSpotu pokrývá nastavení.

MetodaPřípad použitíExpirace nebo refresh?Nejlepší pro
Klíč APIOdstraněnoUkončeno listopad 2022Nic, je zastaralé
Přístupový token soukromé aplikaceInterní nástroj pro jeden účetNe, statický, bez refreshVáš interní nástroj, zde výchozí volba
OAuth 2.0Veřejná aplikace nebo pro více účtůAno, tokeny expirují přibližně za 6 hodin a potřebují refreshAplikace, které uvádíte pro portály jiných společností
Service Key (veřejná beta, únor 2026)Pověření pouze pro data na úrovni účtuScopedováno na účet, dle dokumentaceServerové úlohy pouze pro data, stále beta

Dvě pravidla pro samotný token. Udělte nejmenší nezbytná oprávnění: pokud váš nástroj pouze čte obchody a zapisuje kontakty, vyžádejte si crm.objects.contacts.write a crm.objects.deals.read, nic víc. A token uchovávejte v proměnné prostředí nebo ve správci tajných klíčů, posílaný v hlavičce Authorization: Bearer, nikdy hardcoded a nikdy odesílaný do prohlížeče.

Verdikt je jednoduchý. Pro interní nástroj použijte přístupový token soukromé aplikace. Po OAuth sáhněte pouze v případě, že se z toho později stane veřejná aplikace pro více účtů, kterou si jiné společnosti instalují do svých portálů.

Vaše první volání HubSpot API: Vytvoření kontaktu v Node a Pythonu

Kanonickým prvním voláním je create contact a oficiální SDK z něj dělají několik řádků kódu. Nainstalujte klienta, inicializujte jej pomocí svého přístupového tokenu soukromé aplikace z prostředí, poté vytvořte kontakt a načtěte zpět obchod. Toto je stejný vzor, který znovu použijete pro společnosti, tickety a volání hubspot custom objects api, mění se pouze typ objektu.

Zde je verze pro Node s @hubspot/api-client (v14):

javascript
// npm i @hubspot/api-client   (v14.x)
import { Client } from "@hubspot/api-client";

// Private app token from a secret manager or env var, never hard-coded
const hubspot = new Client({ accessToken: process.env.HUBSPOT_PRIVATE_APP_TOKEN });

// Create a contact
const { id } = await hubspot.crm.contacts.basicApi.create({
  properties: {
    email: "[email protected]",
    firstname: "Ada",
    lastname: "Lovelace",
    lifecyclestage: "lead",
  },
  associations: [],
});
console.log("Created contact", id);

// Read a deal by ID
const deal = await hubspot.crm.deals.basicApi.getById(
  "1234567890",
  ["dealname", "amount", "dealstage"],
);
console.log(deal.properties.dealname, deal.properties.amount);

A totéž v Pythonu s hubspot-api-client (v12):

python
# pip install hubspot-api-client   (v12.x)
import os
from hubspot import HubSpot
from hubspot.crm.contacts import SimplePublicObjectInputForCreate

# Private app token from the environment, not source control
client = HubSpot(access_token=os.environ["HUBSPOT_PRIVATE_APP_TOKEN"])

# Create a contact
contact = client.crm.contacts.basic_api.create(
    simple_public_object_input_for_create=SimplePublicObjectInputForCreate(
        properties={
            "email": "[email protected]",
            "firstname": "Ada",
            "lastname": "Lovelace",
            "lifecyclestage": "lead",
        }
    )
)
print("Created contact", contact.id)

# Read a deal by ID
deal = client.crm.deals.basic_api.get_by_id(
    deal_id="1234567890",
    properties=["dealname", "amount", "dealstage"],
)
print(deal.properties["dealname"], deal.properties["amount"])

Profesionální tip: testujte proti vývojářskému sandboxu HubSpotu, nikdy nejprve na produkci. Špatně formulované volání create na produkci zanechá skutečné odpadkové záznamy, které musí váš obchodní tým čistit. Token, scope a model objektů se v sandboxu chovají identicky.

Jak synchronizovat HubSpot s interním nástrojem v reálném čase?

Použijte webhooky, ne polling. Zaregistrujte odběr webhooku ve své soukromé aplikaci pro objekt a událost, která vás zajímá (například deal.propertyChange), nasměrujte jej na endpoint HTTPS, který hostujete, a HubSpot vám okamžitě po změně pošle malé JSON pole. Používejte polling pouze tehdy, když neexistuje odběr pro to, co potřebujete sledovat.

Odměnou je efektivita. Polling se každou minutu ptá „je něco nového?“ a při tom spaluje váš limit rychlosti; webhook vám jen řekne v okamžiku, kdy se obchod změní. Tento rozdíl má význam ve velkém měřítku a webhooky jsou nyní mainstreamem, nikoli exotikou: Zpráva o stavu API za rok 2025 od Postmanu, průzkum více než 5 700 vývojářů, zjistila, že na ně spoléhá přibližně polovina týmů.

Zaregistrujte odběr na kartě Webhooks vaší soukromé aplikace, nastavte cílovou URL a vyberte události. HubSpot odešle pole objektů událostí, každý nese subscriptionType, objectId a informace o tom, co se změnilo. Zde je kostra přijímače v Node s Expressem:

javascript
import express from "express";

const app = express();
// Capture the raw body: you need the exact bytes to validate the signature next
app.use(express.json({
  verify: (req, _res, buf) => { req.rawBody = buf.toString("utf8"); },
}));

// HubSpot POSTs an array of events to this URL
app.post("/webhooks/hubspot", (req, res) => {
  const events = req.body; // [{ subscriptionType: "deal.propertyChange", objectId: 1234, ... }]
  for (const event of events) {
    console.log("HubSpot event:", event.subscriptionType, event.objectId);
    // Do NOT trust this payload yet. The next section validates it before we act.
  }
  res.sendStatus(200);
});

app.listen(3000, () => console.log("Listening on :3000"));

Zde se průvodce stává reálným. Řekněme, že synchronizujete obchod do záznamu ERP malého výrobce: webhook se spustí, váš handler vytvoří nebo aktualizuje odpovídající ticket v ERP a váš operační tým vidí změnu, aniž by sahal do HubSpotu. Je to stejný přístup v reálném čase, který používáme k synchronizaci hlasového agenta s CRM, pouze triggerem je změna vlastnosti místo telefonního hovoru. Jedno varování: výše uvedená kostra věří všemu, co je na ni POSTováno. Opravte to, než přejdete na live provoz.

Ověřování podpisů webhooků (v3), abyste nikdy nedůvěřovali padělanému payloadu

Ověřte každý příchozí webhook pomocí podpisu v3. HubSpot podepisuje každý požadavek tajným klíčem vaší aplikace a odesílá dvě hlavičky, X-HubSpot-Signature-v3 a X-HubSpot-Request-Timestamp. Odmítněte vše starší než 5 minut, znovu sestavte zdrojový řetězec jako metoda + celá URL + raw body + timestamp, aplikujte HMAC-SHA256 s tajným klíčem aplikace, zakódujte base64 a porovnejte v konstantním čase.

Pokud toto přeskočíte, kdokoli, kdo uhodne URL vašeho webhooku, může padělat aktualizaci obchodu. Validace není volitelná. Dokumentace HubSpotu validating requests doc a changelog podpisů v3 přesně popisují recept. Zde je jako middleware pro Express ready-to-use:

javascript
import crypto from "crypto";

const CLIENT_SECRET = process.env.HUBSPOT_APP_SECRET; // from your private app settings
const MAX_AGE_MS = 5 * 60 * 1000; // reject anything older than 5 minutes

export function validateHubSpotSignature(req, res, next) {
  const signature = req.header("X-HubSpot-Signature-v3");
  const timestamp = req.header("X-HubSpot-Request-Timestamp");

  // 1. Reject stale requests (replay protection)
  if (!signature || !timestamp || Date.now() - Number(timestamp) > MAX_AGE_MS) {
    return res.sendStatus(401);
  }

  // 2. Rebuild the exact source string: method + full URL + raw body + timestamp
  const uri = `https://${req.get("host")}${req.originalUrl}`;
  const source = `${req.method}${uri}${req.rawBody}${timestamp}`;

  // 3. HMAC-SHA256 with the app secret, base64-encoded
  const hash = crypto
    .createHmac("sha256", CLIENT_SECRET)
    .update(source, "utf8")
    .digest("base64");

  // 4. Constant-time compare against the header
  const expected = Buffer.from(hash);
  const received = Buffer.from(signature);
  if (expected.length !== received.length ||
      !crypto.timingSafeEqual(expected, received)) {
    return res.sendStatus(401);
  }
  next();
}

Stejná kontrola jako funkce v Pythonu, aby byly pokryty obě stacky:

python
import base64
import hashlib
import hmac
import os
import time

CLIENT_SECRET = os.environ["HUBSPOT_APP_SECRET"].encode("utf-8")
MAX_AGE_MS = 5 * 60 * 1000  # 5 minutes

def is_valid_signature(method, uri, body, signature, timestamp):
    # 1. Reject stale requests
    if not signature or not timestamp:
        return False
    if int(time.time() * 1000) - int(timestamp) > MAX_AGE_MS:
        return False

    # 2. method + full URL + raw body + timestamp
    source = f"{method}{uri}{body}{timestamp}".encode("utf-8")

    # 3. HMAC-SHA256, base64
    digest = hmac.new(CLIENT_SECRET, source, hashlib.sha256).digest()
    expected = base64.b64encode(digest).decode("utf-8")

    # 4. Constant-time compare
    return hmac.compare_digest(expected, signature)

Nástraha, která lidi stojí celé odpoledne: HubSpot podepisuje celou cílovou URL, schéma, hostitel a cestu dohromady. Za proxy, load balancerem nebo tunelem ngrok může req.get("host") hlásit interního hostitele místo veřejného, který HubSpot podepsal. Pokud validace stále selhává u payloadu, o kterém jste si jisti, že je legitimní, zalogujte přesnou URI, kterou jste znovu sestavili, a porovnejte ji znak po znaku s vaší veřejnou URL webhooku.

Limity rychlosti, chyby 429 a Batch API: Co jsme provozovali v produkci

Soukromé aplikace získávají přibližně 10 požadavků za sekundu (100 za 10 sekund na Free/Starter, 190 za 10 sekund na Pro/Enterprise) s denním limitem mezi 250 000 a 1 000 000. Past: CRM Search je samostatně limitován na 4 požadavky za sekundu a batch endpointy přijímají maximálně 100 záznamů na požadavek. Pokyny pro využití od HubSpotu uvádějí tierové sazby.

TierZa 10 sZa sekunduDenní limitPoznámky
Free / Starter (soukromá aplikace)100~10250 000CRM Search samostatně limitován na 4 req/s
Pro / Enterprise (soukromá aplikace)190~19až 1 000 000Batch endpointy max 100 záznamů na požadavek

Zde se teorie střetla s červeným stagingovým dashboardem. Během backfillu této jaro jsme nahráli přibližně 8 000 existujících záznamů do HubSpotu z interního ticketovacího nástroje a obohatili každý z nich vyhledáváním v CRM Search. Na straně Node jsme běželi @hubspot/api-client v14 a pro Python enrichment worker hubspot-api-client v12. Hromadné zápisy byly v pořádku. Volání Search se zhroutila během minuty, protože náš worker střílel Search přibližně 15 req/s proti tvrdému stropu 4 req/s, který jsme samostatně nezapočítali.

Dvě změny to opravily. Zaprvé, wrapper pro retry, který čte response hlavičky X-HubSpot-RateLimit-* a při chybě 429 ustupuje:

javascript
// Wrap any HubSpot call; retries on 429 with exponential backoff
async function withRetry(fn, maxRetries = 5) {
  let attempt = 0;
  while (true) {
    try {
      return await fn();
    } catch (err) {
      const status = err.code ?? err.response?.status;
      if (status !== 429 || attempt >= maxRetries) throw err;

      // Honor HubSpot's reset window if the header is present
      const headers = err.response?.headers ?? {};
      const resetMs = Number(headers["x-hubspot-ratelimit-interval-milliseconds"]) || 0;
      const backoff = Math.max(resetMs, 2 ** attempt * 500); // 0.5s, 1s, 2s, 4s...

      console.warn(`429 hit, retry ${attempt + 1} in ${backoff}ms`);
      await new Promise((r) => setTimeout(r, backoff));
      attempt++;
    }
  }
}

Zadruhé, přestali jsme zapisovat záznamy jeden po druhém. Batch endpoint přijímá až 100 záznamů na POST /crm/v3/objects/{objectType}/batch/create, takže jsme backfill rozdělili do 80 batch volání místo 8 000 jednotlivých POSTů:

javascript
// HubSpot batch endpoints accept at most 100 records per request
function chunk(arr, size = 100) {
  const out = [];
  for (let i = 0; i < arr.length; i += size) out.push(arr.slice(i, i + size));
  return out;
}

// POST /crm/v3/objects/contacts/batch/create, chunked to 100 at a time
async function batchCreateContacts(records) {
  for (const group of chunk(records, 100)) {
    const inputs = group.map((r) => ({
      properties: { email: r.email, firstname: r.firstName, lastname: r.lastName },
      associations: [],
    }));
    await withRetry(() => hubspot.crm.contacts.batchApi.create({ inputs }));
    console.log(`Wrote ${group.length} contacts`);
  }
}

Omezení workeru Search na 4 req/s a dávkování zápisů proměnilo běh, který se topil v retryích, v ten, který tiše dokončil. Pokud si z této sekce zapamatujete jedno číslo, ať je to 4: limit CRM Search je ten, který v produkci bolí, a je to ten, na který každý souhrnný článek zapomíná zmínit. Starý strop „10 pro kontakty“ mimochodem již neplatí; aktuální je 100 napříč typy objektů.

Jdeme na obousměrnou synchronizaci: Zápis změn zpět do HubSpotu bez nekonečných cyklů

Obousměrná synchronizace zapisuje změny zpět do HubSpotu z vašeho interního nástroje stejně jako je čte. Nebezpečím je zpětná vazba: váš zápis zpět spustí přesně ten webhook, který vyvolal váš handler, který opět zapisuje, navždy. Zabraňte tomu pomocí klíče idempotence (přeskočte změny, které jste již aplikovali) a flagu zdroje (ignorujte příchozí události způsobené vaším vlastním nástrojem).

javascript
const processed = new Set(); // use Redis or a unique DB constraint in production

async function writeBackToHubSpot(record) {
  // Dedup key: object id + a hash of the change we're about to apply
  const key = `${record.id}:${record.updatedHash}`;
  if (processed.has(key)) return; // already synced this exact change
  processed.add(key);

  await withRetry(() =>
    hubspot.crm.contacts.basicApi.update(record.id, {
      // Tag the source so the resulting webhook is ignored by our own receiver
      // (check for source: "internal-tool" before acting on an inbound event)
      properties: { internal_status: record.status, last_sync_source: "internal-tool" },
    })
  );
}

Vzor je malý, ale jeho přeskočení je způsob, jak synchronizace potichu zdvojnásobí objem zápisů přes noc. Jakmile jsou data čistá v obou směrech, týmy je často posílají downstream do pipeline AI SDR nebo reportingové vrstvy. Tutorial integrace HubSpot od Nango je solidní reference pouze pro Node, pokud chcete druhý pohled na obousměrnou synchronizaci, i když myšlenku prevence cyklů si budete muset přeportovat sami.

Měli byste to budovat interně, nebo najmout integračního partnera?

Budujte interně, když je synchronizace malá, stabilní a vlastněná: jednosměrný tok, handful objektů a inženýr, který dokáže absorbovat breaking changes HubSpotu přibližně dvakrát ročně. Najměte partnera, když potřebujete obousměrnou synchronizaci, modelování vlastních objektů, nebo když nikdo v týmu nemůže vlastnit průběžnou údržbu. Rozhodujícím faktorem málokdy je počáteční build; je to tím, kdo se na to bude dívat za rok.

Zde je upřímný checklist. Postavte si to sami, pokud: směr je jednosměrný, synchronizujete standardní objekty, máte vývojáře, který může hostovat endpoint webhooku, a někdo si všimne, když payload začne selhávat. Vše výše je vaším blueprintem.

Najměte partnera, pokud: potřebujete obousměrnou synchronizaci s prevencí cyklů napříč několika objekty, modelujete vlastní objekty s typed associations, propojujete více systémů (HubSpot plus ERP plus fakturace), nebo osoba, která by to udržovala, je již na kapacitním maximu. HubSpot používá verzování API založené na datech s breaking changes pouze asi dvakrát ročně, což zní mírně, dokud jedno nedorazí během vašeho nejvytíženějšího týdne a není žádný vlastník. Tato ocasní údržba, nikoli první deploy, je to, co potichu potápí interní integrace. Pokud si to raději nevlastníte, zde přichází naše služby vlastního CRM integrace.

Klíčová zjištění

  • Klíč HubSpot API již neexistuje. Pro interní nástroj s jedním účtem použijte přístupový token soukromé aplikace; OAuth je pouze pro veřejné aplikace pro více účtů.
  • Vždy ověřte X-HubSpot-Signature-v3, než důvěřujete payloadu webhooku. Znovu sestavte zdrojový řetězec s celou cílovou URL.
  • Respektujte limit 4 req/s pro CRM Search a velké zápisy dávkuje po 100 s backoffem při chybě 429.
  • Preferujte webhooky před pollingem pro synchronizaci v reálném čase a integrace HubSpotu je jedním dílkem širšího stacku AI nástrojů pro business.

Uvízli jste na straně údržby nebo chcete druhé oko před nasazením? Rezervujte si bezplatnou konzultaci integrace. Žádný tlak žádným směrem; výše uvedený kód je váš ke spuštění bez ohledu na okolnosti.

O autorovi

Mert Batur Gurbuz je spoluzakladatelem Techsy.io, kde tým dodává AI agenty, automatizační systémy a voice/SDR pipeline pro B2B klienty. Studuje na University of Birmingham a píše o LLM tooling stacku, který tým Techsy skutečně používá v produkci. Kredence: Spoluzakladatel, Techsy.io, University of Birmingham. Propojte se na LinkedIn.

Často kladené otázky

Potřebuji v roce 2026 stále klíč HubSpot API?

Ne. HubSpot ukončil podporu statických klíčů API 30. listopadu 2022 a jsou zcela nepodporované. Automatické doplňování stále navrhuje „hubspot api key“ ze zvyku, ale není nic k získání. Pro interní nástroj s jedním účtem vytvořte soukromou aplikaci v Nastavení a použijte její přístupový token.

Jaký je rozdíl mezi tokenem soukromé aplikace a OAuth pro HubSpot?

Přístupový token soukromé aplikace je statické pověření pro jeden účet HubSpot, bez expirace a bez refresh flow, ideální pro interní nástroj. OAuth 2.0 je pro veřejné aplikace pro více účtů, které si jiné společnosti instalují do svých portálů; jeho tokeny expirují přibližně za šest hodin a vyžadují cyklus refresh.

Jaké jsou limity rychlosti API HubSpotu v roce 2026?

Soukromé aplikace získávají přibližně 10 požadavků za sekundu (100 za 10 sekund na Free/Starter, 190 na Pro/Enterprise) s denním limitem 250 000 až 1 000 000. CRM Search API je samostatně limitován na 4 požadavky za sekundu a batch endpointy přijímají maximálně 100 záznamů na požadavek.

Jak ověřím podpis webhooku HubSpotu?

Použijte recept v3: odmítněte požadavky, kde je X-HubSpot-Request-Timestamp starší než pět minut, poté sestavte zdrojový řetězec z metody plus celá cílová URL plus raw body plus timestamp. Aplikujte HMAC-SHA256 s tajným klíčem vaší aplikace, výsledky zakódujte base64 a porovnejte s X-HubSpot-Signature-v3 v konstantním čase.

Které SDK HubSpotu mám použít, Node nebo Python?

Obě jsou oficiální a udržované. Node používá @hubspot/api-client (v14) a Python používá hubspot-api-client (v12). Expozují stejný model objektů CRM v3, takže si vyberte ten, který odpovídá vašemu stacku. Tento průvodce dodává identický kód pro autentizaci a ověřování podpisů v obou jazycích.

Jak synchronizuji HubSpot s vlastním interním nástrojem v reálném čase?

Zaregistrujte odběr webhooku ve své soukromé aplikaci pro objekt a událost, která vás zajímá, poté hostujte endpoint HTTPS, na který HubSpot POSTuje, když dojde k odpovídající změně. Ověřte podpis a poté zapište změnu do svého interního nástroje. Používejte polling pouze tehdy, když žádný odběr webhooku nepokrývá to, co potřebujete.

Co je Service Key HubSpotu a měl bych ho používat?

Service Key je pověření pouze pro data na úrovni účtu, které HubSpot uvedl do veřejné bety v únoru 2026. Je cíleno na serverové úlohy, které pracují pouze s daty. Pro standardní interní nástroj dnes je přístupový token soukromé aplikace stále bezpečnější, lépe zdokumentovanou výchozí volbou; treat Service Keys jako beta, dokud nebudou plně vydány.

Mohu testovat integraci HubSpotu, aniž bych se dotkl produkce?

Ano. Vytvořte vývojářský sandbox HubSpotu a nasměrujte na něj token své soukromé aplikace. Scope, model objektů, webhooky a limity rychlosti se chovají stejně jako v produkci, takže můžete vytvářet testovací kontakty a spouštět webhooky, aniž byste zanechávali odpadkové záznamy, které by váš obchodní team musel později čistit.

Kolik záznamů může batch API HubSpotu přijmout najednou?

Batch endpointy (POST /crm/v3/objects/{objectType}/batch/create a jejich update a upsert sourozenci) přijímají maximálně 100 záznamů na požadavek. Větší payloady rozdělte do skupin po 100. Starý strop „10 záznamů pro kontakty“, který některé tutoriály stále citují, byl odstraněn; 100 je aktuální napříč typy objektů.

Měl bych to budovat interně, nebo najmout agenturu?

Budujte interně, když je synchronizace jednosměrná, používá standardní objekty a má vlastníka, který dokáže absorbovat breaking changes HubSpotu dvakrát ročně. Najměte partnera pro obousměrnou synchronizaci, modelování vlastních objektů, nebo když nikdo nemůže vlastnit údržbu. První deploy je snadný; rok údržby po něm je skutečná cena.

Štítky

integrace hubspot apitoken soukromé aplikace hubspotwebhooky hubspotnodepython

Sdílet článek

Související články

Více z kategorie web-development

web-development
Jun 20, 2026

12 alternativ k Salesforce pro malé firmy (2026) – včetně 8, které jinde nenajdete

Nestranný přehled 12 alternativ k Salesforce pro malé firmy s ověřenými cenami pro rok 2026, rozhodovacím tokem podle scénářů nákupu a upřímnou sekcí o tom, kdo by měl u Salesforce zůstat.

11 min read minut čtení
Číst
web-development
Jun 13, 2026

7 nejlepších open source CRM pro startupy (self-hosted, testováno 2026)

Nainstalovali jsme 7 open source CRM na skutečný VPS a seřadili je podle hvězdiček na GitHubu, licence, API a možností rozšíření v kódu. Twenty, EspoCRM, SuiteCRM, Odoo, Krayin a další porovnání pro startupy v roce 2026.

14 min read minut čtení
Číst
web-development
Jun 13, 2026

7 nejlepších výrobních ERP systémů pro malé firmy (2026, bez marketingových řečí)

Přerůstli jste tabulky a QuickBooks? Porovnáváme 7 výrobních ERP systémů pro malé dílny se skutečnými cenami v USD pro rok 2026, rozhodovací tabulkou podle profilu firmy a upřímnými signály, kdy opravdu potřebujete vlastní vývoj. Žádný zájem prodejců.

14 min read minut čtení
Číst
Zobrazit všechny články
Začněte svůj projekt

Pojďme něco postavit nevšedního?

Proměňme vaši vizi ve skutečnost. Náš tým je připraven vám pomoct vytvořit software, který dělá rozdíl.

Rezervovat 30minutový úvodní hovorNaše projekty

Než z knihovny

Claude dovednosti

Zobrazit vše
  • New Post

    Full SEO blog pipeline: research, brief, write, validate, image, translate, publish to Sanity. Autonomous from start to finish.

  • Content Refresh

    Audit a stale post, find decay drivers, and ship a SERP-aligned refresh without losing existing rankings.

  • SEO Audit

    Site-wide SEO audit with prioritized fix list: technical, on-page, and EEAT signals.

AI automatizace

Zobrazit vše
  • Security Auditor

    Weekly SCA + IaC scan with prioritized fix PRs.

  • Cold Email Writer

    Generates first-touch emails grounded in one specific public detail.

  • Lead Research Agent

    Enrich an email into a profile, score fit, alert in Slack.

Než z knihovny

Claude dovednosti

Zobrazit vše
  • New Post

    Full SEO blog pipeline: research, brief, write, validate, image, translate, publish to Sanity. Autonomous from start to finish.

  • Content Refresh

    Audit a stale post, find decay drivers, and ship a SERP-aligned refresh without losing existing rankings.

  • SEO Audit

    Site-wide SEO audit with prioritized fix list: technical, on-page, and EEAT signals.

AI automatizace

Zobrazit vše
  • Security Auditor

    Weekly SCA + IaC scan with prioritized fix PRs.

  • Cold Email Writer

    Generates first-touch emails grounded in one specific public detail.

  • Lead Research Agent

    Enrich an email into a profile, score fit, alert in Slack.

Služby

  • Podniková řešení
  • Mobilní aplikace
  • Webové aplikace

Řešení

  • CRM systémy
  • Integrace AI
  • ERP systémy
  • Hlasoví agenti
  • Automatizace procesů
  • Kybernetická bezpečnost

Knihovna

  • Blog
  • Reference

Komunita

  • AI automatizace
  • Claude dovednosti

Nástroje

  • Kalkulátor ceny mobilní aplikace
  • Kalkulátor ceny OpenAI / LLM API
  • Kalkulátor ceny MVP
  • Kalkulátor ceny hlasového AI agenta

Společnost

  • O projektu
  • Partneři
  • Kontakt

Právní informace

  • Zásady ochrany osobních údajů
  • Podmínky poskytování služeb
  • Zásady používání cookies

Služby

  • Podniková řešení
  • Mobilní aplikace
  • Webové aplikace

Řešení

  • CRM systémy
  • Integrace AI
  • ERP systémy
  • Hlasoví agenti
  • Automatizace procesů
  • Kybernetická bezpečnost

Knihovna

  • Blog
  • Reference

Komunita

  • AI automatizace
  • Claude dovednosti

Nástroje

  • Kalkulátor ceny mobilní aplikace
  • Kalkulátor ceny OpenAI / LLM API
  • Kalkulátor ceny MVP
  • Kalkulátor ceny hlasového AI agenta

Společnost

  • O projektu
  • Partneři
  • Kontakt
Právní informaceZásady ochrany osobních údajůPodmínky poskytování služebZásady používání cookies
TECHSY
© 2026 Techsy. Všechna práva vyhrazena.