UNPKG

@openpets/bento

Version:

Bento email marketing platform integration - manage subscribers, track events, send broadcasts, and analyze engagement

148 lines 6.15 kB
{ "$schema": "https://pets.studio/config.json", "name": "@openpets/bento", "version": "1.0.6", "title": "Bento", "subtitle": "Email marketing and analytics", "description": "Bento email marketing platform integration - manage subscribers, track events, send broadcasts, and analyze engagement", "homepage": "https://bentonow.com", "categories": [ "marketing", "analytics", "email" ], "main": "index.ts", "types": "index.ts", "keywords": [ "opencode", "plugin", "bento", "email", "marketing", "analytics" ], "envVariables": { "required": [ { "name": "BENTO_PUBLISHABLE_KEY", "description": "Bento publishable API key", "provider": "Bento", "priority": 1 }, { "name": "BENTO_SECRET_KEY", "description": "Bento secret API key", "provider": "Bento", "priority": 2 }, { "name": "BENTO_SITE_UUID", "description": "Bento site UUID", "provider": "Bento", "priority": 3 } ] }, "queries": [ "add subscriber john@example.com", "track event for user@example.com", "get site statistics", "create tag Premium Customer", "send broadcast to leads" ], "scenarios": { "subscriber-management": [ "add subscriber with email and fields", "get subscriber details", "update subscriber fields", "tag subscriber as VIP" ], "event-tracking": [ "track custom event", "track purchase event", "batch import events" ], "analytics": [ "get site statistics", "get segment stats", "get broadcast reports" ] }, "faq": [ { "question": "Where do I get my Bento API keys?", "answer": "Log into your Bento account at app.bentonow.com, go to Settings > API Keys to find your publishable key, secret key, and site UUID." }, { "question": "What's the difference between Commands and V1 methods?", "answer": "Commands methods do NOT trigger automations, while V1 convenience methods DO trigger automations. Use Commands when you want to update data without triggering workflows." }, { "question": "How long does it take for events to appear?", "answer": "Batch operations (V1 methods) may take 1-3 minutes to appear in Bento. Direct API operations (Commands, Subscribers) are typically instant." }, { "question": "Can I send transactional emails?", "answer": "Yes! Use the send-transactional-email tool. Note that the 'from' email must be an existing Author in your Bento account." } ], "scripts": { "build": "pets build", "build:tsc": "tsc", "quickstart": "opencode run \"list available bento commands\"", "test:add-subscriber": "opencode run \"Add a new subscriber to Bento (TRIGGERS automations)\"", "test:upsert-subscriber": "opencode run \"Create or update a subscriber in Bento\"", "test:get-subscriber": "opencode run \"Get subscriber details by email or UUID\"", "test:update-fields": "opencode run \"Update custom fields for a subscriber (TRIGGERS automations)\"", "test:tag-subscriber": "opencode run \"Add a tag to a subscriber (TRIGGERS automations)\"", "test:remove-subscriber": "opencode run \"Unsubscribe a subscriber (TRIGGERS automations)\"", "test:track-event": "opencode run \"Track a custom event for a subscriber (TRIGGERS automations)\"", "test:track-purchase": "opencode run \"Track a purchase event to calculate subscriber LTV (TRIGGERS automations)\"", "test:batch-import-subscribers": "opencode run \"Import multiple subscribers in a single operation\"", "test:send-transactional-email": "opencode run \"Send transactional email(s) via Bento\"", "test:get-site-stats": "opencode run \"Get overall site statistics including subscribers and engagement\"", "test:get-segment-stats": "opencode run \"Get statistics for a specific segment\"", "test:get-report-stats": "opencode run \"Get statistics for a specific broadcast report\"", "test:get-broadcasts": "opencode run \"Retrieve all broadcast campaigns\"", "test:create-broadcast": "opencode run \"Create new broadcast campaign(s)\"", "test:get-tags": "opencode run \"Get all tags in the Bento account\"", "test:create-tag": "opencode run \"Create a new tag in Bento\"", "test:get-fields": "opencode run \"Get all custom fields defined in Bento\"", "test:create-field": "opencode run \"Create a new custom field in Bento\"", "test:get-form-responses": "opencode run \"Get responses for a specific form\"", "test:validate-email": "opencode run \"Validate an email address (Experimental)\"", "test:geolocate-ip": "opencode run \"Get geolocation information for an IP address (Experimental)\"", "test:check-blacklist": "opencode run \"Check if a domain or IP is blacklisted (Experimental)\"", "test:moderate-content": "opencode run \"Perform content moderation on text (Experimental)\"", "test:guess-gender": "opencode run \"Attempt to guess gender from a name (Experimental)\"", "test:add-tag-no-automation": "opencode run \"Add tag to subscriber WITHOUT triggering automations (Commands API)\"", "test:remove-tag-no-automation": "opencode run \"Remove tag from subscriber WITHOUT triggering automations (Commands API)\"", "test:add-field-no-automation": "opencode run \"Add field to subscriber WITHOUT triggering automations (Commands API)\"", "test:remove-field-no-automation": "opencode run \"Remove field from subscriber WITHOUT triggering automations (Commands API)\"", "test:all": "echo \"Run individual test scripts to test specific tools\"" }, "dependencies": { "openpets": "^1.0.6", "dotenv": "^16.0.0" }, "publishConfig": { "access": "public" }, "files": [ "index.ts", "index.js", "client.ts", "client.js", "*.d.ts", "lib/**/*", "src/**/*", "commands.json", "opencode.json", "public/**/*", "README.md" ], "repository": { "type": "git", "url": "https://github.com/raggle-ai/pets/pets/bento" } }