-
Notifications
You must be signed in to change notification settings - Fork 111
Update content on Pushpad guide #992
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: push-provider-guides
Are you sure you want to change the base?
Conversation
❌ Deploy Preview for docs-novu failed. Why did it fail? →
|
WalkthroughExpanded the Pushpad integration doc into a step-by-step configuration and usage guide covering credential retrieval, dashboard setup, subscriber registration, and example API/SDK snippets for registering uids and sending notifications via Novu. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Developer
participant Pushpad
participant Novu
participant ClientSDK
rect rgba(54,162,235,0.08)
Developer->>Pushpad: Create project -> obtain Project ID & Access Token
Developer->>Novu: Add Pushpad credentials (Project ID, Token) in Integrations
end
rect rgba(75,192,192,0.06)
ClientSDK->>Pushpad: Register user uid and device token
Pushpad-->>ClientSDK: Confirmation (device registered)
ClientSDK->>Novu: (optional) Update subscriber with device token via API
Novu-->>ClientSDK: Subscriber updated
end
rect rgba(153,102,255,0.06)
Developer->>Novu: Create workflow / trigger notification (provider: Pushpad)
Novu->>Pushpad: Send notification with provider integration & device token
Pushpad-->>ClientSDK: Deliver push notification
end
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
content/docs/platform/integrations/push/(providers)/pushpad.mdx (1)
84-88: Fix invalid JSON syntax in the cURL example.Line 86 uses single quotes around the string value, which violates JSON specification. JSON requires double quotes for all string values.
Apply this diff to correct the JSON syntax:
-d '{ "providerId": "pushpad", - "deviceTokens": ['user123'], + "deviceTokens": ["user123"], "integrationIdentifier": "pushpad-MnGLxp8uy" }'
🧹 Nitpick comments (1)
content/docs/platform/integrations/push/(providers)/pushpad.mdx (1)
71-71: Align deviceTokens examples between Node.js and cURL.The Node.js example (line 71) shows multiple generic tokens, while the cURL example (line 86) shows a single uid. For consistency and clarity, both examples should demonstrate the same pattern. Since the guide explains that
uidis the identifier to use (line 49), both examples should consistently demonstrate this pattern.Consider updating the Node.js example to align with the uid pattern:
credentials: { - deviceTokens: ["token1", "token2", "token3"], + deviceTokens: ["user123"], },Alternatively, update the cURL example to show multiple tokens like the Node.js example for demonstration purposes.
Also applies to: 86-86
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (5)
public/images/channels-and-providers/push/pushpad/access-token.pngis excluded by!**/*.pngpublic/images/channels-and-providers/push/pushpad/add-token.pngis excluded by!**/*.pngpublic/images/channels-and-providers/push/pushpad/new-project.pngis excluded by!**/*.pngpublic/images/channels-and-providers/push/pushpad/project-id.pngis excluded by!**/*.pngpublic/images/channels-and-providers/push/pushpad/pushpad-integration.pngis excluded by!**/*.png
📒 Files selected for processing (1)
content/docs/platform/integrations/push/(providers)/pushpad.mdx(3 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
- GitHub Check: Redirect rules - docs-novu
- GitHub Check: Header rules - docs-novu
- GitHub Check: Pages changed - docs-novu
- GitHub Check: Build and Lint
🔇 Additional comments (2)
content/docs/platform/integrations/push/(providers)/pushpad.mdx (2)
37-37: Cross-references and external links are properly formatted.The internal cross-reference to Step 1 (line 37) uses correct markdown anchor formatting, and external links to Pushpad documentation include appropriate security attributes (
target="_blank"andrel="noopener noreferrer").Also applies to: 47-47, 23-23
6-116: Excellent restructuring of the Pushpad integration guide.The documentation has been significantly improved from a minimal setup mention to a comprehensive, step-by-step guide. The logical flow (credentials → connection → subscriber setup → sending notifications) guides users effectively. Clear instructions with image references and code examples in multiple languages make this highly usable.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
content/docs/platform/integrations/push/(providers)/pushpad.mdx (1)
78-92: Fix JSON syntax errors in cURL examples—multiple files affected.Single quotes are not valid in JSON. The original issue at pushpad.mdx line 86 also appears in two other provider examples. All three require correction:
- pushpad.mdx line 86:
"providerId": "pushpad", - "deviceTokens": ['user123'], + "deviceTokens": ["user123"], "integrationIdentifier": "pushpad-MnGLxp8uy"
- pusher-beams.mdx line 55:
"providerId": "pusher-beams", - "deviceTokens": ['userId-from-pusher-beams'], + "deviceTokens": ["userId-from-pusher-beams"], "integrationIdentifier": "pusher-beams-MnGLxp8uy"
- push-webhook.mdx line 58:
"providerId": "push-webhook", - "deviceTokens": ['ANY_RANDOM_STRING'], + "deviceTokens": ["ANY_RANDOM_STRING"], "integrationIdentifier": "push-webhook-MnGLxp8uy"The field name
deviceTokensis correct and matches the Novu API specification and other correctly-formatted examples (FCM, APNS, OneSignal, Expo all use this same field name with proper double quotes).
🧹 Nitpick comments (2)
content/docs/platform/integrations/push/(providers)/pushpad.mdx (2)
45-49: Clarify relationship between uid and deviceTokens array.The text explains that a
uidis a single identifier assigned per user (line 49), but the code examples below showdeviceTokensas an array that can contain multiple tokens. Clarify whether:
- A single uid maps to a single device token in the array, or
- Multiple uids can be registered as multiple device tokens for the same subscriber
Consider adding explicit guidance: "For Pushpad, register the
uidas a device token in thedeviceTokensarray."
69-69: Clarify that integrationIdentifier is a placeholder.The
integrationIdentifiervalue ("pushpad-MnGLxp8uy") appears in both code examples but is not clearly marked as a placeholder.Add a note explaining:
- This is a placeholder value
- How to find/retrieve the actual integration identifier for their Pushpad integration in Novu
- Whether they should use the integration name created in Step 2 or find it elsewhere in the dashboard
This prevents users from copying the placeholder value directly and encountering failures.
Also applies to: 87-87
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
content/docs/platform/integrations/push/(providers)/pushpad.mdx(3 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
- GitHub Check: Redirect rules - docs-novu
- GitHub Check: Header rules - docs-novu
- GitHub Check: Pages changed - docs-novu
- GitHub Check: Build and Lint
🔇 Additional comments (3)
content/docs/platform/integrations/push/(providers)/pushpad.mdx (3)
6-8: Clear and informative introduction.The expanded introductory content effectively sets context for the guide and clearly describes Pushpad's capabilities.
10-39: Well-structured configuration guide with clear steps.The dual-step approach (obtaining credentials then connecting in Novu) is logical and easy to follow. Cross-references and visual aids enhance clarity.
Please verify that all referenced images exist in the correct path:
/images/channels-and-providers/push/pushpad/new-project.png/images/channels-and-providers/push/pushpad/project-id.png/images/channels-and-providers/push/pushpad/add-token.png/images/channels-and-providers/push/pushpad/access-token.png/images/channels-and-providers/push/pushpad/pushpad-integration.png
94-116: Clear workflow trigger example.The example effectively demonstrates the minimal required pattern for sending a notification via Novu's trigger API. The explanation on line 96 appropriately directs readers to the workflow creation documentation.
Summary by CodeRabbit