Skip to content

SkyData

SkyData is a managed MySQL data service from Skybox Communications that gives your team direct SQL access to NICE CXone call center data for reporting, dashboards, and analytics.

Product Overview

SkyData continuously retrieves and consolidates call center data from NICE CXone into a query-ready MySQL database.

  • Near real-time visibility: Data is refreshed every 10–15 minutes.
  • Historical reporting: Data is continuously appended, making trend analysis easy.
  • Analyst-friendly access: Connect with standard SQL and ODBC tools.
  • Broad operational coverage: Agents, contacts, skills, campaigns, dispositions, teams, and state/activity rollups.

Typical Use Cases

  • Contact center performance dashboards
  • SLA and queue analysis
  • Agent productivity reporting
  • Operational trend and historical analysis

SkyData Service Highlights

  • Hosted MySQL database access
  • Hosted on AWS for reliable, scalable access
  • Month-to-month subscription model
  • No annual contract (cancel anytime)
  • Includes core call center entities (agents, states, contacts, skills, and more)

Getting Started with Skybox

Before configuring ODBC, complete these onboarding steps:

  1. Create an API application in your CXone Business Unit with access to required APIs.
  2. Create a CXone user with Business Unit admin access.
  3. Contact Skybox Communications to provision your SkyData database.
  4. Configure your ODBC connection using the steps below.

Source: Skybox SkyData Product Page

Configuration / Installation

To connect to SkyData from your reporting tools, complete the following steps.

1) Install MySQL ODBC Driver

Download and install the standard MySQL ODBC connector:

2) Create an ODBC Connection

Use these connection settings:

  • TCP/IP Server: skydata.skyboxcommunications.com
  • Port: 3306
  • User: Provided by Skybox Support
  • Password: Provided by Skybox Support

3) Select Database

Only one database is available for your SkyData account—select that database.

4) Set Time Zone in Advanced Options

Open Details in the ODBC setup and set the Initial Statement value so returned date/time values match your reporting timezone.

Example:

SET time_zone = 'America/New_York';

Example ODBC configuration screens:

Initial Statement field with timezone command

ODBC Details screen with Initial Statement option

Data Model Summary

SkyData includes the following tables:

  1. Agent
  2. Agent_State_Log
  3. Agent_State_Summary_By_Hour
  4. Agent_Summary_By_Day
  5. Agent_TimeCard
  6. Campaign
  7. Contact_Custom_Data
  8. Contact_Detail
  9. Disposition
  10. Point_Of_Contact
  11. Skill
  12. Team

Table Definitions

1) Agent

  • Purpose: List of users/agents in the business unit, including profile and reporting attributes.
  • Source: REST
  • Endpoint: /Agents
  • Method: GET
Field Type Description
AgentID int(11) Unique inContact agent identifier
UserName varchar(101) Email-formatted login
FirstName varchar(101) Agent first name
MiddleName varchar(101) Agent middle name
LastName varchar(101) Agent last name
Email varchar(101) Agent email
IsActive tinyint(1) Active status
TeamID int(11) Team identifier
TeamName varchar(101) Team name
ReportToID int(11) User ID the agent reports to (optional)
ReportToFirstName varchar(101) Supervisor first name
ReportToMiddleName varchar(101) Supervisor middle name
ReportToLastName varchar(101) Supervisor last name
IsSupervisor tinyint(1) Supervisor flag
LastLogin timestamp Last login timestamp
LastModified timestamp Last modified timestamp
Location varchar(101) Custom location value
Custom1 varchar(101) Custom variable
Custom2 varchar(101) Custom variable
Custom3 varchar(101) Custom variable
Custom4 varchar(101) Custom variable
Custom5 varchar(101) Custom variable
InternalID varchar(101) No longer used
BusinessUnitId int(11) Business unit identifier

2) Agent_State_Log

  • Purpose: Agent state transitions during login sessions (availability, work state, durations).
  • Source: Data Download Report 350083
Field Type Description
Agent_Session_Id bigint(20) Unique ID of agent login session
Agent_No int(11) Unique agent ID
Agent_Name varchar(101) Agent display name
Team_No int(11) Team ID
Bus_No bigint(20) Business unit ID
StateIndex int(11) State identifier
Start_Date timestamp State start date/time
Working int(11) Work state (0-4)
Available int(11) Available flag (0/1)
Outstate_code int(11) Unavailable reason code ID
Outstate varchar(45) Unavailable reason text
Log_State int(11) Log state marker (0/1/2)
Skill_No int(11) Skill ID
Skill_Name varchar(30) Skill name
Duration bigint(20) Time in state (ms)
End_Date timestamp State end date/time

3) Agent_State_Summary_By_Hour

  • Purpose: Hourly rollup of agent state activity.
  • Source: Custom rollup of Agent_State_Log
Field Type Description
Agent_Session_Id bigint(20) Unique agent login ID
Agent_State varchar(50) State name
State_Start timestamp Hour start
State_End timestamp Hour end
Agent_No int(11) Agent ID
Agent_Name varchar(101) Agent display name
Team_No int(11) Team ID
DurationInSeconds decimal(32,0) Total duration in seconds

4) Agent_Summary_By_Day

  • Purpose: Daily summary of inbound/outbound activity and time metrics.
  • Source: Data Download Report 30
Field Type
Agent_No int(11)
Agent_Name varchar(101)
Date date
Team_No int(11)
Inbound_Contacts int(11)
Outbound_Contacts int(11)
ACD_Time float
Ave_Acd float
Outbound_Time float
Ave_Outbound float
Unavailable_Time float
Available_Time float
Total_Time float
ReFused_Contacts int(11)
Held_Party_Abandon int(11)
InContact_Percent float
ACD_Outbound_Avail_Percent float

5) Agent_TimeCard

  • Purpose: Agent login/logout sessions by week.
  • Source: Data Download Report 23
Field Type Description
Sequence_No bigint(20) Unique session ID
Name varchar(101) Agent display name
Agent_No int(11) Agent ID
Team_No int(11) Team ID
Login_Date timestamp Login date/time
Logoff_Date timestamp Logout date/time
Duration int(11) Session duration in seconds
Wk int(11) Week number (1-52)

6) Campaign

  • Purpose: Campaign catalog.
  • Source: REST
  • Endpoint: /Campaigns
  • Method: GET
Field Type
CampaignID int(11)
CampaignName varchar(80)
Description varchar(1026)
IsActive int(11)
Notes varchar(1026)
LastModified timestamp
BusinessUnitId int(11)

7) Contact_Custom_Data

  • Purpose: Custom key/value elements captured during contact processing.
  • Source: Data Download Report 2
Field Type
Contact_id bigint(20)
data_Name varchar(45)
data_value varchar(400)

8) Contact_Detail

  • Purpose: Comprehensive inbound/outbound contact detail dataset.
  • Source: REST
  • Endpoint: /Contacts/Completed

This table contains 40+ elements related to contact timing, routing, queue, hold, disposition, skill, team, and identifiers.

Commonly used fields include:

  • Contact_ID
  • Master_Contact_ID
  • Start_Date, Start_Time
  • Agent_Name, Agent_No
  • Team_Name, Team_No
  • Skill_Name, Skill_No
  • Campaign_Name, Campaign_No
  • Disposition_Code, Disposition_Name, Disp_Comments
  • Inqueue, Prequeue, Postqueue, Hold_Time, Routing_Time
  • Agent_Working_Time, ACW_Time, Callback_Time
  • Total_Time_Plus_Disposition
  • Abandon, Abandon_Time
  • Point_Of_Contact_Code, Point_Of_Contact_Name
  • Media_Name, SLA, Logged, Tags

9) Disposition

  • Purpose: Dispositions defined for the business unit.
Field Type
dispositionId int(11)
dispositionName varchar(101)
displayOrder varchar(101)
classification varchar(101)
reportingGroup varchar(101)
systemOutcome varchar(101)
requireCommitmentAmount tinyint(1)
requireRescheduleDate tinyint(1)
agentSpecific tinyint(1)

10) Point_Of_Contact

  • Purpose: Business unit points of contact and associated routing metadata.
Field Type
ContactCode bigint(20)
ContactAddress varchar(60)
ContactDescription varchar(80)
IsActive tinyint(1)
DefaultSkillId int(11)
Notes varchar(450)
ScriptName varchar(60)
MediaTypeId mediumtext
MediaTypeName varchar(30)
IsOutbound tinyint(1)
OutBoundSkill tinyint(1)
BusinessUnitId mediumtext

11) Skill

  • Purpose: Skill definitions and behavior settings.
Field Type
SkillID int(11)
SkillName varchar(30)
MediaTypeID varchar(45)
MediaTypeName varchar(45)
IsActive int(11)
CampaignID int(11)
CampaignName varchar(80)
IsDialer int(11)
Notes varchar(1026)
OutBoundStrategy varchar(45)
IsOutbound int(11)
PriorityBlending int(11)
EmailFromAddress varchar(101)
UseACW int(11)
BusinessUnitId int(11)
RequireDisposition int(11)
UseDisposition int(11)
ScreenPopTriggerEvent varchar(45)
UseSecondaryDispositions int(11)
ScriptDisposition varchar(45)
IsNaturalCallingRunning int(11)
EmailFromEditable int(11)
HoursOfOperationProfileId int(11)

12) Team

  • Purpose: Team definitions in the business unit.
Field Type
TeamId int(11)
TeamName varchar(45)
isActive int(11)
Notes varchar(255)
lastUpdatetime timestamp
agentCount int(11)
description varchar(45)
businessUnitId int(11)

Notes

  • Refresh interval references in source materials mention both 10 minutes and 15 minutes; operationally, SkyData is near real-time in 10–15 minute intervals.