{"uid":"cap_JWkuyO_uW2tI-OFb-8TDH","slug":"satoshi-api-bitcoin-withdrawal-batch-fee-briefing-d5499e6b","name":"Satoshi API - Bitcoin Withdrawal Batch Fee Briefing","description":"Know when to send Bitcoin and when to wait. Satoshi API gives apps and AI agents live fee recommendations, mempool context, and cost estimates. Free, open source.","url":"https://bitcoinsapi.com/api/v1/briefings/withdrawal-batch","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"urgency":{"enum":["low","normal","high","urgent"],"type":"string"},"input_type":{"enum":["p2wpkh","p2tr","p2pkh","p2sh","p2wsh"],"type":"string"},"input_count":{"type":"integer","description":"Number of funding inputs."},"avg_output_vsize":{"type":"integer","description":"Average output vsize."},"withdrawal_count":{"type":"integer","description":"Number of withdrawal outputs."},"batch_window_hours":{"type":"integer"},"target_fee_budget_sats":{"type":"string"}}},"responseSchema":{"type":"json","schema":{"type":"object","required":["briefing","batch","decision","agent_action"],"properties":{"batch":{"type":"object"},"costs":{"type":"object"},"briefing":{"type":"string"},"decision":{"type":"object"},"agent_action":{"type":"object"}}},"example":{"batch":{"estimated_vsize":2420,"withdrawal_count":50},"briefing":"Bitcoin withdrawal batch plan","decision":{"action":"wait_for_fee_window","potential_savings_sats":20000},"agent_action":{"batch_policy":"defer_batch"},"x402_price_usd":"$0.10"},"mimeType":"application/json"},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.1","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"registry","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.1/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_KFSI07t3zeDtlt1n_NjfS","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.1","costPer":"request","priority":0,"asset":null,"unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Analyzes a planned Bitcoin withdrawal batch and recommends whether to send now or wait for lower fees, including cost estimates and savings potential.","exampleAgentPrompt":"I need to send a batch of 50 Bitcoin withdrawals with 20 funding inputs, average output vsize of 48 bytes, and a fee budget of 500000 sats — my urgency is low and I can wait up to 12 hours. Should I send now or wait for a better fee window?","exampleUseCases":[{"title":"Exchange deferring high-volume payout batch","prompt":"I'm running a Bitcoin exchange and need to send 100 customer withdrawals using 30 inputs, average output vsize of 50 bytes, and I have a 12-hour batch window with a fee budget of 800000 sats and low urgency — should I send now or wait to save on fees?"},{"title":"Urgent payroll batch with tight deadline","prompt":"I have to process 25 Bitcoin payroll payments urgently today using 10 inputs, average output vsize of 44 bytes, and a target fee budget of 300000 sats with a 1-hour window — what does the mempool look like and what will it cost me?"},{"title":"Fee savings analysis for scheduled batch","prompt":"We batch our Bitcoin withdrawals every 6 hours and I want to know if deferring the next batch of 75 outputs with 15 inputs and average output vsize of 52 bytes makes sense given we have a 500000 sat fee budget and medium urgency."}],"resultDescription":"Returns a natural-language briefing string summarizing conditions, a batch object with estimated vsize and withdrawal count, a decision object recommending an action (e.g. 'wait_for_fee_window') and quantifying potential savings in satoshis, a costs object with fee breakdowns, and an agent_action object with a batch policy directive (e.g. 'defer_batch') that an AI agent can act on directly.","failureModes":["Missing required fields such as withdrawal_count or input_count returns a 400 validation error","Invalid urgency string or input_type enum value may cause processing failure","Mempool data unavailability may degrade recommendation quality","Payment not included or insufficient USDC via x402 protocol returns 402 Payment Required","Extremely large batch sizes may exceed computation limits"],"whenToPreferThis":"Choose this endpoint when an application or AI agent needs to make an intelligent, data-driven decision about whether to execute a Bitcoin withdrawal batch immediately or defer it to save on fees. It is specifically designed for batch scenarios (multiple outputs, multiple inputs) rather than single transactions, and provides actionable agent directives rather than just raw fee data. Prefer it over generic mempool APIs when you need a structured recommendation and savings estimate tied to your specific batch parameters.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T12:42:08.413Z","isFirstParty":false}