{
  "opencollection": "1.0.0",
  "info": {
    "name": "Inbox 2.0 API Reference",
    "version": "v1"
  },
  "request": {
    "auth": {
      "type": "bearer",
      "token": "{{bearerToken}}"
    }
  },
  "items": [
    {
      "info": {
        "name": "rest-api-authentication",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "OAuth2 Token",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/oauth2/token",
            "headers": [
              {
                "name": "Authorization",
                "value": ""
              }
            ],
            "body": {
              "type": "form-urlencoded",
              "data": [
                {
                  "name": "grant_type",
                  "value": ""
                },
                {
                  "name": "organization_id",
                  "value": ""
                }
              ]
            },
            "auth": {
              "type": "basic",
              "username": "{{username}}",
              "password": "{{password}}"
            }
          },
          "docs": "[OAuth2 Token](https://tools.ietf.org/html/rfc6749#section-3.2) endpoint.\n \nThis endpoint requires that you pass in your client credentials using the HTTP Basic authentication scheme as outlined in the [spec](https://tools.ietf.org/html/rfc6749#section-2.3.1).\nIncluding your client credentials in the request-body is not supported.\n"
        }
      ]
    },
    {
      "info": {
        "name": "real_time_metrics_rest_api",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Inbound message volume",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/reporting/metrics/inbound-message-volume",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "A count of inbound messages based on applied filters.\n"
        },
        {
          "info": {
            "name": "Outbound message volume",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/reporting/metrics/outbound-message-volume",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "A count of outbound messages based on applied filters.\n"
        },
        {
          "info": {
            "name": "Average first response time",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/reporting/metrics/first-response-time",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "The average time in seconds to the first response to an inbound message.\n"
        },
        {
          "info": {
            "name": "Average conversation response time",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/reporting/metrics/conversation-response-time",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "The average time in seconds for a response to an inbound message except the first response.\n"
        },
        {
          "info": {
            "name": "Resolved with reply",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/reporting/metrics/resolved-with-one-reply",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "The number of messages that have been resolved with at least one reply.\n"
        },
        {
          "info": {
            "name": "Average handle time",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/reporting/metrics/handle-time",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "The average time in seconds that a conversation is handled by an agent, specifically the difference between timestamps\nof conversation open and conversation pend/resolve. For Average Handle Time to be calculated, there must be an outbound\nbetween open and pend/resolve event.\n"
        },
        {
          "info": {
            "name": "Agent availability",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/user-presence/metrics/agent-availability",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "The number of agents available or away. You can filter by teams.\n"
        },
        {
          "info": {
            "name": "Contacts waiting in queue",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/queue/metrics/contacts-waiting",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "The number of contacts waiting in the queue for a response.\n"
        },
        {
          "info": {
            "name": "Longest wait time in queue",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/queue/metrics/longest-wait-time",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "The current longest time in seconds that a contact is waiting for a response. If no mediumId filter is provided, the\nmessages sent in any connected mediums will be included.\n"
        }
      ]
    },
    {
      "info": {
        "name": "user_presence_rest_api",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Online Agents",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://platform.hootsuite.com/inbox/v1/user-presence/online-agents"
          },
          "docs": "List of all currently online agents.\n"
        }
      ]
    },
    {
      "info": {
        "name": "vai_rest_api",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Manipulate conversation",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/virtual-agent/conversations/:conversationId",
            "params": [
              {
                "name": "conversationId",
                "value": "",
                "type": "path",
                "description": "Id of the conversation to manipulate. This can be retrieved from the webhook payload."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This allows you to manipulate the conversation in the same way you would when responding to a webhook request. You can\nsend a reply, add a topic, and/or hand off the conversation. Each property in the body is optional. If you only want to\nsend a message, you can send `{\"sendMessage\": {\"text\": \"Hi!\"}}`. If you want to apply a topic and complete, but not send\na message, you can, for example, send `{\"applyTopics\":[\"Spam\"], \"complete\": \"RESOLVED\"}`.\n\nNote that only topics that match a topic in the p"
        },
        {
          "info": {
            "name": "Upload attachments",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/virtual-agent/conversations/:conversationId/attachments/:filename",
            "headers": [
              {
                "name": "Content-Type",
                "value": ""
              },
              {
                "name": "Content-Length",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "conversationId",
                "value": "",
                "type": "path",
                "description": "ID of the conversation to manipulate. This can be retrieved from the webhook payload."
              },
              {
                "name": "filename",
                "value": "",
                "type": "path",
                "description": "Filename of the attachment. The filename can only contain uppercase and lowercase letters, numbers, -, _ and ."
              }
            ]
          },
          "docs": "This allows you to upload an attachment that you can send in a conversation. You need to upload the attachment first,\nand then you can send a message with text and an attachment. For example, if you upload an attachment\nto `/inbox/v1/virtual-agent/conversations/attachments/cat.jpg`, you can send that attachment by sending\n\n```json\n{\n  \"sendMessage\": {\n    \"text\": \"This is a cat!\",\n    \"attachment\": \"cat.jpg\"\n  }\n}\n```\n\nto `/inbox/v1/virtual-agent/conversations/{conversationId}`. The file name sh"
        }
      ]
    },
    {
      "info": {
        "name": "queue_rest_api",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Conversations locked by an agent",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://platform.hootsuite.com/inbox/v1/queue/lock"
          },
          "docs": "An overview of conversations with the agent that locked the conversation.\n"
        }
      ]
    },
    {
      "info": {
        "name": "proactive_messaging_rest_api",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Send proactive message",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://platform.hootsuite.com/inbox/v1/proactive-messaging",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "The message is queued for processing. Use the returned correlation id to get the status of the sent message.\n"
        },
        {
          "info": {
            "name": "Get status",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://platform.hootsuite.com/inbox/v1/proactive-messaging/:correlationId",
            "params": [
              {
                "name": "correlationId",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Get the status overview for a sent proactive message\n"
        },
        {
          "info": {
            "name": "Get status detail",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://platform.hootsuite.com/inbox/v1/proactive-messaging/:correlationId/:status",
            "params": [
              {
                "name": "correlationId",
                "value": "",
                "type": "path"
              },
              {
                "name": "status",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Get the details of a message with a specific status.\n"
        }
      ]
    },
    {
      "info": {
        "name": "crm_rest_api",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Set contact attributes",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://platform.hootsuite.com/inbox/v2/contact/:contactProfileId/contact-attributes",
            "params": [
              {
                "name": "contactProfileId",
                "value": "",
                "type": "path",
                "description": "Id of the contact profile that you want to update."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Update the contact attributes of a contact profile.\n"
        }
      ]
    }
  ],
  "bundled": true
}