From podium-pack
Podium core workflow a — business messaging and communication platform integration. Use when working with Podium API for messaging, reviews, or payments. Trigger with phrases like "podium core workflow a", "podium-core-workflow-a".
npx claudepluginhub flight505/skill-forge --plugin podium-packThis skill is limited to using the following tools:
Build a complete messaging workflow with Podium: send messages, receive inbound messages via webhooks, and manage conversation threads.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
Build a complete messaging workflow with Podium: send messages, receive inbound messages via webhooks, and manage conversation threads.
podium-install-auth with OAuth tokensimport express from 'express';
const app = express();
app.post('/webhooks/podium', express.json(), async (req, res) => {
const event = req.body;
if (event.type === 'message.received') {
const msg = event.data;
console.log(`From: ${msg.attributes['contact-phone']}`);
console.log(`Body: ${msg.attributes.body}`);
// Auto-reply or route to agent
await sendReply(msg.attributes['location-uid'], msg.attributes['contact-phone'], 'Thanks for reaching out!');
}
res.status(200).json({ received: true });
});
const { data } = await podium.post('/webhooks', {
data: {
attributes: {
url: 'https://your-app.com/webhooks/podium',
events: ['message.received', 'message.sent', 'message.failed'],
},
},
});
console.log(`Webhook registered: ${data.data.id}`);
async function sendReply(locationId: string, phone: string, body: string) {
const { data } = await podium.post(`/locations/${locationId}/messages`, {
data: { attributes: { body, 'contact-phone': phone } },
});
return data.data.id;
}
| Error | Cause | Solution |
|---|---|---|
| Webhook not firing | URL not HTTPS | Use HTTPS endpoint |
| Message failed | Invalid phone | Verify E.164 format |
| No events received | Wrong event types | Check webhook configuration |
Reviews and payments: podium-core-workflow-b