Data Export API

 

Chrono Endpoint

GET: /Web/Api/Export/Chrono/{start}/{end}

Used to retrieve all chronological raw data within a specified time range.

{start} and {end} are required and use the format: YYYYMMDDThhmmss.fff

Query Parameters:

Note: parameter names and values are case insensitive.

Optional:

  • format: Format of the result.  Valid formats are:

    • json [Default]

    • xml

 

Current Job Endpoint

GET: /Web/Api/Export/CurrentJob

Returns the current job record for each machine.

Query Parameters:

Note: parameter names and values are case insensitive.

Optional:

  • format: Format of the result.  Valid formats are:

    • json [Default]

    • xml

  • areas: Comma separated list of Area Id’s to include in the result data.

  • machines: Comma separated list of Machine Id’s to include in the result data; if both areas and machines are specified then machines parameter will be used and areas parameter will be ignored.

 

Job Name Rollup Endpoint

GET: /Web/Api/Export/Jobs/Start/{start:slxdatetime}/End/{end:slxdatetime}

Returns all job records rolled up.

Query Parameters:

Note: parameter names and values are case insensitive.

Optional:

  • format: Format of the result.  Valid formats are:

    • json [Default]

    • xml

    • includeFullJob: extend job’s metrics to include data from job’s start till job’s end. Unless job exceeds DataExportFullJobDaysLimit (Configuration.xml)
      Valid format: true
      syntax: ?includeFullJob=true

 

Job Name Single Endpoint

GET: /Web/Api/Export/Job/{jobName}/Start/{start:slxdatetime}/End/{end:slxdatetime}

Returns a single job record rolled up.

Query Parameters:

Note: parameter names and values are case insensitive.

Optional:

  • format: Format of the result.  Valid formats are:

    • json [Default]

    • xml

 

Job Name All Instances Endpoint

GET: /Web/Api/Export/Job/{jobName}/Instances/Start/{start:slxdatetime}/End/{end:slxdatetime}

Returns all job instances matching the jobName.

Query Parameters:

Note: parameter names and values are case insensitive.

Optional:

  • format: Format of the result.  Valid formats are:

    • json [Default]

    • xml

 

Job Name Single Instance Endpoint

GET: /Web/Api/Export/Job/{jobName}/instance/{jobInstance}/Start/{start:slxdatetime}/End/{end:slxdatetime}

Returns a single job record instance..

Query Parameters:

Note: parameter names and values are case insensitive.

Optional:

  • format: Format of the result.  Valid formats are:

    • json [Default]

    • xml

 

Job All Instances Endpoint

GET: /Web/Api/Export/Jobs/Instances/Start/{start:slxdatetime}/End/{end:slxdatetime}

Returns all job instances of all jobs.

Query Parameters:

Note: parameter names and values are case insensitive.

Optional:

  • format: Format of the result.  Valid formats are:

    • json [Default]

    • xml

 

Summary Endpoint

GET: /Web/Api/Export/Summary

A highly flexible query that is provided to retrieve custom data in a form that is as simple or as detailed as need be.

Query Parameters:

Note: parameter names and values are case insensitive.

Required:

  • windowRange: Specifies the window range for the query.  Valid options are:

    • interval: Used to specify an exact start time and end time to query.  Associated required fields:

      • start: Start time of the interval.  Formatted using: YYYYMMDDThhmmss.fff

      • end: Start time of the interval.  Formatted using: YYYYMMDDThhmmss.fff

    • shift: Used to specify a Shift calendar based query.  Associated optional fields:

      • start: Optional start time, specified with format of YYYYMMDDThhmmss.fff, used as a reference point for the shift to query.  If not specified then the current time is used.

      • offset: Optional offset, as an integer, from start reference point.  If not specified then offset=0 is used.  For example to get previous shift use: offset=-1

    • job: Used to specify an exact Job to query.  Associated fields are:

      • jobName: The Name of the job being queried.

      • start: Optionally can provide a start time (and end time) to limit the job search.  Formatted using: YYYYMMDDThhmmss.fff

      • end: Optionally can provide an end time (and start time) to limit the job search.  Formatted using: YYYYMMDDThhmmss.fff

    • Default’s to Interval if windowRange is not provided

 

Optional:

  • format: Format of the result.  Valid formats are:

    • json [Default]

    • xml

  • areas: Comma separated list of Area Id’s to include in the result data.

  • machines: Comma separated list of Machine Id’s to include in the result data; if both areas and machines are specified then machines parameter will be used and areas parameter will be ignored.

  • groupby: Comma separated list of options to group the resulting data with.  Valid options are:

    • area

      • Groups the result data based on top-level areas from the specified starting area.  Ie. Company divisions.

        • Associated field:

          • areaGroupRoot: Area ID to use as the starting area.  Data will be grouped by first generation areas underneath this area.  Default is areaGroupRoot = 0.

    • plant

      • Groups result data into Plants.

    • machine

      • Groups result data into individual Machines.

    • jobName

      • Groups result data by Job Name (if the same Job Name is run at different times the corresponding data will be added together into one group).

    • jobInstance

      • Groups result data by individual Job instances (if the same Job Instance is run at different times the corresponding data will be put into separate groups).  If both jobName and jobInstance are provided then jobName will be ignored and jobInstance will be used.

    • shiftName

      • Groups result data by Shift Name (all data with the same Shift Name will be added together into a single group)  If both shiftName and shiftInstance are provided then shiftName will be ignored and shiftInstance will be used.

    • shiftInstance

      • Groups result data by individual Shift instances (each day a particular Shift occurs will become a separate group).

  • jobFilter: Comma separated list of filters and filter values.  When specified the result data will only include data with jobs matching the specified values.  All other data will be filtered out.

    • Example: jobFilter=Filter3,abc,Filter7,14.2

      • This would match against jobs where Filter1=abc and Filter7=14.2

  • subJobFilter: Comma separated list of subjob filters and subjob filter values.  When specified the result data will only include data with sub jobs matching the specified values.  This filter only affects the subJobs metric (described below), no other data is affected.  All other data will be filtered out.

    • Example: subjobFilter=Filter1,abc,Filter3,24.0

      • This would match against jobs where Filter1=abc and Filter3=24.0

  • shiftFilter: Comma separated list of Shift Names to include in the results.  Data associated with other Shift Names will be filtered out.

  • classificationFilter: Comma separated list specifying what Classification values the data must have to be included in the results.  Data associated with other Classification values will be filtered out.  Valid Classification values are:

    • performance

    • availability

    • capacity

  • reasonNameFilter: Comma separated list specifying what reasons to include in the results.  Data associated with other reason names will be filtered out.  Example: "Safety Guard Open"

  • reasonGroupFilter: Comma separated list specifying what reason groups to include in the results.  Data associated with other reason groups will be filtered out.  Example: "Maintenance"

  • jobFilterType: Specify whether Job Filter is Inclusive or Exclusive. eg. "jobfiltertype=exclusive"

  • subJobFilterType: Specify whether SubJob Filter is Inclusive or Exclusive.

  • shiftFilterType: Specify whether Shift Filter is Inclusive or Exclusive.

  • classificationFilterType: Specify whether Classification Filter is Inclusive or Exclusive. 

  • reasonNameFilterType: Specify whether Reason Name Filter is Inclusive or Exclusive.

  • reasonGroupFilterType: Specify whether Reason Group Filter is Inclusive or Exclusive. 

  • stateInstance: Returns every instance of states, True or False

  • reasonInstance: Returns every instance of reasons, True or False

  • scrapReasonInstance: Returns every instance of scrap reasons, True or False

  • stateReasonInstance: Returns every instance of state reasons, True or False

  • Metrics: Comma separated list specifying what Metrics to return in the result data.  Valid options are:

    • oeeUptimeHours: [Default] Total scheduled duration where state is either uptime or speedloss (Used for OEE calculation).

    • uptimeHours: [Default] Total uptime in hours.

    • uptimeSeconds: [Default] Total uptime in seconds

    • speedLossHours: [Default] Total speedloss in hours

    • speedLossSeconds: [Default] Total speedloss in seconds

    • downtimeHours: Total downtime in hours.

    • downtimeSeconds: Total downtime in seconds.

    • setupHours: Total setup time in hours.

    • setupSeconds: Total setup time in seconds.

    • total: Total parts produced in base units.  

    • scrap: Scrap production in base units.

    • oee: Overall Equipment Effectiveness as %.

    • oeeC: Overall Equipment Effectiveness as % factoring in Capacity.

    • availability: % of Uptime over Scheduled Time

    • performance: % of Actual Production Rate / Expected Production Rate

    • performanceC: % of Actual Production Rate / Expected Production Rate (with capacity)

    • quality: % of Good production / Total production 

    • qualityC: % of Good production / Total production (with capacity)

    • capacity: % of Scheduled time over Total Time 

    • cycleTimeSeconds: average cycle time in seconds per cycle.

    • jobs: When the jobs option is specified the resulting metrics will include a summary of what jobs occurred, For each job, all job details will be provided.

    • subJobs: When the subJobs option is specified the resulting metrics will include a summary of what sub jobs occurred.  For each sub job the following will be included:

      • id: the subjob’s ID

      • filters: list of filter values for the subjob

      • total: Total parts produced, in base units, for the sub job

      • scrap: Scrap production, in base units, for the sub job

    • scrapReasons: When the scrapReasons option is specified the resulting metrics will include a summary of what scrap reasons occurred.  For each scrap reason the following will be included:

      • name: The scrap reason’s name.

      • group: The scrap reason variable’s Group.

      • amount: The amount of scrap production, in base units, for this scrap reason.

    • states: When the states option is specified the resulting metrics will include a summary of what machine states occurred.  For each machine state the following will be included:

      • name: The machine state’s name.

      • classification: The machine state’s classification (

      • duration: The machine state’s duration.

      • occurrences: The number of occurrences for this machine state.

    • reasons: When the reasons option is specified the resulting metrics will include a summary of what reasons occurred.  For each reason the following will be included:

      • name: The reason’s name.

      • group: The reason’s group.

      • classification: The reason’s classification.

      • duration: The reason’s duration.

      • occurrences: The reason’s occurrences.

    • stateReasons: When the stateReasons option is specified the resulting metrics will include a summary of the combined machine states with reasons that occurred.  For each unique machine state and reason combination the following will be included:

      • stateName: The machine state’s name.

      • reasonName: The reason’s name.

      • classification: The record’s classification.

      • duration: The record’s duration.

      • occurrences: The record’s number of occurrences.

    • comments: When the comments option is specified the resulting metrics will include a list of what comments occurred.  For each comment the following will be included:

      • Start: Beginning of the first comment.

      • End: End of the last comment

      • target: the event (machine state / reason / scrap) the comment is associated with.

      • comment: the text value of the comment.

      • duration: The record’s duration.

      • occurrences: The record’s number of occurrences.

    • Adoption: Metrics used to determine the extent our Customer is adopting, integrating with, and using Shoplogix technologies. The following will be included:

      • PercentOnlineMachines: The percentage of online machines

      • PercentReasonsApplied: the Percentage of Reasons Applied vs Not Applied.

      • PercentReportingScrap: Percent of machines reporting scrap. (If a client does not report scrap, they will be penalized as it is good practice).

      • PercentGoodPerformance: Percent of machines with good performance.

      • PercentTargetComments: Percentage of daily comments input.

      • AdoptionScore: Average final score of the above metrics.

    • SetupScrap: Scrap during setup state.

    • ErpClassifications: ERP Classifications set in Reasons and Machine States. Reach out to Product for details:

      • Name: Name of the ERP Classification.

      • Duration: The record’s duration in hours.

 

 

Appendix

  • Xml Schema document: