FormFlow আপনার নিজস্ব HTML ফর্ম থেকে FormFlow URL-এ পাঠানো সাবমিশন গ্রহণ করে, স্প্যামের জন্য ফিল্টার করে, সংরক্ষণ করে এবং আপনার কনফিগার করা গন্তব্যে (যেমন আপনার ইনবক্স বা একটি webhook endpoint) পাঠায়। FormFlow আপনার এমবেড করা ফ্রন্টএন্ড হোস্ট করে না এবং আপনার ফর্ম কোন ডেটা সংগ্রহ করবে তা নির্ধারণ করে না; পেইড প্ল্যানগুলো FormFlow-হোস্টেড পেজও ব্যবহার করতে পারে।
প্রকৃত সাবমিশন — গ্রিন চ্যানেলবট — ইনবক্সে ফ্ল্যাগ করা, কখনোই বিতরণ করা হয় না, কখনোই গণনা করা হয় নাআপনার নিজস্ব সেটিংস দ্বারা প্রত্যাখ্যাত — আটকে রাখা এবং পুনরুদ্ধারযোগ্য
একটি অ্যাট্রিবিউট পরিবর্তন করুন। চালু করুন।
আপনার ফর্মের action একটি FormFlow URL-এর দিকে নির্দেশ করুন এবং আপনার কাজ শেষ — কোনো SDK নেই, কোনো ক্লায়েন্ট লাইব্রেরি নেই, কোনো সার্ভার সেট আপ করতে হবে না। স্ট্যাটিক সাইট, সার্ভার বা একবারের curl কমান্ড থেকেও কাজ করে।
আপনার ফর্ম বর্ণনা করুন — সক্রিয় থাকলে পেইড প্ল্যানে উপলভ্য। এই ফর্মটি কী সংগ্রহ করবে, বা আপনি কী পরীক্ষা নিতে চান তা বর্ণনা করুন। ফর্ম তৈরি করার আগে আপনি ফিল্ডগুলো পর্যালোচনা করতে পারবেন।
একটি ফর্ম স্কিমা ইমপোর্ট করুন — প্রশ্নের স্প্রেডশিট · ইমপোর্ট করা ফিল্ডগুলি পর্যালোচনা করুন
ফিল্ডগুলোও হাতে লেখার দরকার নেই। FormFlow ট্রাফিকের ওপর ভিত্তি করে ফর্মের স্কিমা অনুমান করে এবং পেস্ট করার জন্য প্রস্তুত অ্যাক্সেসিবল মার্কআপ — HTML, Blade, Vue বা React — তৈরি করে। 18টি ফিল্ডের ধরন — text, email, tel, url, number, textarea, select, checkbox, radio, multiselect, date, file, scale, rating, time, duration, grid, checkbox_grid — সবগুলো স্কিমা দ্বারা সমর্থিত। আপনি যখন এডিট করবেন, বিল্ডারটি এখনও সেভ না করা সেটিংস থেকেও ফিল্ড তালিকার পাশে ফর্মটি রেন্ডার করে দেখায়। একটি দীর্ঘ ফর্ম একাধিক ধাপে বিভক্ত হতে পারে, যা JavaScript ছাড়া একক সমতল পেজে ফিরে আসে। HTML এবং Blade স্নিপেটে, কপি করার সময় লাইভ রেন্ডারিং চালু করুন এবং এরপর থেকে ফর্মটি আপনার ফিল্ড তালিকা অনুসরণ করবে — পেস্ট করা মার্কআপটি ফলব্যাক হিসেবে থাকবে।
এটি তৈরি স্টাইলসহ আসে। মার্কআপের সাথে সাতটি সম্পূর্ণ স্বয়ংসম্পূর্ণ স্টাইলশীট থাকে — ইনস্টল করার কিছু নেই, লিঙ্ক করার কিছু নেই — এবং ইতিমধ্যে Bootstrap লোড করা সাইটের জন্য একটি Bootstrap ক্লাস-ম্যাপ রয়েছে। প্রতিটি একই মান মেনে চলে: ইনপুটের সাথে সংযুক্ত লেবেল, 44px স্পর্শ লক্ষ্য (টার্গেট), একটি দৃশ্যমান ফোকাস রিং এবং প্রকাশের আগে প্রতিটি স্টাইলের যাচাইকৃত বৈসাদৃশ্য (কন্ট্রাস্ট)।
<!-- আপনার বিদ্যমান ফর্ম। কোনো JS নেই, কোনো SDK নেই। --><formmethod="POST"action="https://formflow.digital/api/v1/f/ab12x9"><inputname="email"type="email"required><textareaname="message"></textarea><button>Send</button></form>
# অথবা যেকোনো স্থান থেকে POST করুনcurl -X POST https://formflow.digital/api/v1/f/ab12x9 \
-d "email=jane@acme.dev" \
-d "message=Loved the demo"# → 200 OK · {"success":true,"id":"…"}
{{-- লেবেলসহ তৈরি — ডিফল্টভাবেই অ্যাক্সেসযোগ্য। --}}<formmethod="POST"action="https://formflow.digital/api/v1/f/ab12x9"><labelfor="email">Email</label><inputid="email"name="email"type="email"required><labelfor="message">Message</label><textareaid="message"name="message"></textarea><button>Send</button></form>
<!-- যেকোনো উপাদানে যুক্ত করুন। এখনও কোনো SDK-এর প্রয়োজন নেই। --><template><formmethod="POST"action="https://formflow.digital/api/v1/f/ab12x9"><inputname="email"type="email"required/><textareaname="message"></textarea><button>Send</button></form></template>
// নেটিভ ফর্ম অ্যাকশন — কোনো ক্লায়েন্ট নেই, কোনো স্টেট নেই।export default functionContact() {
return (
<formmethod="POST"action="https://formflow.digital/api/v1/f/ab12x9"><inputname="email"type="email"required/><textareaname="message"/><button>Send</button></form>
);
}
একই ফর্ম, FormFlow-এর প্রতিটি স্টাইলে/form-styles/minimal
আপনার স্নিপেট তৈরি করা একই জেনারেটর দ্বারা রেন্ডার করা — এর কোনো আলাদা মার্কেটিং সংস্করণ নেই।
নমুনাটি সরাসরি /form-styles/minimal. থেকে আনা হয়েছে। এটি খালি থাকলে, এখান থেকে সেই রুটে পৌঁছানো সম্ভব নয় — তবে যেভাবেই হোক স্টাইলশীট স্নিপেটের সাথেই থাকে।
ফাইল আপলোড গ্রহণ করুন। স্টোরেজের ঝামেলা এড়িয়ে যান।
একটি file ফিল্ড ঘোষণা করুন এবং আপনার ফর্ম সাধারণ মাল্টিপার্টের মাধ্যমে ইমেজ আপলোড গ্রহণ করবে — কনফিগার করার কিছু নেই। একটি ফিল্ডে একসাথে বিশটি পর্যন্ত ফাইল নেওয়া যায় এবং এটি কোন ফরম্যাট গ্রহণ করবে তা আপনি বেছে নেন। FormFlow সেগুলোকে একটি ব্যক্তিগত ডিস্কে সংরক্ষণ করে এবং ইনবক্সে একটি মেয়াদোত্তীর্ণ স্বাক্ষরিত লিঙ্ক সরবরাহ করে, তাই কোনো সংযুক্তি কখনোই সর্বজনীন URL-এ উন্মুক্ত থাকে না।
JPEG, PNG, WebP এবং GIF — SVG প্রত্যাখ্যাত হয়, এবং প্রতিটি ফাইল ম্যাজিক-বাইট দ্বারা যাচাই করা হয়, এক্সটেনশনের ওপর নির্ভর করা হয় না।
ব্যক্তিগতভাবে সংরক্ষিত; ইনবক্স একটি মেয়াদোত্তীর্ণ স্বাক্ষরিত লিঙ্ক প্রদর্শন করে, কখনোই ইনলাইন <img> প্রদর্শন করে না।
সংযুক্ত ফাইলসমূহcontact-form · 2টি ঘোষিত
roof-damage.jpg
image/jpeg · 3.2 MB · যাচাইকৃত
গৃহীত
meter-reading.png
image/png · 0.9 MB · যাচাইকৃত
গৃহীত
স্বাক্ষরিত লিঙ্ক · প্রতিটি ফাইল/download/e7a1…?expires=1h
logo.svgপ্রত্যাখ্যাত · SVG অনুমোদিত নয়
রেড চ্যানেলবট · ফ্ল্যাগ করা, কখনোই বিতরণ করা হয় না, কখনোই গণনা করা হয় না
একটি ফিল্টার যা প্রতিটি ফর্ম থেকে শেখে।
প্রতিটি ফর্মের নিজস্ব মডেল থাকে। কোনো সাবমিশন পৌঁছানোর সাথে সাথেই স্কোর করা হয় — এবং প্রতিবার আপনি কোনো সিদ্ধান্ত সংশোধন করলে, ফর্মটির মডেল আরও নিখুঁত হয়। স্কোর, কারণ, পরবর্তী পদক্ষেপ: সবকিছু স্পষ্টভাবে উল্লেখ থাকে, সাথে মডেলটি বাস্তবে কেমন পারফর্ম করছে তার প্রতিটি ফর্মের পৃথক রিপোর্ট। চেষ্টা করে দেখুন →
এই ফর্মটিকে শেখান:এই ফর্মের মডেল আপডেট করা হয়েছে।
ইনবক্সcontact-form · ab12x9
Jane Okafor
Loved the demo — can we talk pricing this week?
0.02 · বিতরণকৃত
promo-reply@bulk-seo.link
CHEAP backlinks + guaranteed SEO boost!!!
0.61 · অনিশ্চিত
buy-now-bot
🔥 crypto doubler, act now, limited spots
0.98 · স্প্যাম
01
হানিপট
একটি অফ-স্ক্রিন ফিল্ড যা বটগুলো পূরণ করে কিন্তু মানুষ কখনো দেখতে পায় না। কোনো খরচ নেই, তাই এটি সবার আগে চলে।
02
ফর্ম-ভিত্তিক মডেল
প্রতিটি ফর্মের জন্য একটি নাইভ-বেয়েস মডেল, যা আপনার সংশোধনের মাধ্যমে প্রশিক্ষিত হয়। একটি নতুন ফর্ম টিমের পূর্ববর্তী ডেটা ব্যবহার করে, ফলে প্রথম সাবমিশন থেকেই এটি শনাক্ত করতে পারে।
03
টার্নস্টাইল
ঐচ্ছিক Cloudflare চ্যালেঞ্জ। বিভ্রাটের সময় এটি স্বয়ংক্রিয়ভাবে উন্মুক্ত থাকে — তাই আসল সাবমিশন কখনো যাচাইয়ের কারণে নষ্ট হয় না।
04
কঠোর স্কিমা
এটি চালু করলে আপনার ফর্মে ঘোষণা না করা ফিল্ডগুলো শুরুতেই প্রত্যাখ্যাত হয়। ডিফল্টভাবে বন্ধ থাকে।
আটককৃতসংরক্ষিত · কারণযুক্ত · পুনরুদ্ধারযোগ্য
এই চারটি ধাপ বট ঠেকানোর জন্য প্রস্তুত করা হয়েছে। তবে এগুলোর মধ্যে একটি শুধু সেটাই করে না: আপনার কঠোর স্কিমা বট এবং ক্রেতার মধ্যে পার্থক্য করতে পারে না, আপনার অনুমোদিত অরিজিন তালিকা বা আপলোড নিয়মাবলী-ও তা পারে না। এই তিনটি আপনার নির্দেশ অনুযায়ী সরাসরি প্রত্যাখ্যান করে — এবং সেই প্রত্যাখ্যান অপরিচিত ব্যক্তির ব্রাউজারে পৌঁছায়, আপনার কাছে কখনো নয়।
একটি লিড চারটি জায়গায় হারিয়ে যেতে পারে। যার মধ্যে কেবল একটি হলো স্প্যাম।
বাকি তিনটি ঘটে আপনার প্রান্তের নেটওয়ার্কে, যেখানে কোনো ত্রুটিই কারো নজরে পড়ার মতো স্পষ্ট হয় না — সাবমিটকারী ভাবেন তিনি পাঠিয়ে দিয়েছেন, আর FormFlow-এ কোনো ত্রুটি পৌঁছায় না। তাই সাবমিটকারী যেভাবে এগুলোর মুখোমুখি হন, সেই ক্রম অনুসারে প্রতিটির ওপর আলাদাভাবে নজর রাখা হয়।
এন্ডপয়েন্ট কী প্রতিক্রিয়া জানাবে তা আগে থেকেই জেনে নিন।
লিড হারানোর ঝুঁকি তৈরি হওয়ার আগেই: স্ট্রিক্ট মোড চালু করুন, আর FormFlow-এর তৈরি করা ফর্মটি যে কেউ পাঠানোর বোতাম (Send) চাপার আগেই প্রতিটি ফিল্ডকে আসল মূল্যায়নের মধ্য দিয়ে নিয়ে যায় — একই নিয়ম, একই ভাষা, কোনো নেতিবাচক প্রভাব ছাড়া। এটি এমন এক ফাঁক পূরণ করে যা সাধারণ কোড জেনারেশন পারে না: একটি ব্রাউজার required এবং type="email" প্রয়োগ করে, কিন্তু আপনি বিল্ডারে যে ভ্যালিডেশন নিয়ম সেট করেছেন তা নয় — ফলে ব্রাউজার চেকে উত্তীর্ণ হওয়া ফর্মও সার্ভার কর্তৃক প্রত্যাখ্যাত হতে পারে। এখন ব্যবহারকারী ঠিক করার সুযোগ থাকতেই এটি সতর্ক করে। কী কারণে তারা আটকে গেল, তাও গণনা করা হয়।
চুক্তি অনুযায়ী পার্শ্বপ্রতিক্রিয়াহীন — কোনো সারি তৈরি হয় না, কোটা কাটে না, ডেলিভারি হয় না এবং স্প্যাম স্কোরিংও করা হয় না।
এটি যেসব বিষয় যাচাই করে — বডির গঠন, অরিজিন, স্কিমা — তাতে এটি যে এন্ডপয়েন্টের পূর্বাভাস দেয় তার সাথে কখনো দ্বিমত পোষণ করে না; একটি টেস্ট উভয় স্থানে একই বডি পোস্ট করে তুলনা করে দেখে।
এটি অন্য কিছু যাচাই করে না। স্প্যাম, Turnstile এবং ফাইল ফিল্ডগুলো আসল POST রিকোয়েস্টের জন্য রেখে দেওয়া হয়, তাই একটি অনুমোদিত প্রি-ফ্লাইটের অর্থ হলো এই কনফিগারেশন এটি গ্রহণ করে, এটি কখনো সংরক্ষণ করার নিশ্চয়তা দেয় না।
আসল POST-এর মতোই একই রেট লিমিট ব্যবহার করে, যার মধ্যে একটি সংরক্ষিত অংশ থাকে যা কেবল আসল সাবমিশনই ব্যবহার করতে পারে।
POST /api/v1/f/ab12x9/preflightকার্যপদ্ধতির উদাহরণ
এন্ডপয়েন্ট কী উত্তর দেবে তা দেখতে ফিল্ডটি থেকে বাইরে ক্লিক করুন।
ফর্মের নিয়ম · message-এ min:20 · স্ট্রিক্ট মোড চালু
যে সাবমিশনটি কখনো পৌঁছায়নি, সেটিও এখনও পৌঁছাতে পারে।
আমাদের কাছে পৌঁছানোর আগেই: সংযোগ বিচ্ছিন্ন হওয়া, খুব দ্রুত ট্যাব বন্ধ করে দেওয়া — যার খবর কেউ পায় না, কারণ সাবমিটকারী ভাবেন তিনি পাঠিয়ে দিয়েছেন এবং FormFlow-এর রেকর্ড করার মতো কোনো ব্যর্থতাও থাকে না। ব্রাউজার আউটবক্স চালু করুন এবং চেষ্টাটি সংরক্ষিত থাকবে ও পরবর্তী পেজ লোডে পুনরায় পাঠানো হবে, যা একটি সাধারণ সাবমিশন হিসেবে এসে পৌঁছাবে — গণনাকৃত, ডেলিভারকৃত এবং আপনার ড্যাশবোর্ডে উদ্ধারকৃত হিসেবে চিহ্নিত। এটি লাইভ রেন্ডারিং চালুকৃত অবস্থায় আপনার কপি করা নেটিভ HTML ও Blade স্নিপেটের সাথেই আসে।
প্রতি ফর্ম অনুযায়ী বেছে নিন, এবং ফাইল ফিল্ডযুক্ত ফর্মে কখনো নয় — কারণ লোকাল স্টোরেজ থেকে আপলোড পুনর্নির্মাণ করা যায় না।
সাবমিটকারীর নিজস্ব ডিভাইসে 24 ঘণ্টার জন্য সংরক্ষিত থাকে, সর্বোচ্চ পাঁচটি অপেক্ষমাণ থাকে এবং তারা দেখতে পায় এমন কোনো ফর্মে কখনো পুনরায় দৃশ্যমান হয় না।
পুনরায় পাঠানোর সময় একটি Idempotency-Key থাকে যার ওপর ভিত্তি করে এন্ডপয়েন্ট রসিদ তৈরি করে, ফলে উদ্ধারকৃত লিডটি ঠিক একবারই সংরক্ষিত, গণনাকৃত এবং ডেলিভারি করা হয়। সেই হেডারটি ইনজেশন চুক্তিতে প্রকাশিত, যাতে আপনার নিজস্ব ক্লায়েন্টও এটি পাঠাতে পারে।
নেটওয়ার্ক ব্যর্থতা বা 5xx ত্রুটি পরবর্তী পেজ লোডের জন্য কিউতে জমা থাকে; আর এন্ডপয়েন্ট যেগুলোর উত্তর দিয়েছে সেগুলো বাতিল করা হয়।
পর্যালোচনা এবং পুনরুদ্ধার
একটি প্রত্যাখ্যাত সাবমিশন মুছে ফেলা হয় না — এটি কারণ এবং দায়ী ফিল্ডসহ সংরক্ষণ করা হয়। FormFlow এরপর আপনার ট্রাফিকের উভয় দিক (গৃহীত ও প্রত্যাখ্যাত) বিশ্লেষণ করে এবং এমন একটি একক সেটিংস পরিবর্তন নির্ধারণ করে যা এগুলোর অধিকাংশ ফিরিয়ে আনে। যে পরিবর্তনে আপনার ইতিমধ্যে গৃহীত একটি সাবমিশনও নষ্ট হতে পারে, তা বাতিল করা হয় এবং কখনো দেখানো হয় না।
আটককৃত · প্রত্যাখ্যাত সাবমিশনcontact-form · গত 7 দিন
dana@meridian.co
Quote for 40 units — my number is 0161 496 0000
প্রত্যাখ্যাত · phone
t.okonkwo@brightside.dev
Can you invoice us? Reachable on 020 7946 0102
প্রত্যাখ্যাত · phone
hello@fieldnotes.studio
Interested in the annual plan — call 0117 496 0999
প্রত্যাখ্যাত · phone
তাদের জানানো হয়েছিলphone ফিল্ডটি এই ফর্ম গ্রহণ করে না।
312 এই সপ্তাহে প্রত্যাখ্যাত · 40 গৃহীত
আপনার নিজস্ব ট্রাফিক থেকে প্রাপ্তপ্রস্তাবনা
phone গ্রহণ করুন — এমন একটি ফিল্ড যা আপনার ফর্ম পাঠায় কিন্তু স্কিমাতে কখনো ঘোষণা করা হয়নি।
পুনরুদ্ধার করে
312টি প্রত্যাখ্যাত
ক্ষতি
0টি গৃহীত
এই ফর্মের সাম্প্রতিক ট্রাফিকের সাথে যাচাইকৃত — সম্প্রতি গৃহীত কয়েকশত এবং প্রত্যাখ্যাত সাবমিশনের বিপরীতে।
আপনার গৃহীত ট্রাফিকের ওপর আগেই যাচাইকৃত শিথিলকরণ কারো লগইন করার অপেক্ষা না করেই লাইভ হতে পারে, ফলে কেউ নজর না রাখলেও ফর্মটি লিড প্রত্যাখ্যান করা বন্ধ করে। আপনি চালু না করা পর্যন্ত এটি বন্ধ থাকে, এবং ট্রাফিক নিশ্চিত না করলে FormFlow নিজে থেকে করা যেকোনো পরিবর্তন আপনার নির্বাচিত সেটিংসে ফিরিয়ে নেয়। কোনো সমস্যা হলে — কিউ থমকে গেলে, বিভ্রাট দেখা দিলে, বা কেউ তদারকি না করলে — স্বয়ংক্রিয়ভাবে আগের অবস্থায় ফিরে যায়, কারণ পরিবর্তনের সাথে সাথেই পূর্বাবস্থায় ফেরার উপায় রেকর্ড করা থাকে।
যখন কোনো পরিবর্তন ঘটে, একটি ইমেলে কী পরিবর্তন হয়েছে ও তা কী ফিরিয়ে এনেছে তা জানানো হয়, এবং আপনার পুরোনো সেটিংস পুনরুদ্ধার করার পেজের লিঙ্ক দেওয়া থাকে। পুনরুদ্ধারকৃত লিডগুলো বর্তমান সেটিংস অনুযায়ী আবার মূল্যায়ন করা হয়, গণনা করা হয় এবং অন্য যেকোনো সাবমিশনের মতোই ডেলিভারি করা হয়। পেছনের কোনো তারিখ দিয়ে হিসাব করা হয় না।
আর যখন ফর্মটি নিজেই বিকল হয়ে যায়, তখনো কেউ আপনাকে জানায় না।
সাইটে যুক্ত করার অনেক পরেও আপনার HTML আপনার সাইটেই থেকে যায় — তাই কোনো নষ্ট বা সম্পাদিত ফর্ম নীরবে ব্যর্থ হয় এবং FormFlow-এ কোনো ত্রুটি পৌঁছায় না। ফর্মের স্বাস্থ্য এমন কিছু নয় যা কেউ FormFlow-কে জানায়; এটি ট্রাফিক থেকে গণনা করা হয় এবং প্রথমবার ত্রুটি দেখা দিলেই আপনাকে ইমেলে জানানো হয়।
প্রত্যাখ্যান — এর নিজস্ব ট্রাফিকের একটি বাস্তব অংশ ফিরিয়ে দিচ্ছে। খরার (drought) পরিবর্তে এটি রিপোর্ট করা হয়, কখনো পাশাপাশি নয়।
ট্র্যাফিক-ঘাটতি — ফর্মের নিজস্ব বেসলাইনের তুলনায় সাবমিশন আশঙ্কাজনকভাবে কমে যায়।
বিচ্যুতি — এমন একটি ঘোষিত ফিল্ড যা ট্রাফিকের মাধ্যমে পাঠানো নীরবে বন্ধ হয়ে গেছে।
আগেই থেমে যাওয়া — যে ফিল্ডটিতে সাবমিটকারীরা বারবার ব্যর্থ হচ্ছেন, তারা পেজে থাকাকালীনই তা গণনা করা হয়।
ফর্ম থেকে ফলাফল পর্যন্ত।
পণ্যটিই হলো সম্পূর্ণ পথ। একটি বিদ্যমান HTML ফর্মকে একটি URL-এর দিকে নির্দেশ করুন; FormFlow হস্তান্তর, মূল্যায়ন, পুনরুদ্ধার এবং ডেলিভারিকে পুরোপুরি স্বচ্ছ রাখে।
আপনার বিদ্যমান ফ্রন্টএন্ড অপরিবর্তিত রাখুন। এরপর Send-এর পর কী ঘটে তা FormFlow-কে দেখাতে দিন: ফিল্ডগুলো বর্তমান ফর্ম অনুসরণ করতে পারে, গ্রাহকের কারণে হওয়া প্রত্যাখ্যান পুনরুদ্ধারযোগ্য থাকতে পারে এবং প্রতিটি প্রাপক তার নিজস্ব ডেলিভারির বাধ্যবাধকতা বজায় রাখে।
হোস্ট করা পৃষ্ঠাগুলি Starter Lite, Starter এবং Pro প্ল্যানে উপলব্ধ।
হোস্ট করা পেজসহ Starter Lite, Starter এবং Pro প্ল্যানে রোস্টার সুবিধাটি উপলব্ধ।
লাইভ রেন্ডারিং
নেটিভ HTML বা Blade কম্পোনেন্ট কপি করার সময় এটি বেছে নিন। বর্তমান ফিল্ড তালিকা ফর্ম অনুসরণ করতে পারে, যেখানে পেস্ট করা মার্কআপ নেটিভ ফলব্যাক হিসেবে থাকে এবং স্টাইল আপনার কপি করা পছন্দ অনুযায়ী বজায় থাকে।
পুনরুদ্ধার
পুনরুদ্ধার কোনো বাইপাস নয় এবং কোনো ওয়েবহুক পুনর্চেষ্টা নয়। FormFlow সংরক্ষিত প্রত্যাখ্যানকে ফর্মের বর্তমান লাইভ সেটিংসের সাথে পুনরায় মূল্যায়ন করে; কেবল তখনই এটি একটি আসল সাবমিশনে পরিণত হয়, বর্তমান ব্যবহার খরচ করে এবং একই ডেলিভারি পাথে প্রবেশ করে।
একটি পাবলিক রাইট
ফর্ম টোকেন হলো পাবলিক রাইট হস্তান্তর মাধ্যম। FormFlow রিকোয়েস্ট গ্রহণ করে, মূল্যায়ন করে, সাবমিশন বা প্রত্যাখ্যান সংরক্ষণ করে এবং পরবর্তী ডেলিভারির সিদ্ধান্ত একই রেকর্ডকৃত পথের মধ্যে রাখে।
আর সময় গণনা আমাদের হাতে, ব্রাউজারের হাতে নয়।
প্রশ্ন প্রদর্শিত হওয়ার সাথে সাথে একটি সিটিং (Sitting) শুরু হয় এবং সেই মুহূর্তে কার্যকর সময়সীমা অনুযায়ী সিটে (Seat) শেষ সময় নির্ধারিত হয়ে যায়। ইনজেশন ব্যবস্থা আসার সময়টিকে সেই শেষ সময় এবং অপ্রকাশিত একটি নির্দিষ্ট অতিরিক্ত সময়ের সাথে তুলনা করে — পেজে সময় শূন্যের দিকে গণনা হতে থাকে।
শুরুর সময়টি কেবল একবারই রেকর্ড করা হয়। পুনরায় সাইন ইন করা, কুকিজ মুছে ফেলা, রিলোড দেওয়া, প্রাইভেট উইন্ডো খোলা — কোনো কিছুতেই এটি পুনরায় শুরু হয় না। এটি বাস্তব সময়ের ঘড়িতে চলে, ঠিক যেমন একটি পরীক্ষাকেন্দ্রে ঘটে থাকে।
ত্রিশ জন পরীক্ষায় বসে থাকা অবস্থায় সময়সীমা কমিয়ে দিলে কারো পরীক্ষার সময় কমে না; নতুন সময়সীমা কেবল এরপর শুরু হওয়া সিটিংগুলোর ক্ষেত্রে প্রযোজ্য হয়।
সময় শেষ হওয়ার সংকেতের পরেও উত্তরপত্র টিকে থাকে। একটি সময়সীমাযুক্ত ফর্ম আবশ্যকীয় ফিল্ডগুলো বাধ্যতামূলক করা বন্ধ করে দেয়, তাই চল্লিশ নম্বর প্রশ্নটি খালি রেখেও সাবমিট করা যায় — তবে অঘোষিত ফিল্ডগুলো যথারীতি প্রত্যাখ্যাত হয়, যা আপনাকে সুরক্ষিত রাখার দিক থেকে স্কিমাকে একটি চুক্তি হিসেবে বজায় রাখে।
কোনো উত্তর জমা পড়ুক বা না পড়ুক, সময়সীমা শেষ হলেই সিট (Seat) খরচ হয়ে যায়, ফলে প্রশ্ন পড়ে রেখে পরদিন ফিরে এসে সময় গণনাকে ফাঁকি দেওয়া সম্ভব নয়।
একটি ইনবক্স, যা ছড়িয়ে যায় আপনার প্রয়োজনীয় প্রতিটি স্থানে।
এক জায়গায় সেগুলো পড়ুন — এবং একই সাবমিশন আপনার সংযুক্ত প্রতিটি গন্তব্যে পাঠিয়ে দিন।
স্বাক্ষরিত ওয়েবহুক
প্রতিটি সাবমিশন একটি HMAC স্বাক্ষরসহ আপনার এন্ডপয়েন্টে POST করা হয় যা আপনি যাচাই করতে পারেন। দশ সেকেন্ড থেকে দুই ঘণ্টার ব্যবধানে মোট ছয়টি প্রচেষ্টা চালানো হয়, এবং প্রতিটি প্রচেষ্টাই সাবমিশনের বিপরীতে রেকর্ড করা হয়। যে এন্ডপয়েন্ট একবারও সফল হয় না তা বন্ধ করে দেওয়া হয় এবং এর মালিকদের সর্বশেষ ত্রুটি সম্পর্কে ইমেল করা হয় — ফলে অকেজো URL-এ অনির্দিষ্টকাল চেষ্টা করা বন্ধ হয় এবং আপনিও বিষয়টি জানতে পারেন।
মূল মেসেজ বডিতে কী থাকবে তা বেছে নিন: FormFlow-এর নিজস্ব স্বাক্ষরিত JSON, অথবা কোনো Slack চ্যানেলে পড়ার উপযোগী বার্তা। ফরম্যাট কেবল মেসেজ বডি নির্ধারণ করে, অন্য কিছু নয় — স্বাক্ষর, পুনর্চেষ্টা ও ব্যাকঅফ উভয় ক্ষেত্রেই একই থাকে, এবং কোনো URL যা নিজেই একটি ক্রেডেনশিয়াল, তা সংরক্ষণের পর আর কখনো প্রদর্শিত হয় না।
সাবমিশন ডাইজেস্ট
আপনার টিমের জন্য একটি সাপ্তাহিক বা মাসিক ইমেল, যা প্রতিটি ফর্মকে অন্তর্ভুক্ত করে — প্রতি সাবমিশনের জন্য আলাদা নয়। অথবা ইনবক্স ও ওয়েবহুক যথেষ্ট হলে এটি বন্ধ রাখতে পারেন। বট কখনো এতে অন্তর্ভুক্ত হয় না।
CSV · XLSX · JSON export
প্যানেল থেকে সম্পূর্ণ ইনবক্স এক্সপোর্ট করুন। FormFlow কিউ ব্যবহার করে ফাইল তৈরি করে এবং আপনাকে একটি স্বাক্ষরিত লিঙ্ক ইমেল করে যা এক ঘণ্টার মধ্যে মেয়াদোত্তীর্ণ হয় — স্প্রেডশিটগুলো ফর্মুলা-ইনজেকশন থেকে সুরক্ষিত।
সাবমিটকারীর রসিদ
ফর্ম পূরণকারী ব্যক্তির কাছে একটি স্বয়ংক্রিয় উত্তর, যা ফর্মে আপনার ঘোষিত ইমেল ফিল্ডে পাঠানো হয়। বিষয় ও মূল বার্তা আপনার নির্ধারিত; তাদের উত্তরগুলো কেবল সেখানেই প্রদর্শিত হয় যেখানে আপনি প্লেসহোল্ডার রাখবেন (টেক্সট হিসেবে এস্কেপ করা), এবং পুরো পেলোড কখনো ইমেলে কপি করা হয় না। কেউ সদস্যপদ প্রত্যাহার করলে তিনি বাইরেই থাকেন, এবং হঠাৎ জনপ্রিয় হওয়া ফর্মের জন্য প্রতি টিমের একটি সর্বোচ্চ সীমা নির্ধারণ করা থাকে। পেইড প্ল্যান।
উপরের সবকিছুই একটি একক স্থানে এসে পৌঁছায় যেখানে আপনি কাজ করতে পারেন।
এন্ডপয়েন্ট সেটআপ করতে মাত্র দুই মিনিট সময় লাগে; আর এটিই হলো সেই অংশ যা আপনি সোমবার সকালে খোলেন। এটি প্রথমে একটি প্রশ্নের উত্তর দেয় — এই মুহূর্তে আমার কী দেখা প্রয়োজন — যেখানে সক্রিয় প্রতিটি অবস্থার জন্য একটি করে সারি, তার কারণ এবং সে বিষয়ে পদক্ষেপ নেওয়ার একটি নির্দিষ্ট লিঙ্ক থাকে। তুলনা করার জন্য কোনো জটিল কাউন্টার নেই: কেবল একটি সংখ্যা কোনো উত্তর নয়। তার নিচে, ইনবক্সটি কোনো ড্যাশবোর্ড নয় বরং একটি টেবিল: অপঠিত ফিল্টার করুন, বটগুলো বাদ দিন, তারিখের পরিসীমা নির্বাচন করুন, ফিল্টার করা অংশটি হুবহু এক্সপোর্ট করুন এবং সম্পূর্ণ ডেলিভারি হিস্ট্রি দেখতে যেকোনো সাবমিশন ওপেন করুন।
acme · dashboard4টি বিষয়ে আপনার মনোযোগ প্রয়োজন
কোটার কাছাকাছিএই মেয়াদে 3,000টি সাবমিশনের মধ্যে 2,540টি ব্যবহৃত হয়েছে।বিলিং পর্যালোচনা করুন
40 ইউনিটের উদ্ধৃতি — একটি প্রত্যাখ্যান থেকে পুনরুদ্ধারকৃত
পুনরুদ্ধারকৃত
webhookhttps://acme.dev/hooks/formflowডেলিভারি সম্পন্ন · প্রচেষ্টা 2
webhookhttps://crm.acme.dev/intake502 Bad Gateway · 5 মিনিটে পুনরায় চেষ্টা করা হবে
digestসাপ্তাহিক · 3 জন প্রাপককিউতে রয়েছে
buy-now-bot
🔥 crypto doubler, act now, limited spots
0.98
একই টেবিল আটককৃত সাবমিশনের লেজারের পেছনে থাকে, যেখানে কারণ, ত্রুটিপূর্ণ ফিল্ড এবং সাবমিটকারীকে হুবহু যা জানানো হয়েছিল তা উল্লেখ থাকে — ফলে একটি লিড পুনরুদ্ধার করার অর্থ হলো কেন এটি প্রত্যাখ্যাত হয়েছিল তা পড়ে দেখা এবং এরপর 'পুনরুদ্ধার করুন' (Recover) বাটনে ক্লিক করা।
এবং তাদের প্রতিটি পুনরায় পড়ে নিন।
প্যানেলে তৈরি করা একটি টোকেনের মাধ্যমে HTTP-এর সাহায্যে একই সাবমিশনগুলো পাওয়া যায়: ইনবক্স, আইডি অনুযায়ী নির্দিষ্ট সাবমিশন, আপনার ফর্ম এবং প্রত্যাখ্যাত লেজার। কার্সার-প্যাজিনেটেড এবং ফিল্টারযোগ্য, যাতে আপনার ডেটা ওয়্যারহাউস বা CRM-এ রাতের সিঙ্কে সবকিছুর পরিবর্তে কেবল যা পরিবর্তিত হয়েছে তা চাওয়া যায় এবং ব্রাউজারের কোনো প্রয়োজন হয় না।
কাঠামোগতভাবেই এটি কেবল পড়ার জন্য (Read-only)। একটি টোকেনে submissions:read, refusals:read এবং forms:read-এর কিছু অংশ থাকে — কোনো লেখার অনুমতি দেওয়ার সুযোগ নেই, কারণ এমন কোনো দক্ষতাই রাখা হয়নি।
টোকেন তৈরির সময় কেবল একবারই প্রদর্শিত হয় এবং ঐচ্ছিক মেয়াদসহ হ্যাশ হিসেবে সংরক্ষিত থাকে। FormFlow এটি আপনাকে পুনরায় দেখাতে পারে না, এমনকি ডাটাবেজে প্রবেশকারী কেউও তা দেখতে পারে না।
এর নিজস্ব প্রতি মিনিটের বাজেট রয়েছে, যা আপনার প্ল্যানের সাথে বৃদ্ধি পায় এবং আপনার ফর্ম যে হারে সাবমিশন গ্রহণ করে তা থেকে আলাদা রাখা হয় — ফলে কোনো ব্যস্ত সিঙ্ক আসল লিডের জন্য প্রয়োজনীয় স্পেস কখনো নষ্ট করতে পারে না।
পেইড প্ল্যান। একটি ফ্রি টিমের টোকেনের ক্ষেত্রে খালি তালিকার পরিবর্তে management_api_unavailable রেসপন্স দেওয়া হয়, ফলে কারণটি কখনো অজানা থাকে না।
ট্যারিফযা সফলভাবে জমা হয় তার ওপর চার্জ প্রযোজ্য · বট যা পাঠায় তার ওপর নয়
যা সফলভাবে জমা হয় কেবল তার জন্যই অর্থ দিন। বট যা পাঠায় তার জন্য নয়।
স্প্যাম গণনা করার আগেই ফিল্টার করা হয়। ফ্রি প্ল্যানে কঠোর সীমাসহ 100টি সাবমিশন অন্তর্ভুক্ত; পেইড প্ল্যানগুলো খরচ বা সুরক্ষার সর্বোচ্চ সীমায় না পৌঁছানো পর্যন্ত স্বচ্ছ অতিরিক্ত ব্যবহারের (Overage) সুযোগ দেয়। আপনার অন্তর্ভুক্ত সীমার অর্ধেক, চার-পঞ্চমাংশ এবং সম্পূর্ণ শেষ হলে আপনাকে ইমেল করা হয়, যাতে ব্যস্ত মাসে কী ঘটছে তা চালানের (invoice) মাধ্যমে জানার বদলে আগেই অবগত হতে পারেন।
আনুমানিক হিসাব USD-তে গণনা করা হয়; Paddle চেকআউটের সময় তা রূপান্তর করে এবং প্রযোজ্য ট্যাক্স যোগ করে।
ফ্রি-সহ প্রতিটি প্ল্যানে: যত খুশি ফর্ম, প্রতিটি ফর্মের স্প্যাম মডেল ও তার প্রশিক্ষণ, পর্যালোচনার জন্য সংরক্ষিত প্রত্যাখ্যাত সাবমিশন, লাইভ রেন্ডারিং ও ব্রাউজার রেসকিউ, স্বাক্ষরিত ওয়েবহুক, ডাইজেস্ট এবং CSV · XLSX · JSON এক্সপোর্ট।
এছাড়াও সর্বত্র রয়েছে: ইমেল আমন্ত্রণসহ মালিক (Owner) ও সদস্য (Member) রোল, ঐচ্ছিক টু-ফ্যাক্টর সাইন-ইন, যেকোনো ফর্মের জন্য পজ সুইচ, সম্পূর্ণ অ্যাক্টিভিটি লগ এবং জিডিপিআর (GDPR) ডেটা রিটেনশন — ইমেল ঠিকানা ও আইপিগুলো কীড হ্যাশ (keyed hash) হিসেবে সংরক্ষিত এবং নির্দিষ্ট সময়সূচী অনুযায়ী মুছে ফেলা হয়। ফ্রি প্ল্যান প্রতি ক্যালেন্ডার মাসে রিসেট হয়; পেইড প্ল্যানগুলো আপনার বিলিং মেয়াদে রিসেট হয়। পেইড মূল্যগুলো আপনার অবস্থানের জন্য Paddle দ্বারা স্থানীয় মুদ্রায় প্রদর্শিত হয় এবং এতে কর (tax) অন্তর্ভুক্ত থাকতে পারে। আমাদের রিফান্ড পলিসি দেখুন।
আপনার প্রথম ফর্মটি FormFlow-এর দিকে নির্দেশ করুন।
দুই মিনিটে একটি ফর্ম সংযুক্ত করুন এবং ইনবক্স পূর্ণ হতে দেখুন। টিম-ভিত্তিক বিলিং, এবং বট কখনো কোটার বিপরীতে গণনা করা হয় না। কোনো ব্যাকএন্ড তৈরি করতে হয় না, কোনো ফ্রন্টএন্ড হোস্ট করতে হয় না।