@openpets/bento
Version:
Bento email marketing platform integration - manage subscribers, track events, send broadcasts, and analyze engagement
148 lines • 6.15 kB
JSON
{
"$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"
}
}