

ข้อเสนอการขายแบบส่วนตัวในปริมาณมาก: Google Sheets + API (2026)
เพื่อสร้างข้อเสนอการขายแบบส่วนตัวในปริมาณมาก ให้เก็บข้อมูลลูกค้าเป้าหมายใน Google Sheet (หรือการส่งออกจาก CRM) แปลงแต่ละแถวเป็น prompt ที่มีโครงสร้าง และส่งไปยังจุดสิ้นสุด 2Slides Fast PPT POST /api/v1/slides/generate โดยใช้ themeId คงที่หนึ่งค่า เพื่อให้ทุกชุดสไลด์มีดีไซน์เหมือนกัน ข้อเสนอ 10 หน้าแต่ละชุดใช้เครดิต 100 เครดิต ประมาณ $0.25 มาถึงในรูปแบบ PPTX ที่แก้ไขได้ในเวลาประมาณ 30 วินาที และสามารถส่งอีเมลไปยังตัวแทนขายโดยอัตโนมัติ สูตรนี้เหมาะสำหรับผู้นำ RevOps และ sales ops รวมถึงผู้ก่อตั้งที่ทำการขายแบบ outbound ด้วยตัวเอง
ข้อสรุปสำคัญ
- การเรียก
POST /api/v1/slides/generateครั้งเดียวจะเปลี่ยนแถวในสเปรดชีตเป็นข้อเสนอ PPTX ที่ออกแบบและแก้ไขได้ โดยใช้เครดิต 10 ต่อหน้า themeIdคงที่จากGET /api/v1/themes/search?query=pitch deckทำให้ข้อเสนอ 200 ชุดมีลักษณะเหมือนกันทางสายตา ตัวแทนขายจึงแก้ไขเฉพาะเนื้อหาเท่านั้นresponseLanguageรับชื่อภาษาแต่ละแถว ("Spanish", "Portuguese") เพื่อให้บัญชี LATAM และ EMEA ได้ชุดสไลด์ภาษาท้องถิ่นจากชีตเดียวกัน- จุดสิ้นสุด generate อนุญาต 6 คำขอต่อหนึ่งนาทีต่อคีย์; คิว Python ที่หน่วงเวลาระหว่างชุดจะเคลียร์ข้อเสนอ 200 ชุดในเวลาประมาณ 70 นาที
- เครดิตฟรี 500 เครดิตเมื่อสมัครใช้งาน ครอบคลุมข้อเสนอทดสอบ 5 ชุด; ข้อเสนอผลิต 500 ชุดต่อเดือนมีค่าใช้จ่ายประมาณ $102.50 ในเครดิต
ใครเหมาะกับสูตรนี้
คุณเป็นผู้ดูแล RevOps หรือ sales ops หรือเป็นผู้ก่อตั้งที่ทำ outbound ด้วยตัวเอง ตัวแทนขายใช้เวลาประมาณ 45 นาทีในการสร้างชุดข้อเสนอที่เหมือนกัน 80% กับชุดก่อนหน้า ดังนั้นครึ่งหนึ่งของลูกค้าเป้าหมายที่ผ่านการคัดกรองจึงไม่เคยได้รับข้อเสนอที่ปรับแต่งเฉพาะตัว ข้อมูลลูกค้าเป้าหมายของคุณอยู่ใน Google Sheet หรือการส่งออกจาก CRM พร้อมข้อมูลบริษัท อุตสาหกรรม ปัญหา ระดับราคา และชื่อผู้ติดต่อ
อย่าใช้สูตรนี้เมื่อแต่ละข้อเสนอต้องการภาพประกอบเฉพาะหรือวิดีโอบรรยาย นั่นเป็นงานสำหรับ pipeline ที่ออกแบบด้วยภาพซึ่งจะกล่าวถึงในภายหลัง หากทีมขายของคุณใช้ HubSpot และต้องการให้ข้อเสนอถูกทริกเกอร์จากขั้นตอนดีล ให้ดูรูปแบบ CRM-native ใน HubSpot AI presentation and sales deck automation แทน
ภาพรวมของเวิร์กโฟลว์
| ขั้นตอน | เครื่องมือ | สิ่งที่เกิดขึ้น | จุดสิ้นสุด 2Slides / เครดิต |
|---|---|---|---|
| 1 | Google Sheets หรือการส่งออก CRM | หนึ่งแถวต่อผู้มุ่งหวัง: บริษัท, อุตสาหกรรม, ปัญหา, ระดับราคา, ผู้ติดต่อ, ภาษา | ไม่มี |
| 2 | 2Slides Templates Hub หรือ API | เลือกเทมเพลต pitch-deck หนึ่งแบบและบันทึก themeId | GET /api/v1/themes/search, ฟรี |
| 3 | Zapier Code step หรือ Python | สร้าง prompt userInput ที่มีโครงสร้างจากแถว | ไม่มี |
| 4 | Webhooks by Zapier หรือ requests | ส่งงานข้อเสนอด้วย mode: "async" | POST /api/v1/slides/generate, 10 เครดิต/หน้า |
| 5 | หน่วงเวลา 60 วินาที, จากนั้น GET | ตรวจสอบสถานะจน status เป็น success | GET /api/v1/jobs/{jobId}, ฟรี |
| 6 | ขั้นตอน Gmail หรือ SMTP | ส่งอีเมล PPTX ที่แก้ไขได้ downloadUrl ไปยังตัวแทนขาย | ไม่มี |
| 7 | อัปเดต Google Sheets | เขียน jobId และ downloadUrl กลับไปยังแถวเพื่อตรวจสอบ | ไม่มี |
ขั้นตอนที่ 1: จัดโครงสร้างชีตลูกค้าเป้าหมาย
คุณภาพของข้อเสนอขึ้นอยู่กับคอลัมน์ที่คุณป้อน ชีตแบนราบที่มีหนึ่งแถวต่อผู้มุ่งหวังและคอลัมน์เหล่านี้ก็เพียงพอแล้ว:
| company | industry | contact_name | contact_title | pain_points | pricing_tier | price | language | rep_email | status |
|---|---|---|---|---|---|---|---|---|---|
| Northwind Logistics | Freight and logistics | Mariana Ruiz | VP Operations | Manual dispatch scheduling; 18% empty-mile rate; no live ETAs | Growth | USD 1,800/month | Spanish | j.ortiz@yourco.com | ready |
| Contoso Clinics | Outpatient healthcare | David Chen | COO | Paper intake forms; 22-minute average wait; no-show rate 14% | Team | USD 950/month | English | a.park@yourco.com | ready |
สองกฎทำให้ prompt ด้านล่างน่าเชื่อถือ ประการแรก เขียน pain_points เป็นวลีสั้น ๆ คั่นด้วยเครื่องหมายเซมิโคลอน ไม่ใช่เป็นย่อหน้า เพื่อให้โมเดลเห็นปัญหาชัดเจนสามข้อ ประการที่สอง ใช้คอลัมน์ language ใส่ชื่อภาษาให้ตรงกับที่ API ต้องการ ("Spanish" ไม่ใช่ "es") คอลัมน์ status ช่วยให้อัตโนมัติข้ามแถวที่ประมวลผลแล้ว
ถ้าคุณส่งออกจาก CRM ให้แมปฟิลด์เดียวกัน Google Sheets API ก็สามารถอ่านชีตโดยตรงได้ถ้าคุณไม่อยากใช้การส่งออก CSV ในเวอร์ชัน Python ด้านล่าง
ขั้นตอนที่ 2: เลือก themeId หนึ่งค่าเพื่อให้ทุกข้อเสนอมีดีไซน์เหมือนกัน
ความสม่ำเสมอคือจุดประสงค์ของระบบข้อเสนอ ถ้าทุกชุดใช้เทมเพลตต่างกัน แบรนด์ของคุณจะดูเหมือนสิบบริษัท ค้นหาไลบรารีเทมเพลตครั้งเดียว เลือกเทมเพลต pitch-deck หรือข้อเสนอ และตั้งค่า themeId คงที่ในอัตโนมัติ
เรียกดูด้วยสายตาที่ 2slides.com/templates กรองด้วย Pitch Deck และจดชื่อเทมเพลตไว้

จากนั้นแก้ไขเทมเพลตเดียวกันเป็น ID จาก API จุดสิ้นสุดค้นหาฟรีและจำกัด 6 คำขอต่อหนึ่งนาที ซึ่งไม่เป็นปัญหาเพราะเรียกเพียงครั้งเดียว
curl -s "https://2slides.com/api/v1/themes/search?query=pitch%20deck&limit=5" \
-H "Authorization: Bearer $SLIDES_API_KEY"ผลลัพธ์จะแสดงเทมเพลตที่ตรงกับคำค้นพร้อม themeId และข้อมูลเมตา คัดลอก ID ไปเก็บในตัวแปรสภาพแวดล้อม (PROPOSAL_THEME_ID) เพื่อให้ขั้นตอน Zapier และสคริปต์ Python อ่านค่าเดียวกัน เปลี่ยนเทมเพลตปีละครั้ง ไม่ใช่ต่อดีล
API ขับเคลื่อนเครื่องมือ Fast PPT บนเว็บ: วางเนื้อหา เลือกเทมเพลต แล้วได้ PPTX จุดสิ้นสุดนี้ทำงานแบบไม่มี UI สำหรับทุกแถวในชีตของคุณ

ขั้นตอนที่ 3: สร้าง prompt และเรียก API อัตโนมัติข้อเสนอการขาย
prompt ข้อเสนอควรมีโครงสร้าง ไม่ใช่สนทนา บอกโมเดลว่าผู้มุ่งหวังคือใคร ปัญหาคืออะไร คุณแนะนำอะไร และแต่ละส่วนควรสร้างตามลำดับอย่างไร เก็บราคาบนสไลด์แยกเพื่อให้ตัวแทนแก้ไขได้โดยไม่กระทบส่วนอื่นของชุดสไลด์
นี่คือตัวอย่างการเรียกสำหรับแถวแรกในชีตด้านบน สังเกตว่า responseLanguage มาจากแถว และ mode เป็น "async" เพื่อให้เรียกแล้วคืนค่า job ID ทันที
curl -s -X POST https://2slides.com/api/v1/slides/generate \
-H "Authorization: Bearer $SLIDES_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"userInput": "Sales proposal for Northwind Logistics (freight and logistics). Prepared for Mariana Ruiz, VP Operations. Pain points: manual dispatch scheduling; 18% empty-mile rate; no live ETAs for customers. Recommended plan: Growth tier at USD 1,800/month for 25 dispatcher seats. Structure: 1) Our understanding of Northwind Logistics 2) Goals for the next 12 months 3) Proposed solution mapped to each pain point 4) 90-day rollout plan 5) Pricing (own slide) 6) Next steps. Consultative tone, no buzzwords.",
"themeId": "'"$PROPOSAL_THEME_ID"'",
"responseLanguage": "Spanish",
"mode": "async"
}'ทุกการตอบกลับของ 2Slides จะอยู่ในโครงสร้างเดียวกัน ซึ่งสำคัญเมื่อแมปฟิลด์ใน Zapier:
{ "success": true, "data": { "jobId": "a1b2c3d4", "status": "pending" } }ตรวจสอบสถานะงานทุก 5 ถึง 10 วินาที ชุด Fast PPT มักเสร็จในเวลาประมาณ 30 วินาที
curl -s https://2slides.com/api/v1/jobs/a1b2c3d4 \
-H "Authorization: Bearer $SLIDES_API_KEY"
# { "success": true, "data": { "jobId": "a1b2c3d4", "status": "success", "downloadUrl": "https://..." } }
ถ้าคุณไม่ใส่ mode จุดสิ้นสุดจะทำงานแบบ synchronous และคืนค่า downloadUrl ในการตอบกลับเดียวกัน นั่นง่ายกว่าสำหรับการเรียกครั้งเดียว แต่ async ปลอดภัยกว่าเมื่อแพลตฟอร์มอย่าง Zapier มี timeout HTTP สั้น และเหมาะสำหรับการประมวลผลเป็นชุด
ขั้นตอนที่ 4: สร้าง PowerPoint ด้วย Zapier จากแถวใหม่ในชีต
สำหรับทีมที่ไม่มีวิศวกรประจำ Zapier จะส่งข้อเสนอไปยังกล่องจดหมายตัวแทนภายในสองนาทีหลังจากแถวถูกตั้งค่าเป็น ready แอป Webhooks by Zapier ทำสองการเรียก API ส่วนที่เหลือเป็นขั้นตอนมาตรฐาน
- ทริกเกอร์: Google Sheets แถวใหม่หรืออัปเดต เพิ่มขั้นตอนกรองให้ทำงานเฉพาะแถวที่
statusเท่ากับready - Code by Zapier (JavaScript) หรือ Formatter: สร้าง
userInputจากคอลัมน์ในแถว (ตัวอย่างโค้ดด้านล่าง) - Webhooks by Zapier, POST ไปที่
https://2slides.com/api/v1/slides/generateหัวข้อAuthorization: Bearer <your key>และ JSON body มีuserInput,themeId,responseLanguage,mode: "async"แมปdata.jobIdจากการตอบกลับ - Delay by Zapier หน่วงเวลา 60 วินาที
- Webhooks by Zapier, GET
https://2slides.com/api/v1/jobs/{{jobId}}พร้อมหัวข้อเดียวกัน แมปdata.statusและdata.downloadUrl - Filter: ดำเนินการต่อเฉพาะถ้า
data.statusเท่ากับsuccessสำหรับงานที่ยังประมวลผลอยู่ ให้ใช้ Delay และ GET ซ้ำอีกครั้ง - Gmail: ส่งอีเมล ไปยัง
rep_emailโดยมีชื่อผู้มุ่งหวังในหัวเรื่องและdownloadUrlในเนื้อหาหรือไฟล์แนบ - Google Sheets: อัปเดตแถว เขียน
jobId,downloadUrlและตั้งค่าstatusเป็นdone
ขั้นตอน Code เก็บตรรกะ prompt ไว้ที่เดียว เพื่อให้ผู้จัดการฝ่ายขายเปลี่ยนโครงสร้างข้อเสนอได้โดยไม่ต้องแก้ webhook:
// Code by Zapier (JavaScript). inputData fields are mapped from the sheet row.
const {
company, industry, contact_name, contact_title,
pain_points, pricing_tier, price, language,
} = inputData;
const userInput = [
`Sales proposal for ${company} (${industry}).`,
`Prepared for ${contact_name}, ${contact_title}.`,
`Pain points: ${pain_points}.`,
`Recommended plan: ${pricing_tier} tier at ${price}.`,
`Structure: 1) Our understanding of ${company} 2) Goals for the next 12 months`,
`3) Proposed solution mapped to each pain point 4) 90-day rollout plan`,
`5) Pricing (own slide) 6) Next steps. Consultative tone, no buzzwords.`,
].join(" ");
output = { userInput, responseLanguage: language || "English" };เก็บ API key ในหัวข้อของ Webhooks อย่าเก็บในชีต ถ้าตัวแทนหลายคนตั้งค่าแถวเป็น ready พร้อมกัน Zapier อาจส่ง generate มากกว่า 6 ครั้งในหนึ่งนาที การเรียกเกินจะได้รับข้อผิดพลาด rate-limit และระบบ replay ในตัว Zapier จะจัดการให้ สำหรับปริมาณคงที่ ใช้ batch Python ด้านล่าง รูปแบบ Zapier เดียวกันนี้ใช้สำหรับชุดสไลด์รายสัปดาห์ใน automating weekly report slides with Zapier and 2Slides
ขั้นตอนที่ 5: สร้างข้อเสนอการขายแบบส่วนตัว 200 ชุดด้วย Python
เมื่อแคมเปญต้องการข้อเสนอ 200 ชุดภายในวันจันทร์ ให้รันสคริปต์แทนการเรียก Zap 200 ครั้ง สคริปต์ด้านล่างอ่าน CSV ที่ส่งออกจากชีต (ไฟล์, ดาวน์โหลด, CSV) ส่งงานเป็นชุดละ 6 เพื่อเคารพข้อจำกัด 6 คำขอต่อหนึ่งนาทีสำหรับ generate ตรวจสอบสถานะแต่ละงานด้วยช่วงเวลา 6 วินาทีเพื่อไม่เกิน 10 คำขอต่อหนึ่งนาทีสำหรับ jobs ดาวน์โหลด PPTX แต่ละไฟล์ และเขียนผลลัพธ์ลง CSV ที่สองซึ่ง Gmail merge หรือการนำเข้า CRM ใช้ได้
import csv, os, time, requests
API = "https://2slides.com/api/v1"
HEADERS = {
"Authorization": f"Bearer {os.environ['SLIDES_API_KEY']}",
"Content-Type": "application/json",
}
THEME_ID = os.environ["PROPOSAL_THEME_ID"] # from GET /themes/search?query=pitch deck
BATCH = 6 # generate: 6 requests/min per key
POLL_GAP = 6 # jobs: 10 requests/min -> one poll every 6 s
OUT_DIR = "proposals"
def build_prompt(row):
return (
f"Sales proposal for {row['company']} ({row['industry']}). "
f"Prepared for {row['contact_name']}, {row['contact_title']}. "
f"Pain points: {row['pain_points']}. "
f"Recommended plan: {row['pricing_tier']} tier at {row['price']}. "
f"Structure: 1) Our understanding of {row['company']} 2) Goals for the next 12 months "
f"3) Proposed solution mapped to each pain point 4) 90-day rollout plan "
f"5) Pricing (own slide) 6) Next steps. Consultative tone, no buzzwords."
)
def submit(row):
r = requests.post(f"{API}/slides/generate", headers=HEADERS, timeout=60, json={
"userInput": build_prompt(row),
"themeId": THEME_ID,
"responseLanguage": row.get("language") or "English",
"mode": "async",
})
r.raise_for_status()
body = r.json() # { success, data: { jobId, status } }
if not body.get("success"):
raise RuntimeError(body)
return body["data"]["jobId"]
def poll(job_id):
r = requests.get(f"{API}/jobs/{job_id}", headers=HEADERS, timeout=30)
r.raise_for_status()
return r.json()["data"] # { jobId, status, progress, downloadUrl }
def download(url, path):
with requests.get(url, stream=True, timeout=120) as r:
r.raise_for_status()
with open(path, "wb") as f:
for chunk in r.iter_content(65536):
f.write(chunk)
def main():
os.makedirs(OUT_DIR, exist_ok=True)
with open("prospects.csv", newline="", encoding="utf-8") as f:
rows = [r for r in csv.DictReader(f) if r.get("status") == "ready"]
results = []
for i in range(0, len(rows), BATCH):
batch = rows[i:i + BATCH]
window_start = time.time()
pending = {submit(row): row for row in batch}
print(f"submitted {len(pending)} jobs, {i + len(batch)}/{len(rows)} total")
while pending:
for job_id in list(pending):
time.sleep(POLL_GAP)
data = poll(job_id)
if data["status"] == "success":
row = pending.pop(job_id)
safe = row["company"].replace(" ", "_")
path = os.path.join(OUT_DIR, f"{safe}_proposal.pptx")
download(data["downloadUrl"], path)
results.append({**row, "jobId": job_id,
"downloadUrl": data["downloadUrl"],
"file": path, "status": "done"})
elif data["status"] == "failed":
row = pending.pop(job_id)
results.append({**row, "jobId": job_id, "downloadUrl": "",
"file": "", "status": "failed"})
# Never more than 6 generate calls inside any 60-second window.
elapsed = time.time() - window_start
if elapsed < 60:
time.sleep(60 - elapsed)
with open("proposals_out.csv", "w", newline="", encoding="utf-8") as f:
w = csv.DictWriter(f, fieldnames=list(results[0].keys()))
w.writeheader()
w.writerows(results)
if __name__ == "__main__":
main()ระยะเวลา: ชุดละ 6 งานใช้เวลาประมาณ 60 ถึง 120 วินาทีรวมการตรวจสอบสถานะ ดังนั้น 200 ข้อเสนอ (34 ชุด) จะเสร็จในเวลาประมาณ 70 นาทีด้วยคีย์เดียว สคริปต์นี้ทำงานซ้ำได้ตาม status ถ้าหยุดที่แถว 140 ให้รันใหม่และส่งเฉพาะแถว ready ที่เหลือ สำหรับการรันขนาดใหญ่และรูปแบบคิวเพิ่มเติม ดู how to batch-generate presentations with an AI API
ขั้นตอนที่ 6: ให้ตัวแทนขายได้ไฟล์ PPTX ที่แก้ไขได้ ไม่ใช่ PDF
ผลลัพธ์จาก generate คือไฟล์ PowerPoint แท้จริง: กล่องข้อความจริง ตารางจริง และแม่แบบสไลด์หลัก นี่คือเหตุผลที่ใช้ Fast PPT สำหรับข้อเสนอแทนชุดสไลด์ที่เรนเดอร์เป็นภาพ
ตัวแทนขายแก้ไขข้อเสนอหลังจากสร้างแล้ว อาจมีการอนุมัติส่วนลด เปลี่ยนจำนวนที่นั่งระหว่างโทรศัพท์ ฝ่ายกฎหมายต้องการเพิ่มข้อกำหนดในสไลด์เงื่อนไข โลโก้ลูกค้าต้องใส่บนหน้าปก ด้วย PPTX ที่แก้ไขได้ ตัวแทนเปิดไฟล์ แก้ไขสไลด์ราคา แล้วส่งต่อ ด้วย PDF หรือชุดภาพที่เรนเดอร์ การเปลี่ยนแปลงแต่ละครั้งต้องสร้างใหม่และตรวจสอบใหม่ทั้งชุด
ขั้นตอน Gmail (หรือเครื่องมืออีเมลของ CRM) ควรส่งไฟล์ PPTX เอง ไม่ใช่ลิงก์ดู และหัวเรื่องควรมีชื่อผู้มุ่งหวังเพื่อให้ตัวแทนหาง่ายภายหลัง ถ้าต้องการเอกสารสวยงามสำหรับฝากไว้ ตัวแทนสามารถส่งออกเป็น PDF จาก PowerPoint หลังแก้ไขได้
ชุดสไลด์ข้อเสนอที่ดีควรเป็นอย่างไร
ก่อนเขียนโครงสร้าง prompt ในขั้นตอนที่ 3 ควรดูชุดสไลด์จริง 2Slides Gallery มีชุดสไลด์อ้างอิงให้ศึกษาโครงสร้าง หรือใช้เป็น referenceImageUrl ในจุดสิ้นสุด create-like-this หากใช้ pipeline ออกแบบด้วยภาพ ชุดสไลด์เหล่านี้เป็นชุดอ้างอิง ไม่ใช่ผลลัพธ์จาก API ด้านบน


สามรูปแบบจากข้อเสนอที่ดีนำไปใช้ใน prompt ของคุณได้: เปิดด้วยสถานการณ์ของผู้มุ่งหวังในคำของเขาเอง (คอลัมน์ pain_points), เชื่อมโยงแต่ละจุดแก้ปัญหากับปัญหาแต่ละข้อ, และแยกราคาบนสไลด์เดียว สำหรับรายละเอียดแต่ละส่วน ดู how to create a sales enablement deck with AI
ค่าใช้จ่าย
Fast PPT คิดราคา 10 เครดิตต่อหน้า และข้อเสนอทั่วไปมี 10 หน้า การค้นหาเทมเพลตและตรวจสอบงานฟรี
| ปริมาณ | หน้า | เครดิต | แพ็คเครดิต | USD | ต่อข้อเสนอ |
|---|---|---|---|---|---|
| 20 ข้อเสนอ/เดือน | 200 | 2,000 | 1 × $5 (2,000) | $5.00 | $0.25 |
| 500 ข้อเสนอ/เดือน | 5,000 | 50,000 | 1 × $80 (40,000) + 1 × $22.50 (10,000) | $102.50 | $0.21 |
เครดิตฟรี 500 เครดิตเมื่อสมัครครอบคลุมข้อเสนอทดสอบ 5 ชุด เครดิตจ่ายตามการใช้งาน ไม่มีข้อกำหนดจำนวนที่นั่ง คีย์เดียวใช้ได้กับทีมขาย 12 คน
Fast PPT หรือสไลด์ออกแบบด้วยภาพสำหรับกรณีนี้?
| ความต้องการ | ใช้ | เหตุผล |
|---|---|---|
| ข้อเสนอแก้ไขได้ที่ตัวแทนแก้ไข | generate (Fast PPT), 10 เครดิต/หน้า | PPTX แท้, ~30 วินาที, เทมเพลตคงที่ |
| ชุดสไลด์ออกแบบเฉพาะสำหรับลูกค้าองค์กรไม่กี่ราย | create-pdf-slides, 10 + 100 เครดิต/หน้า ที่ 2K | เลย์เอาต์ออกแบบด้วยภาพจาก prompt สไตล์ |
| ให้เหมือนชุดสไลด์แบรนด์เดิม | create-like-this พร้อม referenceImageUrl, ราคาตามเดิม | สร้างระบบดีไซน์จากภาพอ้างอิง |
| วิดีโอบรรยายข้อเสนอสำหรับขายแบบ async | create-pdf-slides หรือ create-like-this แล้ว generate-narration ที่ 210 เครดิต/หน้า | งาน Fast PPT ไม่รองรับบรรยาย |
สำหรับเวิร์กโฟลว์ที่ใช้ชีตในบทความนี้ Fast PPT เป็นตัวเลือกเริ่มต้นที่เหมาะสม สำรอง pipeline ออกแบบภาพสำหรับ 5% ของดีลที่ดีไซน์เป็นตัวแปรสำคัญ
ข้อผิดพลาดทั่วไป
- ส่งเกิน 6 คำขอต่อหนึ่งนาที แถว 20 แถวที่ตั้งค่าเป็น ready พร้อมกันหมายถึง 20 POST ในไม่กี่วินาที คิวไว้: สคริปต์ Python แบ่งชุดละ 6 และรอครบ 60 วินาที; ใน Zapier ใช้ระบบ replay หรือหน่วงเวลา Delay
- API key อยู่ในชีตหรือสคริปต์ฝั่งไคลเอนต์ เก็บคีย์ในหัวข้อ webhook ของ Zapier หรือในตัวแปรสภาพแวดล้อมฝั่งเซิร์ฟเวอร์ ใครก็ตามที่มีชีตจะใช้เครดิตคุณหมด
- ใช้รหัสภาษาแทนชื่อภาษา
responseLanguageต้องการ "Spanish" หรือ "Portuguese" ไม่ใช่ "es" หรือ "pt-BR" ตรวจสอบคอลัมน์ด้วย dropdown ใน Sheets - คาดหวังบรรยายหรือ MP4 จาก Fast PPT จุดสิ้นสุด
generate-narrationรับงานจากcreate-pdf-slidesหรือcreate-like-thisเท่านั้น ข้อเสนอจากgenerateเป็น PPTX เท่านั้น - ใส่สคริปต์บันทึกการโทรค้นพบ 4,000 คำลงใน
userInputสรุปก่อน ปัญหาสามข้อคั่นด้วยเซมิโคลอนทำงานดีกว่ากำแพงข้อความ และสไลด์ราคายังคงสะอาด - แมปฟิลด์ตอบกลับผิด รหัสงานอยู่ที่
data.jobIdไม่ใช่ระดับบน โครงสร้าง{ success, data: { ... } }เหมือนกันกับการตอบกลับ poll
คำถามที่พบบ่อย
ฉันสามารถสร้างชุดสไลด์ขายจากข้อมูล CRM โดยไม่ใช้ Google Sheets ได้ไหม?
ได้ API ต้องการแค่สตริง userInput และ themeId ดังนั้นแหล่งข้อมูลใดก็ได้ เช่น workflow ใน HubSpot, การส่งออก Salesforce หรือ query Postgres Google Sheets สะดวกเพราะตัวแทนแก้ไขแถวและตั้งค่า ready ได้โดยไม่ต้องใช้วิศวกร สำหรับทริกเกอร์แบบ CRM-native จากการเปลี่ยนขั้นตอนดีล ดูรูปแบบ HubSpot ที่ลิงก์ไว้ก่อนหน้านี้ในบทความนี้
ใช้เวลาสร้างข้อเสนอหนึ่งชุดนานเท่าไหร่?
ประมาณ 30 วินาทีสำหรับชุด Fast PPT เมื่อเริ่มงานแล้ว ใน Zapier หน่วงเวลา 60 วินาทีก่อนตรวจสอบสถานะก็เพียงพอในเกือบทุกกรณี ใน batch Python หกข้อเสนอส่งภายในหนึ่งนาทีและมักเสร็จภายในนาทีถัดไป ดังนั้น 200 ข้อเสร็จในเวลาประมาณ 70 นาทีด้วยคีย์ API เดียว
ข้อเสนอทุกชุดจะดูเหมือนกันไหม?
ดีไซน์จะเหมือนกัน ซึ่งเป็นสิ่งที่ตั้งใจไว้ เพราะทุกงานใช้ themeId เดียวกัน สี ฟอนต์ และเลย์เอาต์เหมือนกันทั้งชุด และเปลี่ยนแค่เนื้อหาตามผู้มุ่งหวัง ถ้าต้องการสองดีไซน์ เช่น หนึ่งสำหรับองค์กรและหนึ่งสำหรับ SMB ให้เพิ่มคอลัมน์ theme ในชีตและแมปไปยัง themeId สองค่า
API การนำเสนออื่นรองรับอัตโนมัติแบบนี้ไหม?
ได้ Gamma API ที่ developers.gamma.app มีการสร้างอัตโนมัติคล้ายกัน แต่คีย์ API ต้องใช้แผน Pro คีย์ 2Slides ใช้ได้กับทุกบัญชี รวมถึงบัญชีฟรีที่มีเครดิต 500 เครดิต และผลลัพธ์ Fast PPT เป็น PPTX แท้ ไม่ใช่หน้าเว็บโฮสต์ ซึ่งทำให้ตัวแทนแก้ไขสไลด์ราคาได้จริง
ตัวแทนแก้ไขสไลด์ราคาหลังสร้างได้ไหม?
ได้ นั่นคือเหตุผลหลักที่ใช้เส้นทาง Fast PPT ไฟล์เป็น PPTX มาตรฐานที่มีกล่องข้อความและตารางแก้ไขได้ ตัวแทนสามารถเปลี่ยนจำนวนที่นั่ง ใช้ส่วนลดที่อนุมัติ หรือเพิ่มข้อกำหนดทางกฎหมายใน PowerPoint หรือ Google Slides โดยไม่ต้องสร้างใหม่ และส่วนที่เหลือของชุดสไลด์ไม่ถูกแตะต้อง
ขั้นตอนถัดไป
ข้อเสนอการขายแบบส่วนตัวในปริมาณมากประกอบด้วยสามส่วน: ชีตสะอาด เทมเพลตคงที่หนึ่งแบบ และคิวที่เคารพข้อจำกัด 6 คำขอต่อหนึ่งนาที
- รับ API key ที่ 2slides.com/api การสมัครมีเครดิตฟรี 500 เครดิตเพียงพอสำหรับข้อเสนอทดสอบ 5 ชุด
- เรียกดูสูตรทีมอื่นในโพสต์ฮับ AI presentation API use cases by team
- เจาะลึกด้านการขายด้วย HubSpot AI sales deck automation และ batch-generating presentations with an AI API
About 2Slides
Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.
Try For Free