---
title: "Create a ServerAttributeDefinition."
method: POST
path: "/matchmaking-api/v1/matchmaking/server-attribute"
tags: ["Matchmaking"]
---

# Create a ServerAttributeDefinition.

`POST /matchmaking-api/v1/matchmaking/server-attribute`

## Request body

- CreateMatchmakingServerAttributeDefinitionRequest — Request to create a new ServerAttributeDefinition.
  - `universeId` integer — UniverseId for the new PlayerAttributeDefinition.
  - `name` string, nullable — Name of the new rule.
  - `dataType` 'Invalid' | 'Bool' | 'Number' | 'String' — Data type of a matchmaking attribute. Can be a bool, number, or string.
  - `defaultValue` MatchmakingServerAttributeDefaultValue — Describes how the server attribute value should be derived
    - `sourceCase` 'Invalid' | 'Constant' | 'PlayerAttributeReference' — The storage solution used for this MatchmakingPlayerAttributeDefinition.
    - `constant` MatchmakingAttributeValue — Matchmaking attribute value object for matchmaking rules.
      - `boolValue` boolean, nullable — Bool value of the attribute. One of BoolValue, NumericValue, or StringValue must be set.
      - `numericValue` number, double, nullable — Double value of the attribute. One of BoolValue, NumericValue, or StringValue must be set.
      - `stringValue` string, nullable — String value of the attribute. One of BoolValue, NumericValue, or StringValue must be set.
      - `type` 'Invalid' | 'Bool' | 'Number' | 'String' — Matchmaking attribute value type.
    - `playerAttributeReference` MatchmakingAttributeReference — Matchmaking attribute reference object for matchmaking rules.
      - `id` string, nullable — The id of the attribute.

## Response `200`

Success

- CreateMatchmakingServerAttributeDefinitionResponse — The response for creating a matchmaking server attribute definition.
  - `playerAttributeDefinition` MatchmakingServerAttributeDefinition — Describes a player attribute definition for matchmaking.
    - `id` string, nullable — The id of the attribute.
    - `universeId` integer — The universe id of the attribute.
    - `name` string, nullable — The name of the attribute.
    - `dataType` 'Invalid' | 'Bool' | 'Number' | 'String' — Data type of a matchmaking attribute. Can be a bool, number, or string.
    - `defaultValue` MatchmakingServerAttributeDefaultValue — Describes how the server attribute value should be derived
      - `sourceCase` 'Invalid' | 'Constant' | 'PlayerAttributeReference' — The storage solution used for this MatchmakingPlayerAttributeDefinition.
      - `constant` MatchmakingAttributeValue — Matchmaking attribute value object for matchmaking rules.
        - `boolValue` boolean, nullable — Bool value of the attribute. One of BoolValue, NumericValue, or StringValue must be set.
        - `numericValue` number, double, nullable — Double value of the attribute. One of BoolValue, NumericValue, or StringValue must be set.
        - `stringValue` string, nullable — String value of the attribute. One of BoolValue, NumericValue, or StringValue must be set.
        - `type` 'Invalid' | 'Bool' | 'Number' | 'String' — Matchmaking attribute value type.
      - `playerAttributeReference` MatchmakingAttributeReference — Matchmaking attribute reference object for matchmaking rules.
        - `id` string, nullable — The id of the attribute.
    - `createdTime` string, date-time — The aggregation function of the attribute.
    - `updatedTime` string, date-time — The time the attribute was last updated.

---

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