Aktualisieren
POST https://api.pushwoosh.com/messaging/v2/update
Ersetzt eine zuvor erstellte Nachricht, die durch ihren message_code identifiziert wird, durch eine neue Definition. Die Ersetzung ist eine vollständige Ersetzung, kein Patch: Die neue Definition wird genau wie gesendet angewendet, und der message_code ändert sich nicht.
Die Aktualisierung ist nur verfügbar, solange die Nachricht noch ausstehend ist – also für einen zukünftigen Versand geplant und noch nicht zur Verarbeitung oder Zustellung abgerufen wurde.
Um zu überprüfen, ob eine Nachricht noch in einem aktualisierbaren Zustand ist, siehe Nachrichtenstatus prüfen.
Anfrage
Anchor link toAuthentifizieren Sie sich mit Ihrem Server-API-Token im Authorization: Token <API_TOKEN>-Header.
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
message_code | string | Ja | Nachrichtencode der zu aktualisierenden Nachricht, wie von Notify in result.message_code zurückgegeben. |
request | object | Ja | Die vollständige neue Definition der Nachricht. Gleiche Form wie der Notify-Anfragetext – ein segment- oder transactional-Objekt. Wird genau wie Notify validiert. |
Beispielanfrage
Anchor link toEine Segmentnachricht neu planen und ihren Inhalt ändern:
curl -X POST https://api.pushwoosh.com/messaging/v2/update \ -H "Authorization: Token YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "message_code": "XXXX-XXXXXXXX-XXXXXXXX", "request": { "segment": { "application": "XXXXX-XXXXX", "platforms": ["IOS", "ANDROID"], "code": "active_users", "payload": { "content": { "localized_content": { "en": { "ios": { "body": "Updated message" }, "android": { "body": "Updated message" } } } } }, "schedule": { "at": "2026-05-02T12:00:00Z" }, "message_type": "MESSAGE_TYPE_MARKETING" } } }'Antwort
Anchor link toBei Erfolg wird HTTP 200 mit dem Ergebnis der aktualisierten Nachricht zurückgegeben. Der message_code bleibt unverändert.
{ "result": { "message_code": "XXXX-XXXXXXXX-XXXXXXXX", "unknown_identifiers": [] }}message_code(string): derselbe Code, der in der Anfrage übergeben wurde.unknown_identifiers(array of string): Kennungen in der neuen Definition, die nicht gefunden wurden, falls zutreffend (sieheNotify).
Fehler
Anchor link toFehler verwenden den Standard-gRPC-Gateway-Fehlerumschlag: { "code": ..., "message": ..., "details": [...] }.
| HTTP-Status | Bedingung |
|---|---|
400 | message_code fehlt. |
400 | Die neue request-Definition fehlt oder ist ungültig (sie wird genau wie Notify validiert). |
400 | Die Nachricht befindet sich nicht in einem aktualisierbaren Zustand (sie ist nicht mehr pending). |
403 | Die Nachricht gehört zu einem anderen Konto. |
404 | Für den angegebenen message_code existiert keine Nachricht. |
500 | Beim Laden der Nachricht oder Anwenden der Aktualisierung ist ein interner Fehler aufgetreten. Wiederholen Sie die Anfrage. |
Beispiel
Das Aktualisieren einer nicht mehr existierenden Nachricht gibt HTTP 404 zurück:
{ "code": 5, "message": "message not found", "details": []}Nachrichtenstatus prüfen
Anchor link toVor der Aktualisierung können Sie überprüfen, ob sich eine Nachricht noch in einem aktualisierbaren Zustand befindet. Neben dem Lesen der Spalte Status in der Nachrichtentabelle im Control Panel (Kampagnen → Einmalige Nachrichten) können Sie den Status auch programmatisch mit messages:list abfragen:
- Übergeben Sie den
message_codeimfilters.messages_codes-Array (zusammen mit dem erforderlichenfilters.application). - Lesen Sie das
status-Feld des übereinstimmenden Eintrags initems[].