framework

Pile HTTP pour marketplace-sdk — wrapper Axios, tentatives, concurrence, sérialisation des paramètres, hook de journalisation

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

HTTP framework (lib/core)

This repo separates domain (lib/marketplace/**) from a small HTTP framework in lib/core/. Use this skill when changing transport behavior.

contentstackHTTPClient.js

  • Builds an axios instance with baseURL from endpoint or protocol://hostname:port + basePath.
  • Defaults: timeout 30000, retryOnError true, retryCondition retries 429 (overridable).
  • Headers: Maps apiKey / accessToken from config if present.
  • Params: Custom paramsSerializer using Qs; nests JSON query with encodeURIComponent.
  • Concurrency: Attaches ConcurrencyQueue to the instance.
  • Logging: logHandler default from messageHandler.js (httpLogHandler).

concurrency-queue.js

  • Limits parallel in-flight requests (maxRequests from client params). Changes here affect all API modules sharing the same HTTP instance.

messageHandler.js

  • Central place for HTTP log/telemetry hooks. Keep implementations safe for browsers and Node bundles.

When to edit

  • Retry/backoff policy, timeout, or serializer → prefer extending existing options on client() rather than one-off axios calls in marketplace modules.
  • New global header behavior → contentstack.js + potentially contentstackHTTPClient.js for low-level concerns.

Testing

  • test/unit/ContentstackHTTPClient-test.js and concurrency-Queue-test.js should cover behavioral changes; use mocks rather than live HTTP when possible.

Plus de skills de contentstack

brand-kit-assistant
contentstack
Advise users on Contentstack Brand Kit concepts, setup, governance, and on-brand AI generation. Route API-specific tasks to the right Brand Kit capability or…
official
cms-assets
contentstack
Conseiller les développeurs sur l'organisation, la livraison et la transformation des assets dans Contentstack. Couvrir la structure des dossiers, les transformations de l'API de livraison d'images, la publication…
official
cms-branches-aliases
contentstack
Advise developers on using Contentstack branches for isolated content development and aliases for zero-downtime content deployments. Cover branch strategy,…
official
cms-data-modeling-best-practices
contentstack
Guidez les développeurs pour modéliser le contenu dans Contentstack en utilisant la structure réutilisable la plus simple. La compétence explique quand utiliser les types de contenu, les références, les éléments globaux…
official
cms-entries
contentstack
Advise developers on querying, localizing, versioning, publishing, and structuring Contentstack entries for efficient delivery. Focus on CDA usage, reference…
official
cms-environments-publishing
contentstack
Conseiller les développeurs sur la configuration des environnements, la publication de contenu, l'utilisation des jetons de livraison et d'aperçu, l'exploitation de l'API Sync, et la compréhension du CDN et…
official
cms-live-preview-visual-builder-support-assistant
contentstack
Diagnose and guide Contentstack Live Preview and Visual Builder implementations. Trace preview context, identify the broken contract, and recommend the…
official
cms-localization
contentstack
Advise developers on Contentstack localization: language setup, fallback chains, localized vs unlocalized entries, non-localizable fields, and multi-locale…
official