{"_id":"@agentseo/sdk","_rev":"2-5ade2709b33f7f8bd216ebf56ce2383f","name":"@agentseo/sdk","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@agentseo/sdk","version":"0.1.0","keywords":["agentseo","seo","aeo","llm","api"],"author":{"name":"AgentSEO","email":"support@agentseo.dev"},"license":"MIT","_id":"@agentseo/sdk@0.1.0","maintainers":[{"name":"danielmartin16","email":"wildsummitgear@gmail.com"}],"homepage":"https://github.com/agentseo-dev/agentseo#readme","bugs":{"url":"https://github.com/agentseo-dev/agentseo/issues"},"dist":{"shasum":"106707b2aa9c40f78a574f2bc4f09a2c61c88a8b","tarball":"https://registry.npmjs.org/@agentseo/sdk/-/sdk-0.1.0.tgz","fileCount":5,"integrity":"sha512-jGGHMhry0Fjj8a+sUytWTum15MMcaPzvKdSM2+0orfjMUAF3jfeKaAAst3pOiRpiaKKHAOzD6O7NAg0SWbCVyA==","signatures":[{"sig":"MEUCIQCx7uqhj4FbOiv+WKlP31YqV6w7ACelOM18qljHelvWEgIgXh+veMG51nHulTwfqc/uWvSI1d6YUeKTwf+4nB+hdnQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9000},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"7900e526b3d0fb6ca5645278de6f2109921110f5","scripts":{"dev":"tsc --watch","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"danielmartin16","email":"wildsummitgear@gmail.com"},"repository":{"url":"git+https://github.com/agentseo-dev/agentseo.git","type":"git","directory":"packages/js-sdk"},"_npmVersion":"11.6.2","description":"Official JavaScript SDK for AgentSEO API","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.6.3","@types/node":"^22.8.1"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0_1771273703954_0.5803317335772444","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@agentseo/sdk","version":"0.1.1","description":"Official JavaScript SDK for AgentSEO API","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"scripts":{"build":"tsc","dev":"tsc --watch","prepare":"npm run build"},"keywords":["agentseo","seo","aeo","llm","api"],"author":{"name":"AgentSEO","email":"daniel@joytecnologies.com"},"repository":{"type":"git","url":"git+https://github.com/agentseo-dev/agentseo.git","directory":"packages/js-sdk"},"engines":{"node":">=18"},"license":"MIT","devDependencies":{"@types/node":"^22.8.1","typescript":"^5.6.3"},"gitHead":"be9dd0c9f75ba9955b9dcd9736ca1a9976065629","_id":"@agentseo/sdk@0.1.1","bugs":{"url":"https://github.com/agentseo-dev/agentseo/issues"},"homepage":"https://github.com/agentseo-dev/agentseo#readme","_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-xBhcs3rfc8PlUm3h5njFuLyJNtUbBIsStzmDqRz66FV9az27KA4a+L/luASq2PONe9pt7PriwmLdpy1eFOHS2w==","shasum":"564d1798bd35c748c1188ad061bd44f449e5da83","tarball":"https://registry.npmjs.org/@agentseo/sdk/-/sdk-0.1.1.tgz","fileCount":5,"unpackedSize":12397,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCQGsBeDugJSqR1I0C485aY64+r0V+TL2seMWyPKA8wQQIgHDbwMPjIefFjKkC/41KkC/RfHde0MNzN4BMrgifLjf0="}]},"_npmUser":{"name":"danielmartin16","email":"wildsummitgear@gmail.com"},"directories":{},"maintainers":[{"name":"danielmartin16","email":"wildsummitgear@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_0.1.1_1772281032925_0.5528916606818122"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-16T20:28:23.884Z","modified":"2026-02-28T12:17:13.493Z","0.1.0":"2026-02-16T20:28:24.108Z","0.1.1":"2026-02-28T12:17:13.078Z"},"bugs":{"url":"https://github.com/agentseo-dev/agentseo/issues"},"author":{"name":"AgentSEO","email":"daniel@joytecnologies.com"},"license":"MIT","homepage":"https://github.com/agentseo-dev/agentseo#readme","keywords":["agentseo","seo","aeo","llm","api"],"repository":{"type":"git","url":"git+https://github.com/agentseo-dev/agentseo.git","directory":"packages/js-sdk"},"description":"Official JavaScript SDK for AgentSEO API","maintainers":[{"name":"danielmartin16","email":"wildsummitgear@gmail.com"}],"readme":"# @agentseo/sdk\n\nOfficial JavaScript SDK for AgentSEO.\n\n## Install\n\n```bash\nnpm install @agentseo/sdk\n```\n\n## Quickstart (Node.js ESM)\n\nCreate `demo.mjs`:\n\n```ts\nimport { AgentSEO } from \"@agentseo/sdk\";\n\nconst client = new AgentSEO({\n  apiKey: process.env.AGENTSEO_API_KEY!,\n  baseUrl: \"https://www.agentseo.dev\",\n  projectId: \"client-alpha\",\n  workflowId: \"nightly-refresh\",\n});\n\nconst job = await client.analyzeSerp({\n  keyword: \"seo agency austin\",\n  location: \"Austin, TX\",\n  location_code: 1026201,\n});\n\nconsole.log(job.jobId);\nconsole.log(await client.getJob(job.jobId));\n```\n\nRun it:\n\n```bash\nexport AGENTSEO_API_KEY=\"sk_live_your_key\"\nnode demo.mjs\n```\n\n## Async Jobs (queue + poll)\n\nBy default, requests are queued (`sync: false`) and return a job object.\n\n```ts\nconst job = await client.contentGap({\n  url: \"https://example.com/blog/post\",\n  keyword: \"best project management software\",\n});\n\nconst result = await client.getJob(job.jobId);\n```\n\nSet `projectId` and `workflowId` once on the client when you want usage, jobs, and budgets grouped by agent workflow. You can also override them per request:\n\n```ts\nawait client.search(\n  { query: \"best crm software\" },\n  { projectId: \"client-beta\", workflowId: \"manual-research\" },\n);\n```\n\nFor geo-targeted endpoints, pass `location_code` when you need deterministic targeting:\n\n```ts\nawait client.search({\n  query: \"best crm software\",\n  location: \"Austin, TX\",\n  location_code: 1026201,\n  limit: 5,\n});\n```\n\nFor AI Overview checks, pass `target_domain` when the agent needs to know whether your site is present in the sampled candidate set:\n\n```ts\nawait client.aiOverviewExtract({\n  keyword: \"best seo agency\",\n  location: \"Austin, TX\",\n  location_code: 1026201,\n  target_domain: \"example.com\",\n});\n```\n\n## Error Handling\n\n```ts\nimport { AgentSEOError } from \"@agentseo/sdk\";\n\ntry {\n  await client.search({ query: \"agentic seo tools\" }, { sync: true });\n} catch (error) {\n  if (error instanceof AgentSEOError) {\n    console.error(error.status, error.message, error.details);\n  }\n}\n```\n\n## API Surface\n\n- `localAudit(input, options?)`\n- `contentGap(input, options?)`\n- `search(input, options?)`\n- `analyzeSerp(input, options?)`\n- `aiOverviewExtract(input, options?)`\n- `localVisibilityTrack(input, options?)`\n- `llmMentionsTrack(input, options?)`\n- `contentDecayDetect(input, options?)`\n- `keywordClusterBuild(input, options?)`\n- `getJob(jobId)`\n  - pass `getJob(jobId, { projectId, workflowId })` if you want poll requests grouped separately from the client default\n\n## Request Options\n\n- `sync?: boolean` Open a short inline processing window when `true`. If the job is not ready yet, the API may still return `202` with a job payload.\n- `idempotencyKey?: string` Prevent duplicate job creation on retries.\n- `projectId?: string` Group usage and jobs under a project.\n- `workflowId?: string` Group usage and jobs under a workflow.\n\n## Notes\n\n- This package is ESM-first. Use `import`, not `require`.\n","readmeFilename":"README.md"}