Podium

Podium

API integration

Expand your

Helpdesk

integrations with the

Podium

API integration.

Perform all CRUD operations through our Proxy and Unified APIs.

Perform all CRUD operations through our Proxy and Unified APIs.

Trusted by world-class product and engineering teams

  • Claira
  • Senja
  • springworks
  • TruvaAI
  • Sprinto
  • Dos&Co
  • Spendflo
  • Dos&Co
  • ZenAdmin
  • Cloudficient

Trusted by world-class product and engineering teams

  • Claira
  • Senja
  • Springworks
  • TruvaAI
  • Sprinto
  • SaaSMonk
  • Spendflo
  • Dos&Co
  • ZenAdmin
  • Cloudficient
  • Findr

superAI

Comprehensive Podium AI Agent toolset with fine-grained access control and MCP Server capabilities. Podium MCP Servers works seamlessly with Cursor and Claude AI editors for immediate consumption. Integrates with all popular LLM frameworks including LangChain and PyDantic for advanced AI orchestration.

create_a_podium_review_invite

Create a review invite link in Podium. Returns uid, shortUrl, url, customerName, channel, deliverySt…

create_a_podium_invoice

Create an invoice in Podium. Providing the readerUid property creates a card_present invoice; if omi…

podium_invoices_refund

Refund an invoice in Podium. Requires invoice_id. Returns invoice fields such as uid, amount, status…

create_a_podium_data_feed_event

Process an event through a data feed in Podium. Requires data_feed_id. Returns dataFeedUid and uid f…

delete_a_podium_review_attribution_by_id

Remove a user attribution from a review by id in Podium. Requires userUid. Returns createdAt, edited…

get_single_podium_contact_by_id

Get a contact in Podium using id, which can be a conversation uid, an email address, or a phone numb…

podium_conversation_messages_import

Import a message into a conversation in Podium. Requires body, channel, contactName, direction, loca…

create_a_podium_conversation_message

Send a message with an attachment in Podium. Returns message fields including uid, body, items (atta…

create_a_podium_contact

Create a contact. If a contact with the same phone number, email, or conversation uid is found it wi…

create_a_podium_campaign_message

Create a message for a specific campaign in Podium. Requires id and channelIdentifier. Returns messa…

list_all_podium_campaign_interactions

List campaign interactions in Podium. Returns uid, interactionType, createdAt, updatedAt, and resour…

podium_conversation_messages_send

Send a message in Podium. Requires body, channel, and locationUid. Returns fields including uid (mes…

create_a_podium_review_attribution

Attribute a user to a review in Podium. Requires review_id, locationUid, and userUid. Returns create…

update_a_podium_review_response_by_id

Update a review response in Podium. Requires review_id and id. Returns body, isDeleted, likeCount, p…

list_all_podium_review_responses

List responses of a specific review in Podium. Requires review_id. Returns body, isDeleted, likeCoun…

create_a_podium_review_response

Create a response for a given review in Podium. Requires review_id. Returns body, isDeleted, likeCou…

list_all_podium_review_summary

Get a summary of reviews for each location in Podium. Returns averageRating, locationUid, and review…

list_all_podium_sites_summary

Get summary of reviews for connected sites in Podium. Returns siteName, averageRating, and reviewCou…

get_single_podium_review_invite_by_id

Get a review invite in Podium by id. Returns uid, createdAt, deliveryStatus, channel, customerName,…

get_single_podium_review_by_id

Get a review in Podium by id. Returns uid, author, review body, rating, siteName, attributions, crea…

list_all_podium_reviews

List all reviews in Podium. Returns attributions, author, createdAt, isRecommendation, locations, ne…

list_all_podium_review_invites

List all review invites in Podium. Returns attributions, channel, conversationItemUid, createdAt, cu…

create_a_podium_refund

Create a refund in Podium. Requires amount, channelIdentifier, customerName, locationUid, readerUid,…

get_single_podium_refund_by_id

Get refund in Podium using id and location_id. Returns amount, cardBrand, cardLast4, createdAt, loca…

get_single_podium_payment_by_id

Get a payment in Podium by id. Returns bankAccountLast4, cardBrand, createdAt, fee, refunds, settled…

get_single_podium_reader_by_id

Get a specific card reader in Podium by id. Returns uid, label, locationUid, status, createdAt, and…

podium_invoices_cancel

Cancel an invoice in Podium. Requires invoice_id. Returns invoice fields such as allowedPaymentMetho…

get_single_podium_invoice_by_id

Get an invoice in Podium. Requires id and location_id. Returns allowedPaymentMethods, amount, cancel…

get_single_podium_by_id

Get an invoice in Podium using id and location_uid. Returns allowedPaymentMethods, amount, createdAt…

list_all_podium

List all invoices in Podium. Returns fields such as uid, amount, status, createdAt, paidAt, allowedP…

list_all_podium_invoices

List all invoices in Podium. Returns fields such as uid, amount, status, createdAt, paidAt, lineItem…

podium_products_delete_images

Delete images from a specific product in Podium. Requires id of the product, and the request must in…

get_single_podium_product_by_id

Get a product in Podium using id. Returns name, description, price, images list (with uid, url, isPr…

podium_products_upload_images

Upload images to a specific product in Podium using product_id, images, and locationUid. Returns ide…

list_all_podium_products

List all products in Podium. Returns uid, name, description, price, images, xid, archivedAt, inserte…

create_a_podium_template

Create a message template in Podium. Returns template fields including uid, title, text, accessLevel…

delete_a_podium_template_by_id

Delete a template in Podium. Requires id. Returns the deleted template's details, including uid, tit…

update_a_podium_template_by_id

Update a message template in Podium. Requires id. Returns accessLevel, attachmentUrl, createdAt, del…

list_all_podium_templates

List all templates in Podium. Returns fields such as uid, title, subject, type, accessLevel, created…

get_single_podium_conversation_message_by_id

Retrieve a specific message in Podium using conversation_id and id. Returns message details includin…

list_all_podium_conversation_messages

Retrieve messages from a conversation in Podium. Requires conversation_id. Returns fields such as ui…

list_all_podium_feedback_surveys

List all feedback surveys in Podium. Surveys are sorted by createdAt descending. Returns fields such…

delete_a_podium_webhook_by_id

Delete a webhook in Podium. Requires id. Returns uid, url, eventTypes, disabled, secret, createdAt,…

update_a_podium_webhook_by_id

Update a webhook in Podium by id. locationUid and organizationUid cannot be updated. Returns uid, ur…

get_single_podium_webhook_by_id

Get a webhook in Podium. Requires id. Returns createdAt, disabled, eventTypes, locationUid, organiza…

create_a_podium_webhook

Create a webhook in Podium. Requires eventTypes and url. One of locationUid or organizationUid is re…

list_all_podium_webhooks

List webhooks tied to the authorized user in Podium. Returns uid (webhook unique identifier), eventT…

list_all_podium_conversation_leads

Get a conversation lead ID in Podium. Requires location_uid, organization_uid, and conversation_id.…

delete_a_podium_scim_user_by_id

Delete a SCIM user resource in Podium. Requires id (provided as email). A successful response return…

update_a_podium_scim_user_by_id

Update a SCIM user resource in Podium to be deactivated. Requires id as the user's email. Returns no…

update_a_podium_conversation_assignee_by_id

Update conversation-assignees in Podium for a specific conversation using conversation_id. Returns a…

list_all_podium_conversation_assignees

Get conversation assignees in Podium. Requires conversation_id. Returns assignedUserUid, assigneeTyp…

update_a_podium_conversation_by_id

Update a conversation in Podium using id. Returns assignedUserUid, channel, closed, contactName, cre…

podium_conversations_writeback_lead

Writeback lead to the connected CRM in Podium. Requires conversation_id. Returns conversation (with…

podium_conversations_create_note

Create a note for a specific conversation in Podium. Requires conversation_id. Returns uid of the no…

podium_contacts_add_tag

Add an existing tag to an existing contact in Podium. Requires contact_id and uid. Returns identifie…

list_all_podium_conversations

List all conversations in Podium. Returns assignedUserUid, channel (identifier and type), closed sta…

get_single_podium_conversation_by_id

Get a conversation in Podium by id. Returns assignedUserUid, channel details, closed status, contact…

podium_contacts_add_attribute

Add an existing attribute to a contact in Podium. Requires contact_id and uid. Returns identifier to…

podium_contacts_remove_tag

Remove an existing tag from an existing contact in Podium. Requires contact_id and uid. Returns iden…

podium_contacts_opt_out

Opt out a contact from receiving campaign messages in Podium. Requires the channel.identifier and ch…

podium_contacts_remove_attribute

Remove an attribute from a contact in Podium. Requires contact_id and uid. Returns identifier of the…

podium_contacts_update_contact_attribute

Update a contact attribute in Podium using contact_id and uid. Returns identifier indicating the con…

delete_a_podium_contact_by_id

Delete a contact in Podium using id (conversation uid, email, or phone number). Returns identifier f…

update_a_podium_contact_by_id

Update a contact in Podium using id (conversation uid, email, or phone number). Returns identifier o…

list_all_podium_contacts

List all contacts in Podium. Returns each contact's uid, name, address, channels, emails, phoneNumbe…

create_a_podium_contact_tag

Create a contact tag in Podium. Requires label and description. Returns uid (tag identifier), label,…

update_a_podium_contact_tag_by_id

Update a contact tag in Podium. Requires id. Returns uid, label, description, createdAt, updatedAt,…

get_single_podium_contact_tag_by_id

Get a contact tag in Podium for an organization using id. Returns uid, label, description, organizat…

list_all_podium_contact_tags

List all contact-tags in Podium. Returns uid, label, description, createdAt, updatedAt, and organiza…

delete_a_podium_contact_attribute_by_id

Delete a contact attribute in Podium by id. Returns uid, label, dataType, isEncrypted, ownerResource…

list_all_podium_contact_attributes

List contact attributes in Podium tied to the ownerResource on the token. Returns uid, label, dataTy…

get_single_podium_contact_attribute_by_id

Get a contact attribute in Podium by id. Returns fields: uid (Podium unique identifier), label (attr…

update_a_podium_contact_attribute_by_id

Update a contact attribute in Podium using id. Returns createdAt, dataType, isEncrypted, label, owne…

create_a_podium_contact_attribute

Create a contact attribute in Podium. Requires dataType, label, and ownerResourceType. Returns uid,…

delete_a_podium_campaign_by_id

Delete a campaign in Podium. Requires id. Returns fields including uid, name, status, organization,…

create_a_podium_campaign

Create a campaign in Podium. Requires locations, name, and status. Returns uid (campaign identifier)…

update_a_podium_campaign_by_id

Update a campaign in Podium. Requires id. Returns campaign fields including uid, name, status, messa…

get_single_podium_campaign_by_id

Get a specific campaign in Podium by id. Returns fields including uid, name, status, createdAt, upda…

create_a_podium_appointment

Create an appointment in Podium. Requires contactName, contactPhoneNumber, datetime, and locationUid…

list_all_podium_campaigns

List all automated campaigns in Podium. Returns createdAt, updatedAt, endedAt, startedAt, name, mess…

get_single_podium_user_by_id

Get a user in Podium. Requires id. Returns archived status, createdAt, email, firstName, lastName, a…

get_single_podium_organization_by_id

Get an organization in Podium by id. Returns archived, businessName, createdAt, uid, and updatedAt f…

list_all_podium_users

List all users in Podium. Returns archived, createdAt, email, firstName, lastName, locations, phone,…

update_a_podium_location_by_id

Update a location in Podium. Requires id. Returns addressDetails, displayName, name, phoneNumber, po…

list_all_podium_locations

List all locations in Podium. Returns addressDetails (city, country, state, postalCode), archive sta…

get_single_podium_location_by_id

Get a specific location in Podium using id. Returns fields such as uid, displayName, addressDetails,…

Enhanced

Podium

with AI Capabilities

AI Agent Toolset

AI Agent Toolset

MCP Server capabilities for seamless AI tool calling across all integration APIs

MCP Server capabilities for seamless AI tool calling across all integration APIs

Fine-Grained Control

Fine-Grained Control

Granular access control for all operations with custom method support

Granular access control for all operations with custom method support

Unlimited Customization

Unlimited Customization

Customize tool descriptions and parameters down to the finest detail for a workflow that feels built for you.

Customize tool descriptions and parameters down to the finest detail for a workflow that feels built for you.

Developer-First

Developer-First

Integrate with MCP clients like Cursor and Claude, or use frameworks like Langchain

Integrate with MCP clients like Cursor and Claude, or use frameworks like Langchain

Unified APIs for

Podium

Skip writing code for every integration. Save time by using Truto's category-specific Unified APIs. You can use the schema we provide out of the box or customize and override the mappings to suit your needs with AI.

Roles

The Role object represents a role of a User.

Unified User Directory API

Users

The User object represents a User.

Unified User Directory API

Attachments

Attachments are the files associated with a ticket or a comment.

Unified Ticketing API

Comments

Comments represent the communication happening on a Ticket, both between a User and a Contact and the internal things like notes, private comments, etc. A Ticket can have one or more Comments.

Unified Ticketing API

Contacts

Contact represent the external people you are in contact with. These could be customers, leads, etc. Contacts can be associated with an Account if the underlying product supports it.

Unified Ticketing API

Tickets

Core resource which represents some work that needs to be carried out. Tickets are usually mapped to issues, tasks, work items, etc. depending on the underlying product.

Unified Ticketing API

Users

Users represent the people using the underlying ticketing system. They are usually called agents, team members, admins, etc.

Unified Ticketing API

Proxy API for

Podium

Access all of the

Podium

API without worrying about authentication and pagination. 

Truto's Proxy APIs are a 1-to-1 mapping of the

Podium

Helpdesk

API.

API call us you

You call us, we call

Podium

and pass the response back in the same cycle.

Access all of the

Podium

API without worrying about authentication and pagination. 

Truto's Proxy APIs are a 1-to-1 mapping of the

Podium

Helpdesk

API, you call us

we call

Podium

and pass the response back in the same cycle.

Account Linking

Account Linking

Use Truto's frontend SDK to link your

customer's

Podium

account.

We handle all the OAuth and API key flows. You do not need to create the OAuth app as well.

Account Linking

Account Linking

Use Truto's frontend SDK to link your

customer's

Podium

account.

We handle all the OAuth and API key flows. You do not need to create the OAuth app as well.

Seamless authentication 

Don't spend time refreshing access tokens, and figuring out how to store them securely. We do it for you.

We also sprinkle them into the API requests. So you just have to deal with 1 API key, ours.

Seamless authentication 

Don't spend time refreshing access tokens, and figuring out how to store them securely. We do it for you.

We also sprinkle them into the API requests. So you just have to deal with 1 API key, ours.

Unified response format

Unified response format

Truto follows a single response format for it's Proxy and Unified APIs across all the integrations.

into a unified cursor based pagination and all of the data is always present in the result attribute.

Podium

We translate

pagination

Unified response format

Unified response format

Truto follows a single response format for it's Proxy and Unified APIs across all the integrations.

into a unified cursor based pagination and all of the data is always present in the result attribute.

Podium

We translate

pagination

Get

Get

Podium

Podium

integrated into your app

integrated into your app

without the hassle

without the hassle

Our team understands what it takes to make a unified API implementation successful.

Our team understands what it takes to make a unified API implementation successful.

Boost customer satisfaction

Boost customer satisfaction

When customers can easily integrate their new products into their existing systems, they’re more likely to stick around. It’s just common sense!

Developers

Empower engineers

Who wants to do boring grunt work? Not engineers! By taking care of integrations for them, they’ll have more time to focus on what really matters - making a great product.

Profits

Boost profits 

Optimise developer resources. Truto frees up time and saves money. Say hello to a healthier bottom line!

Wow Experience

Wow your prospects

Say 'Yes' to every integration request your prospects ask you for. Integrations should not deter deal closures.

Powered by AI

Tick Icon

Customize the mappings as you need using AI.

Tick Icon

Build your own unified API from scratch, aided by AI.

Take back focus where it matters. Let Truto do integrations.

Learn more about our unified api service and solutions. A short, crisp 30 minute call with folks who understand the problem of alternatives.

Take back focus where it matters. Let Truto do integrations.

Learn more about our unified api service and solutions. A short, crisp 30 minute call with folks who understand the problem of alternatives.

Take back focus where it matters. Let Truto do integrations.

Learn more about our unified api service and solutions. A short, crisp 30 minute call with folks who understand the problem of alternatives.

Take back focus where it matters. Let Truto do integrations.

Learn more about our unified api service and solutions. A short, crisp 30 minute call with folks who understand the problem of alternatives.

We have been able to dramatically accelerate our GTM timeline by several months as a result of Truto. The devs at Truto worked with us to build a unified API structure with our team so that we have a solid base for future integrations as well. The support has been very quick to respond to our inquiries and provide timely resolutions for our requests.

Josh Benson,

CEO of Omnitrain