> For the complete documentation index, see [llms.txt](/llms.txt)

# GS2-LoginReward 트랜잭션 액션

검증/소비/입수 각 트랜잭션 액션의 사양





## Consume Action

소비 액션

### Gs2LoginReward:MarkReceivedByUserId

사용자 ID를 지정하여 수령 완료 처리<br>

지정된 사용자의 보너스 모델에서 특정 스텝을 수동으로 수령 완료로 표시합니다.

**수량 지정 가능한 액션: 아니오**

**반전 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| bonusModelName | string |  | ✓|  |  ~ 128자 | 보너스 모델 이름<br>이 수신 상태가 연결된 로그인 보너스 모델의 이름.<br>사용자의 수신 진행 상황을 특정 보너스 모델 정의와 연결하여, 어떤 보상 목록과 배포 규칙이 적용되는지를 결정합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| stepNumber | int |  | ✓|  | 0 ~ 100 | 스텝 번호 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2LoginReward:MarkReceivedByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "bonusModelName": "[string]보너스 모델 이름",
        "userId": "[string]사용자ID",
        "stepNumber": "[int]스텝 번호",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2LoginReward:MarkReceivedByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  bonusModelName: "[string]보너스 모델 이름"
  userId: "[string]사용자ID"
  stepNumber: "[int]스텝 번호"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("loginReward").consume.mark_received_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    bonusModelName="[string]보너스 모델 이름",
    userId="[string]사용자ID",
    stepNumber="[int]스텝 번호",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

## Acquire Action

입수 액션

### Gs2LoginReward:DeleteReceiveStatusByUserId

사용자 ID를 지정하여 수령 상태 리셋<br>

지정된 사용자의 보너스 모델의 수령 상태 데이터를 모두 삭제하여 보너스 진행 상황을 완전히 리셋합니다.

**수량 지정 가능한 액션: 아니오**

**반전 가능한 액션: 아니오**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| bonusModelName | string |  | ✓|  |  ~ 128자 | 보너스 모델 이름<br>이 수신 상태가 연결된 로그인 보너스 모델의 이름.<br>사용자의 수신 진행 상황을 특정 보너스 모델 정의와 연결하여, 어떤 보상 목록과 배포 규칙이 적용되는지를 결정합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2LoginReward:DeleteReceiveStatusByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "bonusModelName": "[string]보너스 모델 이름",
        "userId": "[string]사용자ID",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2LoginReward:DeleteReceiveStatusByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  bonusModelName: "[string]보너스 모델 이름"
  userId: "[string]사용자ID"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("loginReward").acquire.delete_receive_status_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    bonusModelName="[string]보너스 모델 이름",
    userId="[string]사용자ID",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2LoginReward:UnmarkReceivedByUserId

사용자 ID를 지정하여 미수령 처리<br>

지정된 사용자의 보너스 모델에서 수령 완료로 표시된 스텝을 미수령 상태로 되돌립니다.<br>
지정된 스텝이 수령 완료 상태가 아닌 경우, 오류가 반환됩니다.

**수량 지정 가능한 액션: 아니오**

**반전 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| bonusModelName | string |  | ✓|  |  ~ 128자 | 보너스 모델 이름<br>이 수신 상태가 연결된 로그인 보너스 모델의 이름.<br>사용자의 수신 진행 상황을 특정 보너스 모델 정의와 연결하여, 어떤 보상 목록과 배포 규칙이 적용되는지를 결정합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| stepNumber | int |  | ✓|  | 0 ~ 100 | 스텝 번호 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2LoginReward:UnmarkReceivedByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "bonusModelName": "[string]보너스 모델 이름",
        "userId": "[string]사용자ID",
        "stepNumber": "[int]스텝 번호",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2LoginReward:UnmarkReceivedByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  bonusModelName: "[string]보너스 모델 이름"
  userId: "[string]사용자ID"
  stepNumber: "[int]스텝 번호"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("loginReward").acquire.unmark_received_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    bonusModelName="[string]보너스 모델 이름",
    userId="[string]사용자ID",
    stepNumber="[int]스텝 번호",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---



