---
title: "Process fixture metadata updates"
method: POST
path: "/customer-integration/fixture-metadata"
tags: ["Fixture Management"]
---

# Process fixture metadata updates

`POST /customer-integration/fixture-metadata`

Receives and processes fixture metadata updates including sports events, participants, leagues, and event information. The API validates the request, enriches it with customer/platform identifiers, and produces messages to Kafka for downstream processing. Authentication is done via JWT Bearer token which is decoded by the proxy to extract the customer identifier.

## Request body

- FixtureMetadataRequestDto
  - `Header` MessageHeaderDto, required
    - `Type` integer, required — Message type identifier (1 for fixture metadata, 3 for market updates)
    - `MsgSeq` integer — Message sequence number for ordering
    - `MsgGuid` string, uuid, required — Unique message identifier in UUID format
    - `CreationDate` string, date-time — ISO 8601 timestamp when the message was created
    - `ServerTimestamp` integer, required — Unix timestamp in milliseconds
  - `Body` FixtureMetadataUpdateDto, required
    - `Events` FixtureEventDto[], required — Array of fixture events with metadata
      - `FixtureId` integer, required — Unique identifier for the fixture/event
      - `Fixture` FixtureDto, required
        - `Subscription` object
          - `Type` integer
          - `Status` integer
        - `Sport` object, required
          - `Id` integer, required — Sport unique identifier
          - `Name` string, required — Sport name
        - `Location` object, required
          - `Id` integer, required — Location/Country identifier
          - `Name` string, required — Location/Country name
        - `League` object, required
          - `Id` integer, required — League/Tournament identifier
          - `Name` string, required — League/Tournament name
        - `StartDate` string, date-time, required — Event start date and time in ISO 8601 format
        - `LastUpdate` string, date-time — Last update timestamp for the fixture
        - `Status` integer, required — Fixture status code (1=Not Started, 2=In Progress, 3=Finished, etc.)
        - `Participants` object[] — Array of participants (teams or players) in the event
          - `Id` integer, required — Participant unique identifier
          - `Name` string, required — Participant name
          - `Position` string — Participant position (1=Home, 2=Away)
        - `FixtureExtraData` object[] — Additional fixture metadata as name-value pairs
          - `Name` string — Property name
          - `Value` string — Property value
      - `Livescore` object, nullable — Current livescore data for the event
      - `Markets` object, nullable — Market data associated with the fixture

## Response `200`

Fixture metadata processed successfully and sent to Kafka

- SuccessResponseDto
  - `status` 'success', required — Processing status - always returns 'success'
  - `messageId` string, required — Generated message identifier for tracking
  - `timestamp` string, date-time, required — Response timestamp in ISO 8601 format

## Other responses

- `400` — Validation error - invalid request body structure or missing required fields
- `401` — Authentication failed - missing or invalid customerid header
- `500` — Internal server error - database, Kafka, or processing error

---

[API](https://skmtc.net/lsports/apis/customers.md) · [All operations](https://skmtc.net/lsports/apis/customers/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lsports/customers/versions/5d38bc3cbefe/schema)
