{
  "schemaVersion": "1.0",
  "item": {
    "slug": "phone-calls-bland",
    "name": "AI Phone Calls (Bland AI)",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/dru-ca/phone-calls-bland",
    "canonicalUrl": "https://clawhub.ai/dru-ca/phone-calls-bland",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/phone-calls-bland",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=phone-calls-bland",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "bland.sh",
      "check-call.sh",
      "phone-call.sh"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/phone-calls-bland"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/phone-calls-bland",
    "agentPageUrl": "https://openagent3.xyz/skills/phone-calls-bland/agent",
    "manifestUrl": "https://openagent3.xyz/skills/phone-calls-bland/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/phone-calls-bland/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Phone Calls Skill",
        "body": "Make AI-powered phone calls on behalf of the user — book restaurants, make appointments, inquire about services, etc."
      },
      {
        "title": "Provider: Bland AI",
        "body": "Why Bland AI?\n\nSimplest API of all options (Vapi, Retell are more complex)\nJust need phone_number + task to make a call\nLow latency, natural-sounding voices\nPay-per-minute, no platform fees\nSelf-hosted (data stays secure)"
      },
      {
        "title": "1. Create Bland AI Account",
        "body": "Go to https://app.bland.ai\nSign up with email\nAdd payment method (or use free trial credits)"
      },
      {
        "title": "2. Get API Key",
        "body": "Go to https://app.bland.ai/dashboard\nClick your profile → API Keys\nCopy your API key"
      },
      {
        "title": "3. Configure Clawdbot",
        "body": "Add to your environment or .env:\n\nBLAND_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx\n\nOr store in ~/.clawd/secrets.json:\n\n{\n  \"bland_api_key\": \"sk-xxxxxxxxxxxxxxxxxxxxxxxx\"\n}"
      },
      {
        "title": "Basic Call",
        "body": "./phone-call.sh \"+447123456789\" \"Call the restaurant and book a table for 2 at 7pm tonight under the name John\""
      },
      {
        "title": "With Custom Voice",
        "body": "./phone-call.sh \"+447123456789\" \"Ask about their opening hours\" --voice maya"
      },
      {
        "title": "Check Call Status",
        "body": "./check-call.sh <call_id>"
      },
      {
        "title": "How It Works",
        "body": "You provide a phone number and a task/objective\nBland AI calls the number with an AI agent\nThe AI follows your instructions naturally\nYou get a transcript and summary after the call"
      },
      {
        "title": "Example Tasks",
        "body": "Restaurant Booking:\n\nCall this restaurant and book a table for 4 people on Saturday at 8pm. \nThe booking should be under the name \"Smith\". If they ask for a phone \nnumber, give them +447123456789.\n\nAppointment Inquiry:\n\nCall this dental office and ask what appointments are available next \nweek for a routine checkup. Get at least 3 options if possible.\n\nService Inquiry:\n\nCall this plumber and ask if they can come out tomorrow to fix a \nleaking tap. Get a quote for the callout fee."
      },
      {
        "title": "Pricing (Bland AI)",
        "body": "Outbound calls: ~$0.09/minute (US)\nVaries by country — check https://app.bland.ai for current rates\nFirst calls may have free credits"
      },
      {
        "title": "Voice Options",
        "body": "Built-in voices:\n\njosh - Male, professional\nmaya - Female, friendly (default)\nflorian - Male, European accent\nderek - Male, casual\njune - Female, professional\nnat - Male, natural\npaige - Female, upbeat"
      },
      {
        "title": "Voicemail Handling",
        "body": "The AI can detect voicemails and either hang up, leave a message, or ignore."
      },
      {
        "title": "Call Recording",
        "body": "Set record: true to get a recording URL after the call."
      },
      {
        "title": "Webhooks",
        "body": "Get notified when calls complete by setting a webhook URL."
      },
      {
        "title": "Conversation Pathways",
        "body": "For complex flows (IVR menus, multi-step processes), create pathways in the Bland dashboard."
      },
      {
        "title": "Limitations",
        "body": "Cannot call emergency services (999, 911, etc.)\nSome numbers may be blocked (DNC lists)\nRate limited: 1 call per 10 seconds to the same number\nMax call duration: 30 minutes default (configurable)"
      },
      {
        "title": "Troubleshooting",
        "body": "\"Invalid phone number\"\n\nInclude country code: +44 for UK, +1 for US\nRemove spaces and parentheses\n\n\"Insufficient balance\"\n\nAdd credits at https://app.bland.ai/dashboard/billing\n\n\"Rate limit exceeded\"\n\nWait a few seconds between calls to the same number"
      },
      {
        "title": "Files",
        "body": "phone-call.sh — Make a phone call\ncheck-call.sh — Check call status/transcript\nbland.sh — Low-level API wrapper"
      }
    ],
    "body": "Phone Calls Skill\n\nMake AI-powered phone calls on behalf of the user — book restaurants, make appointments, inquire about services, etc.\n\nProvider: Bland AI\n\nWhy Bland AI?\n\nSimplest API of all options (Vapi, Retell are more complex)\nJust need phone_number + task to make a call\nLow latency, natural-sounding voices\nPay-per-minute, no platform fees\nSelf-hosted (data stays secure)\nSetup Required\n1. Create Bland AI Account\nGo to https://app.bland.ai\nSign up with email\nAdd payment method (or use free trial credits)\n2. Get API Key\nGo to https://app.bland.ai/dashboard\nClick your profile → API Keys\nCopy your API key\n3. Configure Clawdbot\n\nAdd to your environment or .env:\n\nBLAND_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx\n\n\nOr store in ~/.clawd/secrets.json:\n\n{\n  \"bland_api_key\": \"sk-xxxxxxxxxxxxxxxxxxxxxxxx\"\n}\n\nUsage\nBasic Call\n./phone-call.sh \"+447123456789\" \"Call the restaurant and book a table for 2 at 7pm tonight under the name John\"\n\nWith Custom Voice\n./phone-call.sh \"+447123456789\" \"Ask about their opening hours\" --voice maya\n\nCheck Call Status\n./check-call.sh <call_id>\n\nHow It Works\nYou provide a phone number and a task/objective\nBland AI calls the number with an AI agent\nThe AI follows your instructions naturally\nYou get a transcript and summary after the call\nExample Tasks\n\nRestaurant Booking:\n\nCall this restaurant and book a table for 4 people on Saturday at 8pm. \nThe booking should be under the name \"Smith\". If they ask for a phone \nnumber, give them +447123456789.\n\n\nAppointment Inquiry:\n\nCall this dental office and ask what appointments are available next \nweek for a routine checkup. Get at least 3 options if possible.\n\n\nService Inquiry:\n\nCall this plumber and ask if they can come out tomorrow to fix a \nleaking tap. Get a quote for the callout fee.\n\nPricing (Bland AI)\nOutbound calls: ~$0.09/minute (US)\nVaries by country — check https://app.bland.ai for current rates\nFirst calls may have free credits\nVoice Options\n\nBuilt-in voices:\n\njosh - Male, professional\nmaya - Female, friendly (default)\nflorian - Male, European accent\nderek - Male, casual\njune - Female, professional\nnat - Male, natural\npaige - Female, upbeat\nAdvanced Features\nVoicemail Handling\n\nThe AI can detect voicemails and either hang up, leave a message, or ignore.\n\nCall Recording\n\nSet record: true to get a recording URL after the call.\n\nWebhooks\n\nGet notified when calls complete by setting a webhook URL.\n\nConversation Pathways\n\nFor complex flows (IVR menus, multi-step processes), create pathways in the Bland dashboard.\n\nLimitations\nCannot call emergency services (999, 911, etc.)\nSome numbers may be blocked (DNC lists)\nRate limited: 1 call per 10 seconds to the same number\nMax call duration: 30 minutes default (configurable)\nTroubleshooting\n\n\"Invalid phone number\"\n\nInclude country code: +44 for UK, +1 for US\nRemove spaces and parentheses\n\n\"Insufficient balance\"\n\nAdd credits at https://app.bland.ai/dashboard/billing\n\n\"Rate limit exceeded\"\n\nWait a few seconds between calls to the same number\nFiles\nphone-call.sh — Make a phone call\ncheck-call.sh — Check call status/transcript\nbland.sh — Low-level API wrapper"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/dru-ca/phone-calls-bland",
    "publisherUrl": "https://clawhub.ai/dru-ca/phone-calls-bland",
    "owner": "dru-ca",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/phone-calls-bland",
    "downloadUrl": "https://openagent3.xyz/downloads/phone-calls-bland",
    "agentUrl": "https://openagent3.xyz/skills/phone-calls-bland/agent",
    "manifestUrl": "https://openagent3.xyz/skills/phone-calls-bland/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/phone-calls-bland/agent.md"
  }
}