{"_id":"@affiliai/sdk","_rev":"3-583aaac30572e3542e1bfee86f07543d","name":"@affiliai/sdk","dist-tags":{"latest":"0.1.0"},"versions":{"0.0.1":{"name":"@affiliai/sdk","version":"0.0.1","keywords":["ai","agent","attribution","affiliate","protocol","mcp"],"author":{"name":"Affili AI","email":"hello@affili.ai"},"license":"Apache-2.0","_id":"@affiliai/sdk@0.0.1","maintainers":[{"name":"affili-ai","email":"hello@affili.ai"}],"homepage":"https://affili.ai","bugs":{"url":"https://github.com/Affili-AI/aap-js/issues"},"dist":{"shasum":"c4b9b12150c1479222776d99d74f1a3fa502f9fe","tarball":"https://registry.npmjs.org/@affiliai/sdk/-/sdk-0.0.1.tgz","fileCount":3,"integrity":"sha512-kXm3yVY1sxlQaz7Y8Q3MmcOry7vG1y2xQHVBylZj6LE4jaBZeKbLnYFf3PMaT2Bi5YpETsOvnjwRV0vFTKJLYA==","signatures":[{"sig":"MEYCIQDuqYLpQcqKEWN9+wEYtfztBJbXGauFMmxvUcHeTUee4AIhAMmkAtTZOFGgwJ4tZW38fWjk4PxV8ooX2LySavm6AUgg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1159},"main":"index.js","_npmUser":{"name":"affili-ai","email":"hello@affili.ai"},"repository":{"url":"git+https://github.com/Affili-AI/aap-js.git","type":"git"},"_npmVersion":"11.9.0","description":"JavaScript/TypeScript SDK for the Agent Attribution Protocol (AAP) — open standard for AI agent affiliate attribution","directories":{},"_nodeVersion":"25.6.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/sdk_0.0.1_1775114302847_0.2895844731593533","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed. Use @rakohq/sdk"},"0.1.0":{"name":"@affiliai/sdk","version":"0.1.0","keywords":["ai","agent","attribution","affiliate","protocol","mcp","aap","commerce"],"author":{"name":"Affili AI","email":"hello@affili.ai"},"license":"Apache-2.0","_id":"@affiliai/sdk@0.1.0","maintainers":[{"name":"affili-ai","email":"hello@affili.ai"}],"homepage":"https://affili.ai","bugs":{"url":"https://github.com/Affili-AI/aap-js/issues"},"dist":{"shasum":"bea1cface3f5258a1e866263502199d4ed81865a","tarball":"https://registry.npmjs.org/@affiliai/sdk/-/sdk-0.1.0.tgz","fileCount":8,"integrity":"sha512-Wfl1QTE+HZTb+7Rig3orh+FRrs96hcWxzaKmsnlU+eXFoizthygX7jq3bnBcBXYiK4jocQQs7KRF8UPo2RR6Uw==","signatures":[{"sig":"MEUCIDRqHYZNW7Gw8jqE5rk4LTvFhUNKBCpKRc6p0xgN4vL8AiEA2hrvY0oLlAVqx09p6eFGgP7tIFUtaA/yVkVRUbGFmOo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9249},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"affili-ai","email":"hello@affili.ai"},"repository":{"url":"git+https://github.com/Affili-AI/aap-js.git","type":"git"},"_npmVersion":"11.9.0","description":"JavaScript/TypeScript SDK for the Agent Attribution Protocol (AAP)","directories":{},"_nodeVersion":"25.6.1","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0_1775118501294_0.3131968354863204","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed. Use @rakohq/sdk"}},"time":{"created":"2026-04-02T07:18:22.741Z","modified":"2026-04-20T15:51:55.600Z","0.0.1":"2026-04-02T07:18:22.982Z","0.1.0":"2026-04-02T08:28:21.431Z"},"bugs":{"url":"https://github.com/Affili-AI/aap-js/issues"},"author":{"name":"Affili AI","email":"hello@affili.ai"},"license":"Apache-2.0","homepage":"https://affili.ai","keywords":["ai","agent","attribution","affiliate","protocol","mcp","aap","commerce"],"repository":{"url":"git+https://github.com/Affili-AI/aap-js.git","type":"git"},"description":"JavaScript/TypeScript SDK for the Agent Attribution Protocol (AAP)","maintainers":[{"name":"affili-ai","email":"hello@affili.ai"}],"readme":"# @affiliai/sdk\n\n> JavaScript/TypeScript SDK for the Agent Attribution Protocol (AAP)\n\nAAP enables AI agents to discover offers, make recommendations, and earn commission when those recommendations lead to purchases.\n\n## Install\n\n```bash\nnpm install @affiliai/sdk\n```\n\n## Quick Start\n\n```typescript\nimport { AAP } from '@affiliai/sdk';\n\nconst aap = new AAP({ apiKey: 'your-api-key' });\n\n// Search for offers\nconst { offers, sessionId } = await aap.search({\n  vertical: 'sim',\n  maxPrice: 10,\n  contractMonths: 0,\n});\n\n// Recommend an offer (records attribution)\nconst rec = await aap.recommend({\n  sessionId,\n  offerId: offers[0].id,\n  context: 'User asked for cheap SIM with no contract',\n});\n\n// rec.fallbackUrl — give this to the user if they don't buy now\n// rec.attributionRecorded — true, commission will be tracked\n\n// Initiate checkout\nconst checkout = await aap.checkout({\n  sessionId,\n  recommendationId: rec.recommendationId,\n});\n```\n\n## API\n\n### `new AAP(config)`\n\n| Option | Type | Required | Default |\n|--------|------|----------|---------|\n| `apiKey` | string | Yes | — |\n| `baseUrl` | string | No | `https://api.affili.ai` |\n\n### `aap.search(options)`\n\nSearch for offers. Returns matching offers and a session ID.\n\n| Option | Type | Description |\n|--------|------|-------------|\n| `vertical` | string | `sim`, `broadband`, `energy`, `flights`, `hotels`, `insurance` |\n| `provider` | string | Filter by provider name |\n| `maxPrice` | number | Maximum price |\n| `minDataGb` | number | Minimum data (SIM) |\n| `contractMonths` | number | Contract length (0 = rolling) |\n\n### `aap.recommend(options)`\n\nRecord a recommendation. **This is the attribution event.**\n\n| Option | Type | Required | Description |\n|--------|------|----------|-------------|\n| `sessionId` | string | Yes | From `search()` |\n| `offerId` | string | Yes | Offer to recommend |\n| `context` | string | No | Why this was recommended |\n\n### `aap.checkout(options)`\n\nInitiate checkout.\n\n| Option | Type | Required | Description |\n|--------|------|----------|-------------|\n| `sessionId` | string | Yes | From `search()` |\n| `recommendationId` | string | Yes | From `recommend()` |\n| `userDetails` | object | No | User details for checkout |\n\n### `aap.getSession(sessionId)`\n\nGet session details including recommendations and conversions.\n\n### `aap.verifyCode(code)`\n\nVerify an AAP Code is authentic.\n\n## Links\n\n- 🌐 [affili.ai](https://affili.ai)\n- 📄 [Protocol Spec](https://github.com/Affili-AI/aap-spec)\n- 🔌 [MCP Server](https://github.com/Affili-AI/aap-mcp)\n- 🐍 [Python SDK](https://github.com/Affili-AI/aap-python)\n\n## Licence\n\nApache 2.0\n","readmeFilename":"README.md"}