{"_id":"@burdenoff/adaptercloud-sdk","name":"@burdenoff/adaptercloud-sdk","dist-tags":{"latest":"2026.825.1"},"versions":{"2026.825.1":{"name":"@burdenoff/adaptercloud-sdk","version":"2026.825.1","description":"Official TypeScript SDK for AdapterCloud — thin shell over @burdenoff/sdk-libs","type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"scripts":{"dev":"TSUP_DEV=1 tsup --watch","build":"tsup","test":"bash scripts/build-limits.sh vitest run","test:watch":"vitest","test:coverage":"bash scripts/build-limits.sh vitest run --coverage","lint":"eslint src --fix","lint:check":"eslint src","lint:sanity":"if [ \"${CI:-}\" = \"true\" ]; then bun run lint:check; else bun run lint:check -- --cache --cache-location .eslintcache; fi","format":"prettier --write \"src/**/*.{ts,js,json,md}\" \"tests/**/*.{ts,js}\"","format:check":"prettier --check \"src/**/*.{ts,js,json,md}\" \"tests/**/*.{ts,js}\"","type-check":"bash scripts/build-limits.sh tsc --noEmit","clean":"rimraf dist .eslintcache","sanity":"bash scripts/build-limits.sh --gate bash -c 'bun run format:check && bun run lint:sanity && bun run type-check && bun run test && bun run build'","prepublishOnly":"bun run clean && bun run build"},"keywords":["adaptercloud","sdk","graphql","typescript","api-client","burdenoff"],"author":{"name":"Vignesh T.V","url":"https://github.com/tvvignesh"},"license":"UNLICENSED","repository":{"type":"git","url":"git+https://github.com/algoshred/adaptercloud-sdk-node.git"},"dependencies":{"@burdenoff/sdk-libs":"2026.825.2","cross-fetch":"^4.1.0"},"peerDependencies":{"graphql":"^16.0.0","graphql-request":"^7.0.0"},"devDependencies":{"@types/node":"^24.12.2","@typescript-eslint/eslint-plugin":"^8.58.0","@typescript-eslint/parser":"^8.58.0","@vitest/coverage-v8":"^3.2.4","eslint":"^9.39.4","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","graphql":"^16.13.2","graphql-request":"^7.4.0","prettier":"^3.8.1","rimraf":"^6.1.3","tsup":"^8.5.1","tsx":"^4.21.0","typescript":"^5.9.3","vitest":"^3.2.4"},"engines":{"node":">=24.11.0","bun":">=1.3.14"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"gitHead":"e66548fef7760544a1aabff7c6aec9c8af1ac88f","_id":"@burdenoff/adaptercloud-sdk@2026.825.1","bugs":{"url":"https://github.com/algoshred/adaptercloud-sdk-node/issues"},"homepage":"https://github.com/algoshred/adaptercloud-sdk-node#readme","_nodeVersion":"22.23.2","_npmVersion":"12.0.2","dist":{"integrity":"sha512-PpXpfB0n75lU8sjXFkNUAldXzO40n+cwyzZD6jxwtRJ3ZzzVEtC2xNFRUS3/luGK9U12usSQAWZgGzAcIEtZaA==","shasum":"12650567880217fe26414a3c5d2c14f8145db1ad","tarball":"https://registry.npmjs.org/@burdenoff/adaptercloud-sdk/-/adaptercloud-sdk-2026.825.1.tgz","fileCount":7,"unpackedSize":33336,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBk+IeunLgey5SxFON95rLvDhb6hsWUBT/2TIBhLThw9AiB1MVHcIqebmnGlo9odM4b/AuflTGGIzy1GV+yJpY2Ymg=="}]},"_npmUser":{"name":"burdenoffcorp","email":"support@burdenoff.com"},"directories":{},"maintainers":[{"name":"burdenoffcorp","email":"support@burdenoff.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/adaptercloud-sdk_2026.825.1_1787647027945_0.5644538422331589"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-25T08:37:07.694Z","2026.825.1":"2026-08-25T08:37:08.134Z","modified":"2026-08-25T08:37:08.443Z"},"maintainers":[{"name":"burdenoffcorp","email":"support@burdenoff.com"}],"description":"Official TypeScript SDK for AdapterCloud — thin shell over @burdenoff/sdk-libs","homepage":"https://github.com/algoshred/adaptercloud-sdk-node#readme","keywords":["adaptercloud","sdk","graphql","typescript","api-client","burdenoff"],"repository":{"type":"git","url":"git+https://github.com/algoshred/adaptercloud-sdk-node.git"},"author":{"name":"Vignesh T.V","url":"https://github.com/tvvignesh"},"bugs":{"url":"https://github.com/algoshred/adaptercloud-sdk-node/issues"},"license":"UNLICENSED","readme":"# @burdenoff/adaptercloud-sdk\n\nOfficial TypeScript SDK for AdapterCloud — programmatic access to adapters, connections, resources, sync runs, drift, policies, topology, cost, and more.\n\n> **Pre-launch:** AdapterCloud is launching in 2026. This package targets the AdapterCloud API and is published ahead of general availability. Join the waitlist at [https://adaptercloud.com](https://adaptercloud.com) to get early access.\n\n## Installation\n\n```bash\nbun add @burdenoff/adaptercloud-sdk\n# or\nnpm install @burdenoff/adaptercloud-sdk\n```\n\n## Quick Start\n\n```typescript\nimport { AdaptercloudSDK } from '@burdenoff/adaptercloud-sdk';\n\nconst sdk = new AdaptercloudSDK({\n  workspaceEndpoint: 'https://graphqlworkspaces.burdenoff.com/workspaces/graphql',\n  globalEndpoint: 'https://graphql.burdenoff.com/global/graphql',\n});\n\n// Sign in\nawait sdk.auth.signIn({ username: 'user@example.com', password: 'secret' });\n\n// Fetch workspaces and issue workspace token\nconst workspaces = await sdk.auth.fetchWorkspaces();\nawait sdk.auth.issueWorkspaceToken(workspaces[0].id, workspaces[0].organizationId);\n\n// Use the SDK\nconst adapters = await sdk.adaptercloud.adapters.list();\nconst connections = await sdk.adaptercloud.connections.list();\n```\n\n## Authentication\n\n### Email / Password\n\n```typescript\nconst auth = await sdk.auth.signIn({ username: 'user@example.com', password: 'secret' });\n```\n\n### OAuth2 Device Code Flow\n\n```typescript\nconst { userCode, verificationUri, promise } = await sdk.auth.loginWithDeviceCode();\nconsole.log(`Open ${verificationUri} and enter: ${userCode}`);\nconst tokens = await promise;\n```\n\n### OAuth2 Authorization Code + PKCE\n\n```typescript\nconst challenge = sdk.auth.buildAuthorizationUrl({\n  redirectUri: 'http://localhost:8400/callback',\n  scopes: ['openid', 'profile', 'email', 'offline_access'],\n});\n// Redirect user to challenge.url, then exchange the code:\nconst tokens = await sdk.auth.exchangeAuthCode(code, challenge.codeVerifier, challenge.redirectUri);\n```\n\n### Client Credentials (M2M / App Auth)\n\n```typescript\nconst result = await sdk.auth.authenticateApp(clientId, clientSecret);\n```\n\n### Workspace Token\n\n```typescript\nawait sdk.auth.issueWorkspaceToken(workspaceId, organizationId);\n```\n\n## Modules\n\nThe SDK is a thin shell over `@burdenoff/sdk-libs`; each domain is mounted as a\nnested namespace.\n\n| Namespace | Description |\n|-----------|-------------|\n| `sdk.auth` | Sign in/up, OAuth flows, token management |\n| `sdk.adaptercloud` | AdapterCloud domain — `adapters`, `connections`, `resources`, `syncRuns`, `drift`, `policies`, `violations`, `topology`, `cost`, `analytics` |\n| `sdk.sandbox` | Ephemeral, TTL-bound sandbox environments |\n| `sdk.billing` | Subscriptions, invoices, plans, addons, credits, refunds |\n| `sdk.channels` | Channel-based pub/sub |\n| `sdk.conversations` | Conversation CRUD + settings |\n| `sdk.devportal` | Apps, OAuth, API keys, webhooks, delegations |\n| `sdk.export` | Export jobs, templates, downloads |\n| `sdk.files` | Browse, upload, share files |\n| `sdk.groups` | Group management |\n| `sdk.health` | Gateway/service health probes |\n| `sdk.integrations` | Third-party integrations + connections |\n| `sdk.notifications` | Notification center + preferences |\n| `sdk.organizations` | Organizations + invites |\n| `sdk.products` | Products, shortcuts, content pages, feature flags |\n| `sdk.rbac` | Permissions, role assignment |\n| `sdk.scheduler` | Scheduled jobs + executions |\n| `sdk.security` | Vaults, secrets |\n| `sdk.store` | Marketplace — search, cart, orders, installs, publisher |\n| `sdk.support` | Tickets + knowledge base |\n| `sdk.tags` | Tag CRUD + tagging |\n| `sdk.tours` | Onboarding tours + progress |\n| `sdk.workspaces` | Workspace CRUD + members + projects + invites |\n\n## Configuration\n\n```typescript\ninterface AdaptercloudSDKConfig {\n  workspaceEndpoint: string;   // Workspace gateway GraphQL endpoint\n  globalEndpoint: string;      // Global gateway GraphQL endpoint\n  oidcIssuer?: string;         // OIDC issuer URL (derived from globalEndpoint if omitted)\n  clientId?: string;           // OAuth2 client ID\n  clientSecret?: string;       // OAuth2 client secret\n  redirectUri?: string;        // Redirect URI for auth code flow\n  apiKey?: string;             // API key authentication\n  accessToken?: string;        // Pre-existing access token\n  refreshToken?: string;       // Pre-existing refresh token\n  workspaceToken?: string;     // Pre-existing workspace token\n  timeout?: number;            // Request timeout in ms (default: 30000)\n  autoRefresh?: boolean;       // Auto-refresh tokens (default: true)\n  onTokenRefresh?: (tokens: TokenPair) => void | Promise<void>;\n}\n```\n\n## Error Handling\n\n```typescript\nimport { AdaptercloudError, AuthenticationError, NetworkError } from '@burdenoff/adaptercloud-sdk';\n\ntry {\n  await sdk.auth.signIn({ username: 'invalid', password: 'invalid' });\n} catch (error) {\n  if (error instanceof AuthenticationError) {\n    console.error('Auth failed:', error.message);\n  } else if (error instanceof NetworkError) {\n    console.error('Network error:', error.message);\n  }\n}\n```\n\n## Development\n\n```bash\nbun install\nbun run dev          # Watch mode\nbun run build        # Production build\nbun run test         # Run tests\nbun run sanity       # All checks (format, lint, type-check, test, build)\n```\n\n## License\n\nProprietary - Copyright Burdenoff Consultancy Services Pvt. Ltd.\n","readmeFilename":"README.md","_rev":"1-472f17121da5faccfb0d06109a94f4a8"}