Structured data is specific, customizable data points extracted from a conversation. This feature encompasses to main components:

  • Entity extraction: Automatically identifies and extracts specific pieces of information.
  • Question extraction (Targeted Structured Data): Answers predefined questions based on the conversation content.

Entity and Question structured data comes out of the box with entities and questions based per industry, but can be customized to match your unique use cases.

You can extract up to 20 structured data metrics per conversation.

The dynamic nature of structure data makes them capable of solving an endless list of challenges, but may help you with:

  • Automating data collection for analytics and reporting
  • Facilitating compliance monitoring and quality assurance
  • Rapid population of CRMs and other business tools
  • Supporting data-driven decision making and process improvement

How it works

To illustrate how Structured Data works, let’s use an example conversation:

Agent: Hello, thank you for contacting XYZ Insurance. How can I assist you today?
Customer: Hi, I want to check the status of my payout for my claim.
Agent: Sure, can you please provide me with the claim number?
Customer: It’s H123456789.
Agent: Thank you. Could you also provide the last 4 digits of your account number?
Customer: 6789
Agent: Let me check the details for you. One moment, please.
Agent: I see that your claim was approved on June 10, 2024, for $5000. The payout has been processed.
Customer: Great! When will I receive the money?
Agent: The payout will be credited to your account within 3-5 business days.
Customer: Perfect, thank you so much for your help.
Agent: You’re welcome! Is there anything else I can assist you with?
Customer: No, that’s all. Have a nice day.
Agent: You too. Goodbye!

AutoSummary analyzes this conversation and extracts structured data in two ways:

Entity

Entity Extraction automatically identifies and extracts specific pieces of information from the conversation. These entities can include things like claim numbers, account details, dates, monetary amounts, and more.

For our example conversation, the extracted entities might look like this:

[
    {
      "name": "Claim Number",
      "value": "H123456789"
    },
    {
      "name": "Account Number Last 4",
      "value": "5678"
    },
    {
      "name": "Approval Date",
      "value": "2024-06-10"
    },
    {
      "name": "Payout Amount",
      "value": 5000
    }
]

Questions

Targeted Structured Data, or Questions, allows you to get answers to predefined queries based on the conversation content. These questions can be customized to address specific aspects of customer interactions, compliance requirements, or any other relevant factors.

For our example conversation, some predefined questions and their answers might look like this:

[
    {
      "name": "Customer Satisfied",
      "answer": "Yes"
    },
    {
      "Name": "Payout Information Provided",
      "answer": "Yes"
    },
    {
      "name": "Verification Completed",
      "answer": "Yes"
    }
]

Generate Structured Data

To generate Structured Data, you first need to provide the conversation transcript to ASAPP.

This example uses our Conversation API to provide the transcript, but you have options to use AutoTranscribe, batch, and self-hosted integration options.

Step 1: Create a conversation

To create a conversation, provide your IDs for the conversation and customer.

curl -X POST 'https://api.sandbox.asapp.com/conversation/v1/conversations' \
--header 'asapp-api-id: <API KEY ID>' \
--header 'asapp-api-secret: <API TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
  "externalId": "[Your id for the conversation]",
  "customer": {
    "externalId": "[Your id for the customer]",
    "name": "customer name"
  },
  "timestamp": "2024-01-23T11:42:42Z"
}'

A successfully created conversation returns a status code of 200 and a conversation ID.

Step 2: Add messages

You need to add the messages for the conversation. You have the choice to add a single message for each turn of the conversation, or can upload a batch of messages a conversation.

curl -X POST 'https://api.sandbox.asapp.com/conversation/v1/conversations/01HNE48VMKNZ0B0SG3CEFV24WM/messages' \
--header 'asapp-api-id: \<API KEY ID\>' \
--header 'asapp-api-secret: \<API TOKEN\>' \
--header 'Content-Type: application/json' \
--data '{ 
  "text": "Hello, I would like to upgrade my internet plan to GOLD.",
  "sender": {   
    "role": "customer",
    "externalId": "\[Your id for the customer\]" 
  },
  "timestamp": "2024-01-23T11:42:42Z"
}'

A successfully created message returns a status code of 200 and the id of the message.

We only show one message as an example, though you would create many messages over the source of the conversation.

Step 3: Generate Structured Data

With a conversation containing messages, you can generate Structured Data.

To generate the Structured Data, provide the ID of the conversation:

curl -X GET 'https://api.sandbox.asapp.com/autosummary/v1/structured-data/5544332211' \
--header 'asapp-api-id: <API KEY ID>' \
--header 'asapp-api-secret: <API TOKEN>'

A successful Structured Data generation returns 200 and the extracted data:

{
  "conversationId": "01GCS2XA9447BCQANJF2SXXVA0",
  "id": "0083d936-ff70-49fc-ac19-74f1246d8b27",
  "structuredDataMetrics": [
    {
      "name": "Claim Number",
      "value": "H123456789"
    },
    {
      "name": "Account Number Last 4",
      "value": "5678"
    },
    {
      "name": "Approval Date",
      "value": "2024-06-10"
    },
    {
      "name": "Payout Amount",
      "value": 5000
    },
    {
      "name": "Customer Satisfied",
      "answer": "Yes"
    },
    {
      "name": "Payout Information Provided",
      "answer": "Yes"
    },
    {
      "name": "Verification Completed",
      "answer": "Yes"
    }
  ]
}

The structured data represents both the entities and answered questions you have configured.

Customization

Structured Data questions and entities can be fully customized according to your business needs.

We have a list of potential questions and entities per industry that you can start with. Work with your ASAPP account team to determine whether one of our out-of-the-box configurations work for you, or if you need to create custom structured data.