Podium Conversation API

The Conversation API from Podium — 4 operation(s) for conversation.

Operations 5

GET /v4/conversations List conversations. #
GET /v4/conversations/{uid} Get a conversation. #
PUT /v4/conversations/{uid} Update a conversation. #
POST /v4/conversations/{uid}/lead_writeback Writeback lead #
POST /v4/conversations/{uid}/notes Create a note for given conversation. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/podium-conversation-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

podium-conversation-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Conversations Conversation API
  version: 2021.04.01
servers:
- url: https://api.podium.com
  variables: {}
security: []
tags:
- name: Conversation
paths:
  /v4/conversations:
    get:
      callbacks: {}
      description: "List all conversations. \n\nIf the `cursor` parameter is used then all other parameters will be ignored. This is to avoid confusion if passing both a `cursor` and other parameters which would change what data is being returned.\n\nRequired scope: `read_messages`."
      operationId: conversation.index
      parameters:
      - description: Retrieves the page of items that comes after the `cursor`.
        in: query
        name: cursor
        required: false
        schema:
          description: Cursor used to access next or previous page in pagination.
          example: MDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAw
          type: string
      - description: Max number of items to return per request. Defaults to `10`.
        in: query
        name: limit
        required: false
        schema:
          default: 10
          example: 10
          maximum: 100
          minimum: 0
          type: integer
      - description: Podium unique identifier for location.
        in: query
        name: locationUid
        required: false
        schema:
          example: 00000000-0000-0000-0000-000000000000
          format: uuid
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/conversation'
                  metadata:
                    description: Additional response data.
                    properties:
                      url:
                        description: The resource URL.
                        example: https://www.podium.com/
                        type: string
                    type: object
                type: object
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Podium code for the error.
                    type: integer
                  message:
                    description: Specific details about the error.
                    type:
                    - string
                    - 'null'
                  moreInfo:
                    description: URL providing more information about the error.
                    type: string
                title: Error
                type: object
          description: Error response.
      summary: List conversations.
      tags:
      - Conversation
  /v4/conversations/{uid}:
    get:
      callbacks: {}
      description: 'Gets a conversation that has previously been created.


        Required scope: `read_messages`.'
      operationId: conversation.get
      parameters:
      - description: Podium unique identifier for conversation.
        in: path
        name: uid
        required: true
        schema:
          example: 00000000-0000-0000-0000-000000000000
          format: uuid
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/conversation'
                  metadata:
                    description: Additional response data.
                    properties:
                      url:
                        description: The resource URL.
                        example: https://www.podium.com/
                        type: string
                    type: object
                type: object
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Podium code for the error.
                    type: integer
                  message:
                    description: Specific details about the error.
                    type:
                    - string
                    - 'null'
                  moreInfo:
                    description: URL providing more information about the error.
                    type: string
                title: Error
                type: object
          description: Error response.
      summary: Get a conversation.
      tags:
      - Conversation
    put:
      callbacks: {}
      description: 'Update a conversation.


        Required scope: `write_messages`.'
      operationId: conversation.update
      parameters:
      - description: Podium unique identifier for conversation.
        in: path
        name: uid
        required: true
        schema:
          example: 00000000-0000-0000-0000-000000000000
          format: uuid
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                assignedByName:
                  description: The name used in conversation assignment managerial items
                  type:
                  - string
                  - 'null'
                assignedUserUid:
                  description: Podium unique identifier for user.
                  example: 00000000-0000-0000-0000-000000000000
                  format: uuid
                  type:
                  - string
                  - 'null'
                closed:
                  description: Whether the conversation is open or closed.
                  example: false
                  type: boolean
                conversationAssigneeUids:
                  description: List of assignee user UIDs
                  items:
                    description: Podium unique identifier for assignee user.
                    example: 00000000-0000-0000-0000-000000000000
                    format: uuid
                    type: string
                  type:
                  - array
                  - 'null'
              type: object
        description: Update conversation params
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/conversation'
                  metadata:
                    description: Additional response data.
                    properties:
                      url:
                        description: The resource URL.
                        example: https://www.podium.com/
                        type: string
                    type: object
                type: object
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Podium code for the error.
                    type: integer
                  message:
                    description: Specific details about the error.
                    type:
                    - string
                    - 'null'
                  moreInfo:
                    description: URL providing more information about the error.
                    type: string
                title: Error
                type: object
          description: Error response.
      summary: Update a conversation.
      tags:
      - Conversation
  /v4/conversations/{uid}/lead_writeback:
    post:
      callbacks: {}
      description: 'Writeback lead to the connected CRM.


        Required scope: `write_writebacks`.'
      operationId: lead_writeback.get
      parameters:
      - description: Conversation uid of the lead.
        in: path
        name: uid
        required: true
        schema:
          example: 00000000-0000-0000-0000-000000000000
          format: uuid
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/lead_writeback'
                  metadata:
                    description: Additional response data.
                    properties:
                      url:
                        description: The resource URL.
                        example: https://www.podium.com/
                        type: string
                    type: object
                type: object
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Podium code for the error.
                    type: integer
                  message:
                    description: Specific details about the error.
                    type:
                    - string
                    - 'null'
                  moreInfo:
                    description: URL providing more information about the error.
                    type: string
                title: Error
                type: object
          description: Error response.
      summary: Writeback lead
      tags:
      - Conversation
  /v4/conversations/{uid}/notes:
    post:
      callbacks: {}
      description: 'Creates a note for the given conversation.


        Required scope: `write_messages`.'
      operationId: conversation_note.create_conversation_note
      parameters:
      - description: Podium unique identifier for conversation.
        in: path
        name: uid
        required: true
        schema:
          example: 00000000-0000-0000-0000-000000000000
          format: uuid
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                body:
                  description: Body of the note.
                  example: This is a note
                  type: string
                senderName:
                  description: Name of the person who created the note.
                  example: John Doe
                  type: string
              required:
              - body
              - senderName
              type: object
        description: Create conversation note body params
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/conversation_note'
                  metadata:
                    description: Additional response data.
                    properties:
                      url:
                        description: The resource URL.
                        example: https://www.podium.com/
                        type: string
                    type: object
                type: object
          description: Successful response.
        default:
          content:
            application/json:
              schema:
                properties:
                  code:
                    description: Podium code for the error.
                    type: integer
                  message:
                    description: Specific details about the error.
                    type:
                    - string
                    - 'null'
                  moreInfo:
                    description: URL providing more information about the error.
                    type: string
                title: Error
                type: object
          description: Error response.
      summary: Create a note for given conversation.
      tags:
      - Conversation
components:
  schemas:
    conversation_note:
      description: Conversation note.
      properties:
        body:
          description: Body of the note.
          type: string
        conversation:
          description: Conversation that the conversation note belongs to.
          properties:
            uid:
              description: Podium unique identifier for conversation.
              example: 00000000-0000-0000-0000-000000000000
              format: uuid
              type:
              - string
              - 'null'
          type: object
        createdAt:
          description: Time at which the resource was created. Date time is in Coordinated Universal Time (UTC).
          example: '2015-01-23T23:50:07Z'
          format: date-time
          type:
          - string
          - 'null'
        location:
          description: Location that the conversation note belongs to.
          properties:
            uid:
              description: Podium unique identifier for location.
              example: 00000000-0000-0000-0000-000000000000
              format: uuid
              type:
              - string
              - 'null'
          type: object
        organization:
          description: Organization that the conversation note belongs to.
          properties:
            uid:
              description: Podium unique identifier for organization.
              example: 00000000-0000-0000-0000-000000000000
              format: uuid
              type:
              - string
              - 'null'
          type: object
        senderName:
          description: Name of the person who created the note.
          type: string
        uid:
          description: Podium unique identifier for note.
          example: 00000000-0000-0000-0000-000000000000
          format: uuid
          type:
          - string
          - 'null'
        updatedAt:
          description: Time at which the resource was updated. Date time is in Coordinated Universal Time (UTC).
          example: '2015-01-23T23:50:07Z'
          format: date-time
          type:
          - string
          - 'null'
      title: conversation_note
      type: object
    conversation:
      description: Messenger conversation.
      properties:
        assignedUserUid:
          description: Podium unique identifier for user.
          example: 00000000-0000-0000-0000-000000000000
          format: uuid
          type:
          - string
          - 'null'
        assigneeUids:
          description: List of assignee user UIDs
          items:
            description: Podium unique identifier for assignee user.
            example: 00000000-0000-0000-0000-000000000000
            format: uuid
            type: string
          type: array
        channel:
          description: Channel that the conversation is in.
          properties:
            identifier:
              description: Identifies the Messenger channel. Must be a valid email address or a phone number. Non-US/Canada numbers must include the country code (e.g. +61 for AUS)
              example: email@email.com
              type:
              - string
              - 'null'
            type:
              description: Messenger channel for the conversation.
              enum:
              - apple
              - car_wars
              - email
              - facebook
              - fallback_email
              - google
              - google_brand
              - iframe
              - instagram
              - phone
              - secure
              - sms
              - text
              - whatsapp
              example: email
              type:
              - string
              - 'null'
          type: object
        closed:
          description: Whether the conversation has been closed
          type:
          - boolean
          - 'null'
        contactName:
          description: Name of the contact.
          type:
          - string
          - 'null'
        createdAt:
          description: When the conversation was started.
          example: '2015-01-23T23:50:07Z'
          format: date-time
          type:
          - string
          - 'null'
        lastItemAt:
          description: When the last conversation item was added.
          example: '2015-01-23T23:50:07Z'
          format: date-time
          type:
          - string
          - 'null'
        locationUid:
          description: Podium unique identifier for location.
          example: 00000000-0000-0000-0000-000000000000
          format: uuid
          type:
          - string
          - 'null'
        uid:
          description: Podium unique identifier for conversation.
          example: 00000000-0000-0000-0000-000000000000
          format: uuid
          type:
          - string
          - 'null'
        updatedAt:
          description: When the conversation was last updated.
          example: '2015-01-23T23:50:07Z'
          format: date-time
          type:
          - string
          - 'null'
      title: conversation
      type: object
    lead_writeback:
      description: 'A lead that has been writtenback to a connected CRM. The lead is passed to the CRM and no other action is possible

        from the Podium so is no `uid` or other identifers assigned to the lead.

        '
      properties:
        conversation:
          description: Conversation that the conversation note belongs to.
          properties:
            uid:
              description: Podium unique identifier for conversation.
              example: 00000000-0000-0000-0000-000000000000
              format: uuid
              type:
              - string
              - 'null'
          type: object
      title: lead_writeback
      type: object