# DM 작업 준비

표준 URL: https://sosoapi.ai/ko/docs/mcp/dm-actions-prepare

`sosoapi_dm_actions_prepare`

변경할 수 없는 정확한 DM 검토 내용을 준비하고 짧은 유효 기간의 일회용 토큰을 받습니다. 현재 계정, 권한, 답글 가능 시간을 다시 확인합니다.

## 프로필 및 전송 방식

프로필: full

전송 방식: stdio, http

클라이언트에 표시할 도구는 core 또는 full로 선택하세요. 권한은 변경되지 않습니다. 로컬 파일 업로드에는 stdio가 필요하며 HTTP에서는 사용할 수 없습니다. 검색에 출력 스키마를 포함하려면 SOSOAPI_OUTPUT_SCHEMAS=1을 설정하세요. 이 설정과 관계없이 도구는 구조화된 결과를 반환합니다.

## 권한 및 부수 효과

주석은 클라이언트의 도구 설명을 돕습니다. 각 호출은 계속 사용자 인증, 역할, 리소스 접근, 기능 권한을 확인합니다.

```json
{
  "readOnlyHint": false,
  "destructiveHint": false,
  "idempotentHint": false,
  "openWorldHint": false
}
```

`/private-messaging-api/actions/prepare` — agent:dm_reply; synchronous_http_response

## 입력 필드

```json
{
  "type": "object",
  "properties": {
    "workspace_id": {
      "type": "string",
      "format": "uuid"
    },
    "social_account_id": {
      "type": "string",
      "format": "uuid"
    },
    "review_id": {
      "type": "string",
      "format": "uuid"
    },
    "review_version": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "workspace_id",
    "social_account_id",
    "review_id",
    "review_version"
  ],
  "additionalProperties": false
}
```

## 구조화된 출력

이 스키마는 성공한 도구 결과의 structuredContent를 설명합니다. MCP 응답에는 content도 포함되며 호출 실패 시 isError가 설정될 수 있습니다. 게시 시 접수된 요청이나 텍스트 응답을 확인으로 간주하지 말고 게시물의 최종 결과를 읽으세요. 연결된 API 작업에 권한과 재시도 규칙이 설명되어 있습니다.

```json
{
  "type": "object",
  "properties": {
    "contract_version": {
      "type": "string",
      "const": "private-messaging/v1"
    },
    "prepare_token": {
      "type": "string"
    },
    "expires_at": {
      "type": "string",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      "format": "date-time"
    }
  },
  "required": [
    "contract_version",
    "prepare_token",
    "expires_at"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
```

## 도구 호출 예제

예제는 스키마로 확인한 가상 값을 사용합니다. ID를 사용 권한이 있는 값으로, 미디어를 준비된 에셋으로, 날짜를 확인된 게시 시각으로 바꾸세요. 쓰기 제출 전에 계정 적격성을 확인하세요. 이 페이지는 API 요청을 보내지 않습니다.

```json
{
  "name": "sosoapi_dm_actions_prepare",
  "arguments": {
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "social_account_id": "11111111-1111-4111-8111-111111111111",
    "review_id": "11111111-1111-4111-8111-111111111111",
    "review_version": 1
  }
}
```

structuredContent

```json
{
  "contract_version": "private-messaging/v1",
  "prepare_token": "example",
  "expires_at": "2099-01-15T09:00:00Z"
}
```

## 기반 API 작업

- [/private-messaging-api/actions/prepare](https://sosoapi.ai/ko/docs/api/private-messaging-api-actions-prepare)
