Skip to content

Example

Process Request

Method used for requesting clips that are returned as manifest URLs

Headers

http
tenantId: <tenant-id>
applicationId: <application-id>
apiKey: <api-key>

Method

POST

Request Path Api Key Required

api/golfdata/report/ProcessReportRequest

Request Body

json
{
  "ChampionRequest": {
    "Tournaments": [
      {
        "TournamentId": "<champion-tournament-id>",
        "Rounds": [
          {
            "RoundNumber": "<champion-tournament-id>", // Round 1 - 3
            // Hole and Stroke limitations do not apply for scenarios
            "Holes": [
              // If unspecified, will use all 18 holes and every shot for every hole
              {
                "HoleNumber": "number from 1 to 18",
                "Strokes" ["individual stroke numbers eg: 1, 2, 3"]
              }
            ]
          }
        ]
      }
      ...
    ],
    "PlayerIds": [
        "<champion-player-id>,
        <champion-player-id>,
        <champion-player-id>"
    ],
    "TeamIds": [
        "<champion-team-id>,
        <champion-team-id>,
        <champion-team-id>"
    ]
  },
  "ClippingPreference": {
    "SortType": "<sort-type>",
    "IsDescending": "boolean to sort clipepd strokes in reverse",
    "KeepDuplicates": "boolean to keep duplicate strokes",
    "DurationLimit": "Video duration time limit",
    "CountLimit": "Hole count limit",
  },
  "Queries": [
    {
      "Scenario": "<golf-scenario-type>",
      "Metrics": [
        "<golf-metric-type>",
        "<golf-metric-type>"
        ],
      // below are optional
      // if neither are specified, start 5s before and end 10s after
      "StartBeforeSeconds": "Clip Start Time before the stroke is taken",
      "EndAfterSeconds": "Clip Start Time after the stroke is taken"
    }
  ]
}

Fields

ChampionRequest object

Champion Data that will be used for this Replay Request

ClippingPreference object

Clipping settings used to curate the strokes that are returned as clips

Queries object[]

Queries that select what types of strokes are returned as clips

Response

json
{
  "clipCount": "Number of clips generated",
  "duration": "total duration of clips",
  "data": [{
    "information about hole that was included in clip",
    "strokes": [{
      "information about the strokes on this hole included on this hole"
    }]
  }],
  "dash": "<dash-manifest-url>",
  "hls": "<hls-manifest-url>"
}

ClipCount int

Number of Clips generated

Duration timeSpan

Total cumulative duration of all clips

Data object[]

Holes and strokes per hole that were clipped, with attached metadata

NOTE

The manifest URLs are currently configured to last for a duration of 2 hours by default