Export to FTP
It is possible to automate an export of the CSV file as you can request it from our WebApp user interface and send it to a FTP server of your choice, on a daily basis.
To setup this integration we'll need the following information:
- Data to export
- Confirm the campaign, or campaigns to be part of the export
- FTP connection
- protocol (we highly encourage SFTP)
- hostname (ex:
ftp.acme-corp.fr
) - port (ex:
22
) - username (ex:
uhlive-export-to-ftp
) - password
CSV file schema documentation
Overview
This document describes the schema for the CSV file delivered via FTP. The file contains both fixed columns that are present in every file and dynamic columns that may vary as they are user-generated (such as Tags or metadata).
File Format
- Format: Comma-Separated Values (CSV)
- Encoding: UTF-8
- Header Row: First row contains column headers
- Date Format: ISO 8601 (YYYY-MM-DDThh:mm:ss+hh:mm)
Fixed columns
The following columns will always be present in every file:
Column name | Type | Description | Example |
---|---|---|---|
unique ID | string | The unique ID of the call in our platform | 550-1745458371.105138 |
link to audio | string | The link to the WebApp to see the call's details and audio | https://app.uh.live/scribr/550-1745458371.105138 |
datetime | datetime | The UTC date and time at which the call happened | 2025-04-23T15:35:17+00:00 |
campaign name | string | The campaign regroups a set of Calls sharing the same processing configuration in the platform | Acme Corp after-sales service |
duration in seconds | number | Duration of the call in seconds | 123 |
IVR end | number | The estimated end of the IVR, and start of conversation with the agent | 32.5 |
phone number | string | If known, the caller phone number to E164 standard | +33102030405 |
status | string | After processing, the call can be either qualified or void. Void means that nothing much can be analyzed. For example because Client hanged up before talking to an Agent | qualified |
decisional | string | A now deprecated Tag category, still here for backward compatibility with our most ancient customers | Tous motifs |
Dynamic Columns
In addition to the fixed columns, the file may contain an arbitrary number of user-generated columns. These columns:
- Cannot be determined in advance
- Will always appear after the fixed columns
- Follow the naming convention described below
Dynamic columns naming convention: tags
After the fixed columns, the Tags for each call will be added. Each Tag has its own column.
The name of the column is the label of the Tag, as can be found in our WebApp or Activate API.
Examples:
Motif d'appel
Clarté
Accueil conforme
Depending on the type of the Tag, the value can be intepreted as:
- A
string
for keyword and text tags, example:Demande d'informations sur la carte de fidélité
- A
boolean
(valuesTrue
orFalse
) - A
float
for number tags, example:7.0
Dynamic columns naming convention: metadata
After the tags, there might be some more dynamic columns regarding Metadata.
If audio were ingested together with metadata, we will expose them in the output.
The name of the column is prefixed with metadata-
following by the slugified metadata key.
Examples:
metadata-campaignName
metadata-callCenter
metadata-duration
metadata-1234
All values are considered to be of type string
.
Sample data
Below is a sample of how the data may appear:
unique ID,link to audio,datetime,campaign name,duration in seconds,IVR end,phone number,status,decisional,Motif d'Appel,Accueil conforme,Score de recommandation,metadata-duration,metadata-callCenter
550-1745458371.105138,https://app.uh.live/scribr/550-1745458371.105138,2025-04-23T15:35:17+00:00,Acme Corp after-sales service,123,32.5,+33102030405,qualified,Tous motifs,Demande d'informations sur la carte de fidélité,True,7.0,123,Lille
Processing Recommendations
When processing this file, applications should:
- Always expect and handle the fixed columns
- Be prepared to encounter new dynamic columns not listed in this document
- Ignore dynamic columns that are not relevant to their processing needs
- Not assume a fixed total number of columns