SK Telecom Golf Swing Analyzer API

The Golf Swing Analyzer API from SK Telecom — 3 operation(s) for golf swing analyzer.

Operations 3

POST /golf/v1/create_analyzer create_analyzer #
GET /golf/v1/get_result/{JobID} get_result #
POST /golf/v1/e2e End to End #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sk-telecom-golf-swing-analyzer-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sk-telecom-golf-swing-analyzer-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: META Golf Swing Analyzer API
  version: '1.0'
servers:
- url: https://apis.openapi.sk.com/sigmeta
security:
- sec0: []
tags:
- name: Golf Swing Analyzer
paths:
  /golf/v1/create_analyzer:
    post:
      tags:
      - Golf Swing Analyzer
      summary: create_analyzer
      description: 골프 스윙 준비 자세의 Frame을 추출할 영상을 업로드 할 수 있는 URL과 Job ID를 반환합니다.
      operationId: create_analyzer
      parameters:
      - $ref: '#/components/parameters/ContentTypeJson'
      - $ref: '#/components/parameters/AppKey'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - Type
              - Action
              - Swing
              properties:
                Type:
                  type: string
                  description: 분석 유형
                  default: Guideline
                  enum:
                  - Guideline
                Action:
                  type: string
                  description: 분석 활동
                  default: CreateAnalyzer
                  enum:
                  - CreateAnalyzer
                Swing:
                  type: string
                  description: 전면(Full_Front), 후면(Full_Back) 영상 선택
                  default: Full_Front
                  enum:
                  - Full_Front
                  - Full_Back
      responses:
        '200':
          $ref: '#/components/responses/CreateAnalyzer'
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  category:
                    type: string
                  code:
                    type: string
                  message:
                    type: string
              examples:
                MethodNotAllowed:
                  value:
                    id: '400'
                    category: gw
                    code: E.GW.METHOD_NOT_ALLOWED
                    message: ${request.http.method} not permited
                Unauthorized:
                  value:
                    id: '400'
                    category: gw
                    code: E.GW.INVALID_APIKEY
                    message: Invalid API Key
                BackendServiceUnavailable1:
                  value:
                    id: '400'
                    category: gw
                    code: '-1'
                    message: The host doew not exist or the host is down when routing
                BackendServiceUnavailable2:
                  value:
                    id: '400'
                    category: gw
                    code: '-2'
                    message: The Routing URL is incorrect
                BackendServiceUnavailable3:
                  value:
                    id: '400'
                    category: gw
                    code: '-3'
                    message: Connection Timeout occured when routing
                BackendServiceUnavailable5:
                  value:
                    id: '400'
                    category: gw
                    code: '-5'
                    message: An unknown type of error has occurred when routing
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/paths/~1golf~1v1~1create_analyzer/post/responses/400/content/application~1json/schema'
              examples:
                Unauthorized:
                  value:
                    id: '401'
                    category: gw
                    code: '8001'
                    message: 유효하지 않은 API Key입니다.
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/paths/~1golf~1v1~1create_analyzer/post/responses/400/content/application~1json/schema'
              examples:
                ForbiddenIP:
                  value:
                    id: '403'
                    category: gw
                    code: '8104'
                    message: 접근권한이 없는 IP주소입니다.
                ForbiddenTime:
                  value:
                    id: '403'
                    category: gw
                    code: '8105'
                    message: 서비스 제한 시간입니다.
                ExceedRatelimit:
                  value:
                    id: '403'
                    category: gw
                    code: '8101'
                    message: 초(분/시간)당 처리 건수를 초과했습니다.
                ExceedQuarter:
                  value:
                    id: '403'
                    category: gw
                    code: '8102'
                    message: 최대 호출 허용 건수를 초과했습니다.
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/paths/~1golf~1v1~1create_analyzer/post/responses/400/content/application~1json/schema'
              examples:
                NotFound:
                  value:
                    id: '404'
                    category: gw
                    code: '404'
                    message: Gateway service not found
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/paths/~1golf~1v1~1create_analyzer/post/responses/400/content/application~1json/schema'
              examples:
                MethodNotAllowed:
                  value:
                    id: '405'
                    category: gw
                    code: '7104'
                    message: 허용하지 않는 HTTP Method 입니다.
        '408':
          description: Request Timeout
          content:
            application/json:
              schema:
                $ref: '#/paths/~1golf~1v1~1create_analyzer/post/responses/400/content/application~1json/schema'
              examples:
                RequestTimeout:
                  value:
                    id: '408'
                    category: gw
                    code: '-4'
                    message: Read Timeout occured when routing
                BackendServiceShutDown:
                  value:
                    id: '408'
                    category: gw
                    code: '408'
                    message: The server would like to shut down this unused connection
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/paths/~1golf~1v1~1create_analyzer/post/responses/400/content/application~1json/schema'
              examples:
                Default:
                  value:
                    id: '500'
                    category: gw
                    code: 000 또는 GW000
                    message: The request failed due to some unknown reason
                SLANotFound:
                  value:
                    id: '500'
                    category: gw
                    code: '9999'
                    message: Gateway 내부 오류가 발생하였습니다.
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/paths/~1golf~1v1~1create_analyzer/post/responses/400/content/application~1json/schema'
              examples:
                ServiceUnavailable:
                  value:
                    id: '503'
                    category: gw
                    code: '8901'
                    message: 라우팅에 실패했습니다.
  /golf/v1/get_result/{JobID}:
    get:
      tags:
      - Golf Swing Analyzer
      summary: get_result
      description: 분석된 결과물을 JSON 객체로 반환합니다.
      operationId: get_result
      parameters:
      - $ref: '#/components/parameters/AppKey'
      - $ref: '#/components/parameters/JobID'
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n  \"JobID: 요청한 Job ID\": \"17303806-ce11-456f-bfd1-aa5c4b1a0871\",\n  \"State: Success/Fail\": \"Fail\",\n  \"Status: Create/NotCreated/Analyzing/AllDone/Failed\": \"NotCreated\",\n  \"address_frame_num: 추출된 스윙 준비 자세 Frame Number\": 10,\n  \"Joints: 25개의 관절 좌표, 추출되지 않았을 경우 -1 로 반환, [nose, neck, right shoulder, right elbow, right wrist, left shoulder, left elbow, left wrist, pelvis, right hip, right knee, right ankle, left hip, left knee, left ankle, right eye, left eye, right ear, left ear, left big toe, left small toe, left heel, right big toe, right small toe, right heel]\": [1.2, 2.2, 3.2],\n  \"Guideline: Front 의 Guideline 생성을 위한 Joints 외 10개의 좌표, [body_line_left_bottom_point, body_line_left_top_point, body_line_right_bottom_point, body_line_right_top_point, head_center, head_circle_radius, hip_ankle_line_leftbottom_point, hip_ankle_line_lefttop_point, hip_ankle_line_rightbottom_point, hip_ankle_line_righttop_point, shoulder_line_left_point, shoulder_line_right_point]\": [1.2, 2.2, 3.2],\n  \"url: Meta가 저장되어 있는 URL\": \"http://meta\",\n  \"Error: Error 내용\": \"'Swing'\"\n}"
              schema:
                type: object
                properties:
                  'JobID: 요청한 Job ID':
                    type: string
                    example: 17303806-ce11-456f-bfd1-aa5c4b1a0871
                  'State: Success/Fail':
                    type: string
                    example: Fail
                  'Status: Create/NotCreated/Analyzing/AllDone/Failed':
                    type: string
                    example: NotCreated
                  'address_frame_num: 추출된 스윙 준비 자세 Frame Number':
                    type: integer
                    example: 10
                    default: 0
                  ? 'Joints: 25개의 관절 좌표, 추출되지 않았을 경우 -1 로 반환, [nose, neck, right shoulder, right elbow, right wrist, left shoulder, left elbow, left wrist, pelvis, right hip, right knee, right ankle, left hip, left knee, left ankle, right eye, left eye, right ear, left ear, left big toe, left small toe, left heel, right big toe, right small toe, right heel]'
                  : type: array
                    items:
                      type: number
                      example: 1.2
                      default: 0
                  ? 'Guideline: Front 의 Guideline 생성을 위한 Joints 외 10개의 좌표, [body_line_left_bottom_point, body_line_left_top_point, body_line_right_bottom_point, body_line_right_top_point, head_center, head_circle_radius, hip_ankle_line_leftbottom_point, hip_ankle_line_lefttop_point, hip_ankle_line_rightbottom_point, hip_ankle_line_righttop_point, shoulder_line_left_point, shoulder_line_right_point]'
                  : type: array
                    items:
                      type: number
                      example: 1.2
                      default: 0
                  'url: Meta가 저장되어 있는 URL':
                    type: string
                    example: http://meta
                  'Error: Error 내용':
                    type: string
                    example: '''Swing'''
  /golf/v1/e2e:
    post:
      tags:
      - Golf Swing Analyzer
      summary: End to End
      description: 3MB 이하의 영상, 이미지의 업로드와 분석을 한번에 처리하여 JSON 객체로 반환합니다.
      operationId: e2e
      parameters:
      - $ref: '#/components/parameters/ContentTypeMultipart'
      - $ref: '#/components/parameters/AppKey'
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - Type
              - Swing
              - File
              properties:
                Type:
                  type: string
                  description: 분석 유형
                  default: Guideline
                  enum:
                  - Guideline
                Swing:
                  type: string
                  description: 전면(Full_Front), 후면(Full_Back) 영상 선택
                  default: Full_Front
                  enum:
                  - Full_Front
                  - Full_Back
                File:
                  type: string
                  description: '동영상 파일(*.mp4, 지원 Codec : H.264, MPEG), 이미지 파일(*.jpg, *.png, *.bmp)'
                  format: binary
      deprecated: false
components:
  parameters:
    AppKey:
      name: appKey
      in: header
      description: <a href="https://openapi.sk.com/mypage/project/" target="_blank">마이페이지>앱</a>>앱키(appKey) 탭에서 조회
      required: true
      schema:
        type: string
    ContentTypeMultipart:
      name: Content-Type
      description: multipart/form-data
      in: header
      required: true
      schema:
        type: string
        default: multipart/form-data
    JobID:
      name: JobID
      in: path
      description: create_analyzer에서 응답 받은 해당 분석의 Job ID
      required: true
      schema:
        type: string
    ContentTypeJson:
      name: Content-Type
      description: application/json
      in: header
      required: true
      schema:
        type: string
        default: application/json
  responses:
    CreateAnalyzer:
      description: OK
      content:
        application/json:
          schema:
            type: object
            properties:
              JobID:
                type: string
                description: 부여된 Job ID입니다.
              State:
                type: string
                description: 실행 성공 여부입니다. Success/Fail
              Status:
                type: string
                description: 실행 상태입니다. Create/NotCreated/Analyzing/AllDone/Failed
              URL:
                type: string
                description: 파일을 업로드할 수 있는 AWS S3 임시 URL입니다.
              Form:
                type: object
                description: 파일 업로드를 위한 S3 Bucket 정보입니다.
                properties:
                  key:
                    type: string
                    description: 버킷 내 객체에 대한 고유한 식별자입니다.
                  x-amz-algorithm:
                    type: string
                    description: 요청 서명을 만드는 데 사용한 버전과 HMAC 암호화 알고리즘입니다.
                  x-amz-credential:
                    type: string
                    description: 자격 증명 범위 값입니다. 액세스 키, 날짜, 대상 지역, 요청하는 서비스 및 종료 문자열(aws4_request)을 포함하는 문자열입니다.
                  x-amz-date:
                    type: string
                    description: 서명이 생성된 날짜입니다.
                  x-amz-security-token:
                    type: string
                    description: 요청 시 사용할 임시 보안 토큰입니다.
                  policy:
                    type: string
                    description: S3 버킷 정책 키입니다.
                  x-amz-signature:
                    type: string
                    description: 요청을 인증하기 위한 암호화된 서명입니다.
              Error:
                type: string
                description: 실행 상태가 실패(Status=Failed)일 때 응답되는 에러 정보입니다.
          examples:
            Success:
              value:
                JobID: 1f887a4f-69c9-477a-b2d1-05ce00252970
                State: Success
                Status: Created
                URL: https://hivevisionprod-golf-data-ap-northeast-2-40524.s3.amazonaws.com/
                Form:
                  key: input/Guideline/Full_Front/2022/9/19/1f887a4f-69c9-477a-b2d1-05ce00252970.mp4
                  x-amz-algorithm: AWS4-HMAC-SHA256
                  x-amz-credential: ASIAV4WRSFVPKHZL74EG/20220919/ap-northeast-2/s3/aws4_request
                  x-amz-date: 20220919T062449Z
                  x-amz-security-token: IQoJb3JpZ2luX2VjEJb//////////wEaDmFwLW5vcnRoZWFzdC0yIkgwRgIhAMznqCC/YdbfbLjE4SeB9iLfw2Vpau50Nqg/wtP02xZyAiEApBzjan+H5E5tbMemUWnAFMYeh2DhCYj84c/VpjfxHegqpAMIQBABGgw0MDUyNDAxNjM2NzgiDKb7iR6sxhIggs/Q+SqBA4WDbqN/NDsWvrjV6dDLa4bZmWqkw9iC9Qo1QnxV646BNAZ4J+m63gP2xckpxsVM5dlU6H3YLGtVmadVyNLjCvgTBjef494/9yw3kbyrwYNmQ7vah0VOLXMwqWBhaHglpb1z/eOjToKO6wy3T+SDI1yqCDZzbXJGj4L4sCvISuPV4kE7ZZQAig6WhEONS60vne76jAZmCk8aykCMbTYrrRHsvcb47xa9gHimBaNq9+IV9qoA6+eGEmXJFvdrp1oiEeLoaCd7vCe2Dek2t4bACkY79UDERf9hElnn5w1tkUxRN1rzEh9d3GyjUdlWYpc0sBN2JCiBUvh53r+AzkgITPuBfPv6G9KhueChKvuI30/W5D8jQ8Be/w2F6ssnRZfK82YFuHZtoLg/uBYPdtux+mN9pcTxR8NTIx4k57h/Vjj/lpT3L+xHF3sI3U6UeKYQ6xLI6Lf1IpHraV/SNWhfWB3aNqBYvkbeGMZsSMIVWylglOHPEub1Y5aZfNrGBzKymrcwsZagmQY6nAEdzaT8tQKP1I+vGC/r/jLG0Cy8zxJp31OJg7gb6cGsat1zhX5I7c5Nfz/o4lpBXDRnBrizvqxPNOVWjap/YD4nfLG0hrMBinLeaD5jTLR/Xd+egJY265d2tjvPCvDPxBZ2hZ4FNd6440Bgy2/B6ONJEaYXtGU10Rc+Ugi0Ykfw28HoTg/UrJYmfvwZw8zBfGDDosOitEan3HM+TtY=
                  policy: eyJleHBpcmF0aW9uIjogIjIwMjItMDktMTlUMDY6MjY6NDlaIiwgImNvbmRpdGlvbnMiOiBbeyJidWNrZXQiOiAiaGl2ZXZpc2lvbnByb2QtZ29sZi1kYXRhLWFwLW5vcnRoZWFzdC0yLTQwNTI0In0sIHsia2V5IjogImlucHV0L0d1aWRlbGluZS9GdWxsX0Zyb250LzIwMjIvOS8xOS8xZjg4N2E0Zi02OWM5LTQ3N2EtYjJkMS0wNWNlMDAyNTI5NzAubXA0In0sIHsieC1hbXotYWxnb3JpdGhtIjogIkFXUzQtSE1BQy1TSEEyNTYifSwgeyJ4LWFtei1jcmVkZW50aWFsIjogIkFTSUFWNFdSU0ZWUEtIWkw3NEVHLzIwMjIwOTE5L2FwLW5vcnRoZWFzdC0yL3MzL2F3czRfcmVxdWVzdCJ9LCB7IngtYW16LWRhdGUiOiAiMjAyMjA5MTlUMDYyNDQ5WiJ9LCB7IngtYW16LXNlY3VyaXR5LXRva2VuIjogIklRb0piM0pwWjJsdVgyVmpFSmIvLy8vLy8vLy8vd0VhRG1Gd0xXNXZjblJvWldGemRDMHlJa2d3UmdJaEFNem5xQ0MvWWRiZmJMakU0U2VCOWlMZncyVnBhdTUwTnFnL3d0UDAyeFp5QWlFQXBCemphbitINUU1dGJNZW1VV25BRk1ZZWgyRGhDWWo4NGMvVnBqZnhIZWdxcEFNSVFCQUJHZ3cwTURVeU5EQXhOak0yTnpnaURLYjdpUjZzeGhJZ2dzL1ErU3FCQTRXRGJxTi9ORHNXdnJqVjZkRExhNGJabVdxa3c5aUM5UW8xUW54VjY0NkJOQVo0SittNjNnUDJ4Y2tweHNWTTVkbFU2SDNZTEd0Vm1hZFZ5TkxqQ3ZnVEJqZWY0OTQvOXl3M2tieXJ3WU5tUTd2YWgwVk9MWE13cVdCaGFIZ2xwYjF6L2VPalRvS082d3kzVCtTREkxeXFDRFp6YlhKR2o0TDRzQ3ZJU3VQVjRrRTdaWlFBaWc2V2hFT05TNjB2bmU3NmpBWm1DazhheWtDTWJUWXJyUkhzdmNiNDd4YTlnSGltQmFOcTkrSVY5cW9BNitlR0VtWEpGdmRycDFvaUVlTG9hQ2Q3dkNlMkRlazJ0NGJBQ2tZNzlVREVSZjloRWxubjV3MXRrVXhSTjFyekVoOWQzR3lqVWRsV1lwYzBzQk4ySkNpQlV2aDUzcitBemtnSVRQdUJmUHY2RzlLaHVlQ2hLdnVJMzAvVzVEOGpROEJlL3cyRjZzc25SWmZLODJZRnVIWnRvTGcvdUJZUGR0dXgrbU45cGNUeFI4TlRJeDRrNTdoL1Zqai9scFQzTCt4SEYzc0kzVTZVZUtZUTZ4TEk2TGYxSXBIcmFWL1NOV2hmV0IzYU5xQll2a2JlR01ac1NNSVZXeWxnbE9IUEV1YjFZNWFaZk5yR0J6S3ltcmN3c1phZ21RWTZuQUVkemFUOHRRS1AxSSt2R0Mvci9qTEcwQ3k4enhKcDMxT0pnN2diNmNHc2F0MXpoWDVJN2M1TmZ6L280bHBCWERSbkJyaXp2cXhQTk9WV2phcC9ZRDRuZkxHMGhyTUJpbkxlYUQ1alRMUi9YZCtlZ0pZMjY1ZDJ0anZQQ3ZEUHhCWjJoWjRGTmQ2NDQwQmd5Mi9CNk9OSkVhWVh0R1UxMFJjK1VnaTBZa2Z3MjhIb1RnL1VySlltZnZ3Wnc4ekJmR0REb3NPaXRFYW4zSE0rVHRZPSJ9XX0=
                  x-amz-signature: 26abe478cddcc2ecb7592a1fa15a2d81f02f38ed13235a9d7c61cd4dc1a2ef5c
            Fail:
              value:
                JobID: 1f887a4f-69c9-477a-b2d1-05ce00252970
                State: Fail
                Status: NotCreated
                Error: 'Fail in CreateAnalyzer: Wrong Properties'
  securitySchemes:
    sec0:
      type: apiKey
      in: header
      name: appKey
      x-default: l7xx1317e6cad24d4f0d8048aa7336e5623b
x-readme:
  headers: []
  explorer-enabled: true
  proxy-enabled: true
  samples-enabled: true