Maytapi/Documentație/Ghid Python
Ghid PythonAproximativ 10 minuteCum trimiți un mesaj WhatsApp cu Python
Trimiteți mesaje text și media din Python cu o singură cerere HTTP, apoi primiți răspunsurile pe propriul webhook. REST și JSON simplu — fără SDK, fără aprobare de șabloane.
Ultima actualizare:
- Python
- REST + JSON
- fără SDK
- răspunsuri prin webhook
import requests
PID = "your-pid"
PHONE_ID = "your-phone-id"
TOKEN = "your-token"
res = requests.post(
f"https://api.maytapi.com/api/{PID}/{PHONE_ID}/sendMessage",
headers={"x-maytapi-key": TOKEN},
json={
"to_number": "4072xxxxx67",
"type": "text",
"message": "Hello from Python!",
},
timeout=10,
)
print(res.json())De ce aveți nevoie
Patru lucruri, toate disponibile în consolă în câteva minute.
-
cont
Un cont Maytapi
Înregistrați-vă și porniți perioada de probă gratuită — fără card.
-
telefon
Un număr asociat
Scanați codul QR cu WhatsApp de pe telefon. Numărul funcționează în continuare ca de obicei.
-
token
pid și token
Copiați-le din pagina de token a consolei; phone_id apare lângă numărul dumneavoastră.
-
Python
Un mediu Python
Este suficientă o versiune recentă de Python cu clientul HTTP standard.
Trimiteți un mesaj text cu Python
Trimiteți prin POST un corp JSON la /sendMessage, cu tokenul în antetul x-maytapi-key. Mesajul intră în coada telefonului, iar răspunsul vine imediat.
- ✓to_number în format internațional, de ex. 4072xxxxx67
- ✓type: text și textul mesajului
- ✓Răspunsul conține id-ul mesajului
curl -X POST "https://api.maytapi.com/api/$PID/$PHONE_ID/sendMessage" \
-H "x-maytapi-key: $TOKEN" \
-H "Content-Type: application/json" \
-d '{"to_number": "4072xxxxx67", "type": "text", "message": "Hello from Python!"}'{
"success": true,
"data": {
"chatId": "4072xxxxx67@c.us",
"msgId": "3EB065B353B9493D00C9"
}
}Trimiteți o imagine, un video sau un document
Folosiți același endpoint cu type media și un URL public sau un data URI base64. Adăugați opțional o descriere și un nume de fișier.
- ✓Imagini, video, audio, PDF și alte documente
- ✓Descrierea în câmpul text
- ✓Data URI base64 funcționează la fel ca URL-urile
res = requests.post(
f"https://api.maytapi.com/api/{PID}/{PHONE_ID}/sendMessage",
headers={"x-maytapi-key": TOKEN},
json={
"to_number": "4072xxxxx67",
"type": "media",
"message": "https://example.com/invoice-10482.pdf",
"text": "Your invoice for order #10482",
"filename": "invoice-10482.pdf",
},
timeout=10,
)Primiți răspunsuri cu un webhook Python
Înregistrați o singură dată URL-ul webhook. Mesajele primite și confirmările de livrare și citire sosesc în JSON; răspundeți prin URL-ul reply din fiecare eveniment.
- ✓Returnați rapid 200, apoi procesați evenimentul
- ✓Ignorați propriile mesaje cu fromMe
- ✓Folosiți event.reply pentru a răspunde în același chat
requests.post(
f"https://api.maytapi.com/api/{PID}/setWebhook",
headers={"x-maytapi-key": TOKEN},
json={"webhook": "https://example.com/maytapi/webhook"},
timeout=10,
)from flask import Flask, request
import requests
app = Flask(__name__)
@app.post("/maytapi/webhook")
def webhook():
event = request.get_json()
if event.get("type") == "message" and not event["message"]["fromMe"]:
requests.post(
event["reply"],
headers={"x-maytapi-key": TOKEN},
json={
"to_number": event["conversation"],
"type": "text",
"message": "Thanks! We received your message.",
},
timeout=10,
)
return "", 200Întrebări WhatsApp API cu Python
Întreabă echipa de suport orice pe WhatsApp. Timpul mediu de răspuns este sub 24 de ore.
Centru de ajutor →Există un SDK oficial pentru Python?
Nu este nevoie. API-ul este REST cu JSON, deci clientul HTTP standard din Python este suficient, așa cum arată exemplele de pe această pagină.
Pot trimite mesaje în grupuri din Python?
Da. Folosiți id-ul grupului (se termină în @g.us) ca to_number; endpoint-urile pentru grupuri sunt disponibile în toate planurile.
De ce nu a ajuns mesajul meu?
Verificați că starea telefonului este activă, apoi coada și jurnalele din consolă. Numerele noi trebuie încălzite înainte de trimiteri în volum.
Alte funcționalități WhatsApp API

Obține cheia și trimite primul mesaj în zece minute
Fără aprobare, fără șabloane, fără card. Toate endpointurile sunt deschise timp de trei zile.