Use ASAPP’s File Exporter service to securely retrieve AI Services data via API. The service provides a specific link to access the requested data based on the file parameters of the request that include the feed, version, format, date, and time interval of interest.

The File Exporter service is meant to be used as a batch mechanism for exporting data to your data warehouse, either on a scheduled basis (e.g. nightly, weekly) or for ad hoc analyses. Data that populates feeds for the File Exporter service updates once daily at 2:00AM UTC.

Data feeds are not available by default. Reach out to your ASAPP account contact to ensure data feeds are enabled for your implementation.

Before You Begin

To use ASAPP’s APIs, all apps must be registered through the AI Services Developer Portal. Once registered, each app will be provided unique API keys for ongoing use.

Get your API credentials and learn how to set up AI Service APIs by visiting our Developer Quick Start Guide.

Endpoints

The File Exporter service uses six parameters to specify a target file:

  • feed: The name of the data feed of interest

  • version: The version number of the feed

  • format: The file format

  • date: The date of interest

  • interval: The time interval of interest

  • fileName: The data file name

  • feed: The name of the data feed of interest

  • version: The version number of the feed

  • format: The file format

  • date: The date of interest

  • interval: The time interval of interest

  • fileName: The data file name

Each parameter is retrieved from a dedicated endpoint. Once all parameters are retrieved, the target file is retrieved using the endpoint (/fileexporter/v1/static/getfeedfile), which takes these parameters in the request and returns a URL.

The OpenAPI specification for each endpoint of the File Exporter is available here in the Developer Portal once your ASAPP account team enables the File Exporter for your implementation.

You must sign into your account in order to view the specifications.

  • POST /fileexporter/v1/static/listfeeds Use this endpoint to retrieve an array of feed names available for your implementation.
  • POST /fileexporter/v1/static/listfeedversions Use this endpoint to retrieve an array of versions available for a given data feed.
  • POST /fileexporter/v1/static/listfeedformats Use this endpoint to retrieve an array of available file formats for a given feed and version.
  • POST /fileexporter/v1/static/listfeeddates Use this endpoint to retrieve an array of available dates for a given feed/version/format.
  • POST /fileexporter/v1/static/listfeedintervals Use this endpoint to retrieve an array of available intervals for a given feed/version/format/date.
  • POST /fileexporter/v1/static/listfeedfiles Use this endpoint to retrieve an array of file names for a given feed/version/format/date/interval.
  • POST /fileexporter/v1/static/getfeedfile Use this endpoint to retrieve a single file URL for the data specified using parameters returned from the above endpoints.

Values for file will differ based on the requested date and interval parameters. Always call this endpoint prior to calling /getfeedfile.

In the getfeedfile request, all parameters are required except interval

Endpoint List

  1. POST /fileexporter/v1/static/listfeeds Retrieve an array of feed names available for your implementation.

  2. POST /fileexporter/v1/static/listfeedversions Retrieve an array of versions available for a given data feed.

  3. POST /fileexporter/v1/static/listfeedformats Retrieve an array of available file formats for a given feed and version.

  4. POST /fileexporter/v1/static/listfeeddates Retrieve an array of available dates for a given feed/version/format.

  5. POST /fileexporter/v1/static/listfeedintervals Retrieve an array of available intervals for a given feed/version/format/date.

  6. POST /fileexporter/v1/static/listfeedfiles Retrieve an array of file names for a given feed/version/format/date/interval.

    Values for file will differ based on the requested date and interval parameters. Always call this endpoint prior to calling /getfeedfile.

  7. POST /fileexporter/v1/static/getfeedfile Retrieve a single file URL for the data specified using parameters returned from the above endpoints.

    In the getfeedfile request, all parameters are required except interval

Making Routine Requests

Only two requests are needed for exporting data on an ongoing basis for different timeframes. To export a file each time, make these two calls:

  1. Call /listfeedfiles using the same feed, version, format parameters, and alter the date and interval parameters as necessary (interval is optional) to specify the time period of the data file you wish to retrieve. In response, you will receive the name(s) of the file needed for making the next request.

  2. Call /getfeedfile with the same parameters as above and the file name parameter returned from /listfeedfiles. In response, you will receive the access url.

  3. Call /listfeedfiles using the same feed, version, format parameters, and alter the date and interval parameters as necessary (interval is optional) to specify the time period of the data file you wish to retrieve. In response, you will receive the name(s) of the file needed for making the next request.

  4. Call /getfeedfile with the same parameters as above and the file name parameter returned from /listfeedfiles. In response, you will receive the access url.

Your final request to /getfeedfile for the file url would look like this:

{
  "feed": "feed_test",
  "version": "version=1",
  "format": "format=jsonl",
  "date": "dt=2022-06-27",
  "fileName": "file1.jsonl"
}

Data Feeds

File Exporter makes the following data feeds available:

  1. Conversation State: staging_conversation_state Combines ASAPP conversation identifiers with metadata including summaries, augmentation counts, intent, crafting times, and important timestamps.
  2. Utterance State: staging_utterance_state Combines ASAPP utterance identifiers with metadata including sender type, augmentations, crafting times, and important timestamps. NOTE: Does not include utterance text.
  3. Utterances: utterances Combines ASAPP conversation and utterance identifiers with utterance text and timestamps. Identifiers can be used to join utterance text with metadata from utterance state feed.
  4. Free-Text Summaries: autosummary_free_text Retrieves data from free-text summaries generated by AutoSummary. This feed has one record per free-text summary produced and can have multiple summaries per conversation .
  5. Feedback: autosummary_feedback Retrieves the text of the feedback submitted by the agent. Developers can join this feed to the AutoSummary free-text feed using the summary ID.
  6. Policy: coachinginsight_policy_evaluations Returns one record for each time a policy is evaluated and metadata describing the context in which that evaluation occurred.
  7. Structured Data: autosummary_structured_data Retrieves structured data to extract information and insights from conversations in the form of yes/no answers (up to 20) from summaries generated by AutoSummary.

Available data feeds:

  1. Conversation State (staging_conversation_state) Combines ASAPP conversation identifiers with metadata including summaries, augmentation counts, intent, crafting times, and important timestamps.

  2. Utterance State (staging_utterance_state) Combines ASAPP utterance identifiers with metadata including sender type, augmentations, crafting times, and important timestamps. NOTE: Does not include utterance text.

  3. Utterances (utterances) Combines ASAPP conversation and utterance identifiers with utterance text and timestamps. Identifiers can be used to join utterance text with metadata from utterance state feed.

  4. Free-Text Summaries (autosummary_free_text) Retrieves data from free-text summaries generated by AutoSummary. This feed has one record per free-text summary produced and can have multiple summaries per conversation.

  5. Feedback (autosummary_feedback) Retrieves the text of the feedback submitted by the agent. Developers can join this feed to the AutoSummary free-text feed using the summary ID.

  6. Policy (coachinginsight_policy_evaluations) Returns one record for each time a policy is evaluated and metadata describing the context in which that evaluation occurred.

  7. Structured Data (autosummary_structured_data) Retrieves structured data to extract information and insights from conversations in the form of yes/no answers (up to 20) from summaries generated by AutoSummary.

Click here to view the full schema for each feed table.

Feed table names that include the prefix staging_ are not referencing a lower environment; table names have no connection to environments.