contentstack-javascript-marketplace

作者: contentstack

Marketplace SDK的心智模型——客户端工厂、组织级市场API、认证、区域、模块映射

npx skills add https://github.com/contentstack/contentstack-marketplace-sdk --skill contentstack-javascript-marketplace

Contentstack JavaScript Marketplace SDK

Mental model

  1. contentstack.client(options) (lib/contentstack.js) creates an axios-based HTTP client pointed at the Developer Hub host (via @contentstack/utils + region), then wraps it with contentstackClient (lib/contentstackClient.js).
  2. Auth: Pass authtoken and/or authorization, or call login to set authtoken on shared axios defaults. Optional refreshToken callback supports rotation.
  3. Marketplace entry: client.marketplace(organization_uid) returns lib/marketplace/index.js — apps (app(), findAllApps, …), installations, hosting/deployments, webhooks, OAuth under app/oauth, authorization helpers, app requests.

Where to change things

ConcernPrimary paths
Client defaults, User-Agent, region → hostlib/contentstack.js, lib/core/region.js
Login / logout / marketplace rootlib/contentstackClient.js
Axios, retries (429), timeout, query encodinglib/core/contentstackHTTPClient.js
Request queuinglib/core/concurrency-queue.js
Error shapelib/core/contentstackError.js
Marketplace resourceslib/marketplace/**/*.js
Public TypeScript typestypes/**/*.d.ts

Docs alignment

Describe behavior against Contentstack Marketplace / Developer Hub APIs. Do not document this package as CDA. Mention CMA-style tokens only when describing authtoken / management-style auth accurately.

Integration reminder

Downstream apps use @contentstack/marketplace-sdk with import contentstack from '@contentstack/marketplace-sdk' (see README). The built main field points to dist/node/... — edit lib/ and run npm run build for distributable changes.