Method: fulfill

fulfillment API를 나타내는 RPC

HTTP 요청

POST https://webhook_handler_service.googleapis.com/fulfill

URL은 gRPC 트랜스코딩 구문을 사용합니다.

요청 본문

요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.

JSON 표현
{
  "handler": {
    object (Handler)
  },
  "intent": {
    object (Intent)
  },
  "scene": {
    object (Scene)
  },
  "session": {
    object (Session)
  },
  "user": {
    object (User)
  },
  "home": {
    object (Home)
  },
  "device": {
    object (Device)
  },
  "context": {
    object (Context)
  }
}
필드
handler

object (Handler)

필수 항목입니다. 요청 처리 방법에 관한 처리를 위한 정보입니다. 예를 들어 사실을 가져오려는 요청에는 이름이 'getFact'인 핸들러가 있을 수 있습니다.

intent

object (Intent)

필수 항목입니다. 마지막으로 일치된 인텐트를 나타냅니다. https://developers.google.com/assistant/conversational/intents를 참고하세요.

scene

object (Scene)

선택사항입니다. 함수가 호출된 시점의 현재 장면과 다음 장면에 관한 정보입니다. 처리 호출이 장면의 범위 내에서 이루어지면 채워집니다. https://developers.google.com/assistant/conversational/scenes을 참고하세요.

session

object (Session)

필수 항목입니다. 세션 ID 및 세션 매개변수와 같은 세션 데이터를 보유합니다.

user

object (User)

필수 항목입니다. 대화를 시작한 사용자입니다.

home

object (Home)

선택사항입니다. 대상 기기가 속한 HomeGraph 구조와 관련된 정보입니다. https://developers.google.com/actions/smarthome/concepts/homegraph를 참고하세요.

device

object (Device)

필수 항목입니다. 사용자가 작업과 상호작용하는 데 사용하는 기기의 정보입니다.

context

object (Context)

선택사항입니다. 요청의 현재 컨텍스트에 대한 정보입니다. 활성 미디어 세션 정보 또는 캔버스 정보를 포함하되 이에 국한되지 않습니다.

응답 본문

성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.

개발자의 처리에서 Actions on Google로 전송된 응답을 나타냅니다.

JSON 표현
{
  "prompt": {
    object (Prompt)
  },
  "scene": {
    object (Scene)
  },
  "session": {
    object (Session)
  },
  "user": {
    object (User)
  },
  "home": {
    object (Home)
  },
  "device": {
    object (Device)
  },
  "expected": {
    object (Expected)
  }
}
필드
prompt

object (Prompt)

선택사항입니다. 사용자에게 보낼 프롬프트를 나타내며, 명시적으로 덮어쓰지 않는 한 이전에 추가된 메시지에 추가됩니다.

scene

object (Scene)

선택사항입니다. 현재 및 다음 장면을 나타냅니다. Scene.next가 설정되면 런타임이 즉시 지정된 장면으로 전환됩니다.

session

object (Session)

선택사항입니다. 현재 세션의 데이터를 설명합니다. 세션 매개변수는 처리에서 생성, 업데이트 또는 삭제될 수 있습니다.

user

object (User)

선택사항입니다. 다시 전송할 사용자 매개변수를 지정하는 데 사용합니다.

home

object (Home)

선택사항입니다. 타겟 기기가 속한 HomeGraph 구조와 관련된 매개변수를 지정하는 데 사용됩니다. https://developers.google.com/actions/smarthome/concepts/homegraph를 참고하세요.

device

object (Device)

선택사항입니다. 사용자가 액세스할 수 있는 어시스턴트 기기 간에 이동하는 데 사용합니다.

expected

object (Expected)

선택사항입니다. 다음 대화상자 차례에 대한 기대치를 설명합니다.

Handler

Actions on Google의 이벤트 정보를 처리에 매핑하는 처리 핸들러를 나타냅니다. 핸들러 이름을 사용하여 처리에서 실행해야 하는 코드를 결정합니다. 예를 들어 핸들러는 'OrderLookup' 같은 핸들러 이름으로 사용자의 주문 정보에 관한 정보를 가져오는 데 사용할 수 있는 반면, 다른 핸들러는 'GetProductInfo'와 같은 핸들러 이름을 사용하여 데이터베이스에서 제품 정보를 가져올 수 있습니다.

JSON 표현
{
  "name": string
}
필드
name

string

선택사항입니다. 핸들러의 이름입니다.

인텐트

인텐트를 나타냅니다. https://developers.google.com/assistant/conversational/intents를 참고하세요.

JSON 표현
{
  "name": string,
  "params": {
    string: {
      object (IntentParameterValue)
    },
    ...
  },
  "query": string
}
필드
name

string

필수 항목입니다. 마지막으로 일치된 인텐트의 이름입니다.

params

map (key: string, value: object (IntentParameterValue))

필수 항목입니다. 인텐트 일치의 일부로 식별된 매개변수를 나타냅니다. 식별된 매개변수의 이름을 사용자 입력에서 식별된 매개변수 값에 매핑합니다. 식별된 일치하는 인텐트에서 정의된 모든 매개변수가 여기에 나타납니다.

"key": value 쌍 목록을 포함하는 객체입니다. 예를 들면 { "name": "wrench", "mass": "1.3kg", "count": "3" }입니다.

query

string

선택사항입니다. 이 인텐트와 일치하여 최종 사용자의 입력 또는 음성 입력입니다. 사용자 입력에 따라 인텐트가 일치할 때 채워집니다.

IntentParameterValue

인텐트 매개변수의 값을 나타냅니다. https://developers.google.com/assistant/conversational/types를 참고하세요.

JSON 표현
{
  "original": string,
  "resolved": value
}
필드
original

string

필수 항목입니다. 사용자 발화에서 추출한 원본 텍스트 값입니다.

resolved

value (Value format)

필수 항목입니다. 사용자 입력에서 추출된 매개변수의 구조화된 값입니다. 이는 매개변수가 일치된 인텐트에 정의되어 있고 인텐트 일치 중에 매개변수의 값을 식별할 수 있는 경우에만 채워집니다.

장면

장면을 표현합니다. 장면에서 처리를 호출하고 프롬프트를 추가하며 사용자로부터 슬롯 값을 수집할 수 있습니다. 장면은 이벤트 또는 인텐트에 의해 트리거되며 이벤트를 트리거하고 인텐트를 일치시켜 다른 장면으로 전환할 수 있습니다.

JSON 표현
{
  "name": string,
  "slotFillingStatus": enum (SlotFillingStatus),
  "slots": {
    string: {
      object (Slot)
    },
    ...
  },
  "next": {
    object (NextScene)
  }
}
필드
name

string

필수 항목입니다. 현재 장면의 이름입니다.

slotFillingStatus

enum (SlotFillingStatus)

필수 항목입니다. 슬롯 채우기의 현재 상태입니다. 이 필드는 읽기 전용입니다.

slots

map (key: string, value: object (Slot))

현재 장면과 연결된 슬롯입니다. 핸들러 응답은 요청에서 전송되지 않은 슬롯을 반환할 수 없습니다.

"key": value 쌍 목록을 포함하는 객체입니다. 예를 들면 { "name": "wrench", "mass": "1.3kg", "count": "3" }입니다.

next

object (NextScene)

선택사항입니다. 다음에 실행될 장면에 관한 정보입니다.

SlotFillingStatus

슬롯 채우기의 현재 상태를 나타냅니다.

열거형
UNSPECIFIED 사용량 필드가 채워지지 않은 경우의 대체 값입니다.
INITIALIZED 슬롯이 초기화되었지만 슬롯 채우기가 시작되지 않았습니다.
COLLECTING 슬롯 값을 수집하는 중입니다.
FINAL 모든 슬롯 값은 최종 값이며 변경할 수 없습니다.

슬롯

슬롯을 나타냅니다.

JSON 표현
{
  "mode": enum (SlotMode),
  "status": enum (SlotStatus),
  "value": value,
  "updated": boolean,
  "prompt": {
    object (Prompt)
  }
}
필드
mode

enum (SlotMode)

슬롯의 모드입니다 (필수 또는 선택사항). 개발자가 설정할 수 있습니다.

status

enum (SlotStatus)

슬롯의 상태입니다.

value

value (Value format)

슬롯의 값입니다. 응답에서 이 값을 변경하면 슬롯 채우기 값이 수정됩니다.

updated

boolean

마지막 회전에서 슬롯 값이 수집되었는지 여부를 나타냅니다. 이 필드는 읽기 전용입니다.

prompt

object (Prompt)

선택사항입니다. 이 메시지는 필요한 슬롯을 채워야 할 때 사용자에게 전송됩니다. 이 프롬프트는 콘솔에 정의된 기존 프롬프트를 재정의합니다. 이 필드는 웹훅 요청에 포함되지 않습니다.

SlotMode

슬롯의 모드, 즉 필요 여부를 나타냅니다.

열거형
MODE_UNSPECIFIED 사용량 필드가 채워지지 않은 경우의 대체 값입니다.
OPTIONAL 슬롯이 슬롯 채우기를 완료할 필요가 없음을 나타냅니다.
REQUIRED 슬롯이 슬롯 채우기를 완료해야 함을 나타냅니다.

SlotStatus

슬롯의 상태를 나타냅니다.

열거형
SLOT_UNSPECIFIED 사용량 필드가 채워지지 않은 경우의 대체 값입니다.
EMPTY 슬롯에 값이 없음을 나타냅니다. 이 상태는 응답을 통해 수정할 수 없습니다.
INVALID 슬롯 값이 유효하지 않음을 나타냅니다. 이 상태는 응답을 통해 설정할 수 있습니다.
FILLED 슬롯에 값이 있음을 나타냅니다. 이 상태는 응답을 통해 수정할 수 없습니다.

프롬프트

사용자에 대한 응답을 나타냅니다. https://developers.google.com/assistant/conversational/prompts를 참고하세요.

JSON 표현
{
  "override": boolean,
  "firstSimple": {
    object (Simple)
  },
  "content": {
    object (Content)
  },
  "lastSimple": {
    object (Simple)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (Link)
  },
  "canvas": {
    object (Canvas)
  },
  "orderUpdate": {
    object (OrderUpdate)
  }
}
필드
override

boolean

선택사항입니다. 이 메시지를 이전에 정의한 메시지와 병합하는 방법에 대한 모드입니다. 'true'는 이전에 정의된 모든 메시지 (첫 번째 및 마지막 단순 메시지, 콘텐츠, 추천 링크, 캔버스)를 지우고 이 프롬프트에 정의된 메시지를 추가합니다. 'false'를 입력하면 이 프롬프트에 정의된 메시지가 이전 응답에서 정의된 메시지에 추가됩니다. 이 필드를 'false'로 두면 단순 프롬프트, 제안 프롬프트, 캔버스 프롬프트 (콘텐츠 프롬프트의 일부) 내 일부 필드에 추가할 수도 있습니다. 프롬프트에 정의된 경우 콘텐츠 및 링크 메시지를 항상 덮어씁니다. 기본값은 'false'입니다.

firstSimple

object (Simple)

선택사항입니다. 첫 번째 음성 및 텍스트 응답입니다.

content

object (Content)

선택사항입니다. 사용자에게 표시할 카드, 목록, 미디어 등의 콘텐츠입니다.

lastSimple

object (Simple)

선택사항입니다. 음성 및 텍스트 전용 마지막 응답입니다.

suggestions[]

object (Suggestion)

선택사항입니다. 사용자에게 표시할 추천이며 항상 응답의 끝부분에 표시됩니다. 포함하는 프롬프트의 'override' 필드가 'false'인 경우 이 필드에 정의된 제목이 이전에 정의한 추천 프롬프트에서 정의된 제목에 추가되고 중복 값은 삭제됩니다.

canvas

object (Canvas)

선택사항입니다. 사용자에게 전송할 Interactive Canvas 응답을 나타냅니다.

orderUpdate

object (OrderUpdate)

선택적 작업은 거래 흐름에서 주문을 받은 후 OrderUpdate로 응답합니다. Google은 이를 받아 주문에 대한 업데이트를 기록하고, 확인이 완료되면 디스플레이 기기에 전송된 TTS와 함께 영수증 카드를 표시합니다.

간편함

사용자에게 전송할 간단한 메시지를 나타냅니다. https://developers.google.com/assistant/conversational/prompts-simple을 참고하세요.

JSON 표현
{
  "speech": string,
  "text": string
}
필드
speech

string

선택사항입니다. 사용자에게 말할 음성을 나타냅니다. SSML 또는 TTS(텍스트 음성 변환)일 수 있습니다. 포함하는 프롬프트의 'override' 필드가 'true'인 경우 이 필드에 정의된 음성이 이전 단순 프롬프트의 음성을 대체합니다. https://developers.google.com/assistant/conversational/ssml을 참고하세요.

text

string

채팅 풍선에 표시할 텍스트입니다(선택사항). 지정하지 않으면 위 음성 필드의 디스플레이 렌더링이 사용됩니다. 영문 기준 640자로 제한됩니다. 포함하는 프롬프트의 'override' 필드가 'true'인 경우 이 필드에 정의된 텍스트가 이전 단순 프롬프트의 텍스트로 대체됩니다.

콘텐츠

리치 프롬프트 또는 선택 프롬프트의 컨테이너 객체입니다.

JSON 표현
{

  // Union field content can be only one of the following:
  "card": {
    object (Card)
  },
  "image": {
    object (Image)
  },
  "table": {
    object (Table)
  },
  "media": {
    object (Media)
  },
  "collection": {
    object (Collection)
  },
  "list": {
    object (List)
  },
  "collectionBrowse": {
    object (CollectionBrowse)
  }
  // End of list of possible types for union field content.
}
필드

통합 필드 content.

content는 다음 중 하나여야 합니다.

card

object (Card)

기본 카드입니다.

image

object (Image)

이미지입니다.

table

object (Table)

표 카드

media

object (Media)

재생할 미디어 집합을 나타내는 응답입니다.

collection

object (Collection)

선택할 수 있는 옵션 모음을 표시하는 카드입니다.

list

object (List)

선택할 수 있는 옵션 목록을 표시하는 카드입니다.

collectionBrowse

object (CollectionBrowse)

열 웹페이지 컬렉션을 표시하는 카드입니다.

Card(카드)

이미지 또는 텍스트와 같은 일부 정보를 표시하기 위한 기본 카드입니다. https://developers.google.com/assistant/conversational/prompts-rich#basic_card를 참고하세요.

JSON 표현
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (Image)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (Link)
  }
}
필드
title

string

카드의 전체 제목입니다. 선택사항입니다.

subtitle

string

선택사항입니다.

text

string

카드의 본문 텍스트입니다. 형식 지정을 위해 제한된 마크다운 문법 세트를 지원합니다. 이미지가 없는 경우 필수 항목입니다.

image

object (Image)

카드의 히어로 이미지입니다. 높이는 192dp로 고정되어 있습니다. 선택사항입니다.

imageFill

enum (ImageFill)

이미지 배경이 채워지는 방식입니다. 선택사항입니다.

button

object (Link)

발신 링크가 있는 버튼 선택사항입니다.

이미지

카드에 표시되는 이미지입니다. https://developers.google.com/assistant/conversational/prompts-rich#image-cards를 참고하세요.

JSON 표현
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
필드
url

string

이미지의 소스 URL입니다. 이미지는 JPG, PNG, GIF (애니메이션 및 애니메이션 이외)일 수 있습니다. 예: https://www.agentx.com/logo.png 필수 항목입니다.

alt

string

접근성을 위해 사용되는 이미지의 텍스트 설명입니다(예: 스크린 리더). 필수 항목입니다.

height

integer

이미지 높이(픽셀 단위)입니다. 선택사항입니다.

width

integer

이미지 너비(픽셀 단위)입니다. 선택사항입니다.

ImageFill

이미지 표시 방식에 영향을 주는 사용 가능한 이미지 표시 옵션입니다. 이미지의 가로세로 비율이 이미지 컨테이너의 가로세로 비율과 일치하지 않는 경우 사용해야 합니다.

열거형
UNSPECIFIED
GRAY 이미지와 이미지 컨테이너 사이의 간격을 회색 막대로 채웁니다.
WHITE 이미지와 이미지 컨테이너 사이의 간격을 흰색 막대로 채웁니다.
CROPPED 이미지의 너비와 높이가 컨테이너 크기를 초과하도록 크기가 조정됩니다. 이렇게 하면 조정된 이미지의 높이가 컨테이너 높이보다 크면 이미지의 상단과 하단이 잘릴 수 있으며, 조정된 이미지 너비가 컨테이너 너비보다 큰 경우 이미지의 왼쪽과 오른쪽이 잘릴 수 있습니다. 4:3 동영상을 재생할 때 와이드스크린 TV의 '확대/축소 모드'와 유사합니다.

OpenUrl

JSON 표현
{
  "url": string,
  "hint": enum (UrlHint)
}
필드
url

string

URL 필드: - 앱에 연결된 애플리케이션 또는 웹페이지를 여는 데 사용되는 http/https URL

hint

enum (UrlHint)

URL 유형에 대한 힌트를 나타냅니다.

UrlHint

다양한 유형의 URL 힌트

열거형
AMP AMP 콘텐츠로 직접 연결되는 URL 또는 를 통해 AMP 콘텐츠를 참조하는 표준 URL로 연결됩니다. https://amp.dev/를 참고하세요.

테이블

텍스트 표를 표시하는 표 카드입니다. https://developers.google.com/assistant/conversational/prompts-rich#table_cards를 참고하세요.

JSON 표현
{
  "title": string,
  "subtitle": string,
  "image": {
    object (Image)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (Link)
  }
}
필드
title

string

표의 전체 제목입니다. 선택사항이지만 자막이 설정된 경우 설정해야 합니다.

subtitle

string

테이블의 부제목입니다. 선택사항입니다.

image

object (Image)

테이블과 연결된 이미지입니다. 선택사항입니다.

columns[]

object (TableColumn)

헤더 및 열 정렬

rows[]

object (TableRow)

테이블의 행 데이터입니다. 처음 3개 행은 항상 표시되지만 다른 행은 특정 표면에서 잘릴 수 있습니다. 시뮬레이터로 테스트하여 특정 표면에 어떤 행이 표시되는지 확인하세요. WEB_BROWSER 기능을 지원하는 표시 경로에서 사용자를 더 많은 데이터가 포함된 웹페이지로 안내할 수 있습니다.

button

object (Link)

버튼

TableColumn

JSON 표현
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
필드
header

string

열의 헤더 텍스트입니다.

align

enum (HorizontalAlignment)

콘텐츠 W.r.T 열의 가로 정렬 지정하지 않으면 콘텐츠가 선행 가장자리에 정렬됩니다.

HorizontalAlignment

셀 내 콘텐츠의 정렬입니다.

열거형
UNSPECIFIED
LEADING 셀의 앞 가장자리입니다. 이는 기본값입니다.
CENTER 콘텐츠가 열의 중앙에 정렬됩니다.
TRAILING 콘텐츠는 열의 후행 가장자리에 맞춰 정렬됩니다.

TableRow

테이블의 행을 설명합니다.

JSON 표현
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
필드
cells[]

object (TableCell)

이 행의 셀입니다. 처음 3개의 셀은 항상 표시되지만 다른 셀은 특정 표면에서 잘릴 수도 있습니다. 시뮬레이터로 테스트하여 주어진 표면에 어떤 셀을 표시할지 확인하세요.

divider

boolean

각 행 뒤에 구분선이 있어야 하는지 여부를 나타냅니다.

TableCell

행의 셀을 설명합니다.

JSON 표현
{
  "text": string
}
필드
text

string

셀의 텍스트 콘텐츠입니다.

미디어

하나의 미디어 객체를 나타냅니다. 이름, 설명, URL 등의 미디어 정보를 포함합니다. https://developers.google.com/assistant/conversational/prompts-media를 참고하세요.

JSON 표현
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ],
  "repeatMode": enum (RepeatMode),
  "firstMediaObjectIndex": integer
}
필드
mediaType

enum (MediaType)

startOffset

string (Duration format)

첫 번째 미디어 객체의 시작 오프셋입니다.

초 단위 기간으로, 소수점 아래 9자리까지 지정 가능하며 's'로 끝납니다(예: "3.5s").

optionalMediaControls[]

enum (OptionalMediaControls)

이 미디어 응답 세션에서 지원할 수 있는 선택적 미디어 컨트롤 유형입니다. 설정하는 경우 특정 미디어 이벤트가 발생할 때 서드 파티에 요청이 전송됩니다. 설정하지 않아도 3p는 두 가지 기본 컨트롤 유형인 FINISHED 및 FAILED를 처리해야 합니다.

mediaObjects[]

object (MediaObject)

미디어 객체 목록

repeatMode

enum (RepeatMode)

미디어 객체 목록의 반복 모드입니다.

firstMediaObjectIndex

integer

재생할 mediaObjects에 있는 첫 번째 미디어 객체의 0 기반 색인입니다. 지정하지 않거나 0이거나 범위를 벗어난 경우 mediaObjects의 첫 번째 미디어 객체에서 재생이 시작됩니다.

MediaType

이 응답의 미디어 유형입니다.

열거형
MEDIA_TYPE_UNSPECIFIED
AUDIO 오디오 파일입니다.
MEDIA_STATUS_ACK 미디어 상태 보고서 확인에 대한 응답입니다.

OptionalMediaControls

미디어 응답에서 지원할 수 있는 미디어 컨트롤 유형(선택사항)

열거형
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED 지정되지 않은 값
PAUSED 일시중지된 이벤트입니다. 사용자가 미디어를 일시중지할 때 트리거됩니다.
STOPPED 일정을 중지했습니다. 미디어 재생 중에 사용자가 서드 파티 세션을 종료할 때 트리거됩니다.

MediaObject

단일 미디어 객체를 나타냅니다.

JSON 표현
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
필드
name

string

이 미디어 객체의 이름입니다.

description

string

이 미디어 객체의 설명입니다.

url

string

미디어 콘텐츠를 가리키는 URL입니다. MP3 파일은 웹 서버에서 호스팅해야 하며 HTTPS URL을 통해 공개적으로 사용할 수 있어야 합니다. 실시간 스트리밍은 MP3 형식만 지원됩니다.

image

object (MediaImage)

미디어 카드와 함께 표시할 이미지입니다.

MediaImage

JSON 표현
{

  // Union field image can be only one of the following:
  "large": {
    object (Image)
  },
  "icon": {
    object (Image)
  }
  // End of list of possible types for union field image.
}
필드

통합 필드 image.

image는 다음 중 하나여야 합니다.

large

object (Image)

앨범 표지 등과 같은 큰 이미지

icon

object (Image)

제목의 오른쪽에 작은 이미지 아이콘이 표시됩니다. 36x36dp로 크기가 조절되었습니다.

RepeatMode

미디어 객체 목록의 반복 모드 유형입니다.

열거형
REPEAT_MODE_UNSPECIFIED OFF와 같습니다.
OFF 마지막 미디어 객체가 끝날 때 미디어 세션을 종료합니다.
ALL 마지막 미디어 객체의 끝에 도달하면 첫 번째 미디어 객체의 시작 부분으로 반복합니다.

컬렉션

선택할 수 있는 옵션 모음을 표시하는 카드입니다. https://developers.google.com/assistant/conversational/prompts-selection#collection을 참고하세요.

JSON 표현
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (CollectionItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
필드
title

string

컬렉션의 제목입니다. 선택사항입니다.

subtitle

string

컬렉션의 부제목입니다. 선택사항입니다.

items[]

object (CollectionItem)

항목 목록입니다. 최솟값은 2, 최댓값은 10입니다.

imageFill

enum (ImageFill)

컬렉션 항목의 이미지 배경이 채워지는 방식입니다. 선택사항입니다.

CollectionItem

컬렉션의 항목

JSON 표현
{
  "key": string
}
필드
key

string

필수 항목입니다. 연결된 Type의 항목 키 이름과 일치하는 NLU 키입니다.

목록

선택할 수 있는 옵션 목록을 표시하는 카드입니다. https://developers.google.com/assistant/conversational/prompts-selection#list를 참고하세요.

JSON 표현
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (ListItem)
    }
  ]
}
필드
title

string

목록의 제목입니다. 선택사항입니다.

subtitle

string

목록의 부제목입니다. 선택사항입니다.

items[]

object (ListItem)

항목 목록입니다. 최솟값은 2, 최댓값은 30입니다.

ListItem

목록에 있는 항목

JSON 표현
{
  "key": string
}
필드
key

string

필수 항목입니다. 연결된 Type의 항목 키 이름과 일치하는 NLU 키입니다.

CollectionBrowse

웹 문서 집합을 큰 타일 항목의 컬렉션으로 표시합니다. 항목을 선택하여 웹 뷰어에서 연결된 웹 문서를 실행할 수 있습니다. https://developers.google.com/assistant/conversational/prompts-selection#collectionBrowse 페이지를 참고하세요.

JSON 표현
{
  "items": [
    {
      object (Item)
    }
  ],
  "imageFill": enum (ImageFill)
}
필드
items[]

object (Item)

항목 목록입니다. 최솟값은 2, 최댓값은 10입니다.

imageFill

enum (ImageFill)

이미지 표시 옵션의 유형입니다.

항목

컬렉션에 있는 항목입니다.

JSON 표현
{
  "title": string,
  "description": string,
  "footer": string,
  "image": {
    object (Image)
  },
  "openUriAction": {
    object (OpenUrl)
  }
}
필드
title

string

필수 항목입니다. 컬렉션 항목의 제목입니다.

description

string

컬렉션 항목의 설명입니다.

footer

string

설명 아래에 표시되는 컬렉션 항목의 바닥글 텍스트입니다. 한 줄의 텍스트이며 생략 부호로 잘립니다.

image

object (Image)

컬렉션 항목의 이미지입니다.

openUriAction

object (OpenUrl)

필수 항목입니다. 항목이 선택되었을 때 열리는 URI입니다.

추천

어시스턴트가 메시지를 표시하면 추천은 디스플레이 지원 기기의 사용자에게 추천 칩을 제공합니다. 추천 칩을 사용하여 사용자 응답에 힌트를 줌으로써 대화를 계속하거나 방향을 전환할 수 있습니다. 탭하면 추천 칩이 사용자가 입력한 것처럼 표시된 텍스트를 대화에 그대로 반환합니다. https://developers.google.com/assistant/conversational/prompts#suggestions 페이지를 참고하세요.

JSON 표현
{
  "title": string
}
필드
title

string

필수 항목입니다. 추천 검색어 칩에 표시되는 텍스트입니다. 탭하면 이 텍스트가 사용자가 입력한 것처럼 대화에 그대로 다시 게시됩니다. 각 제목은 추천 칩 세트 내에서 고유해야 합니다. 최대 25자(영문 기준)

캔버스

사용자에게 전송할 Interactive Canvas 응답을 나타냅니다. 대화형 캔버스 응답을 표시하는 것 외에도 포함 프롬프트의 'firstSimple' 필드와 함께 사용하여 사용자와 대화할 수 있습니다. 응답의 최대 크기는 50,000바이트입니다. https://developers.google.com/assistant/interactivecanvas를 참조하세요.

JSON 표현
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "continuousMatchConfig": {
    object (ContinuousMatchConfig)
  }
}
필드
url

string

로드할 대화형 캔버스 웹 앱의 URL입니다. 설정하지 않으면 현재 활성 캔버스의 URL이 재사용됩니다.

data[]

value (Value format)

선택사항입니다. 몰입형 환경 웹페이지에 이벤트로 전달되는 JSON 데이터입니다. 포함하는 프롬프트의 'override' 필드가 'false'이면 이 Canvas 프롬프트에 정의된 데이터 값이 이전 Canvas 프롬프트에서 정의된 데이터 값 뒤에 추가됩니다.

suppressMic

boolean

선택사항입니다. 기본값은 false입니다.

continuousMatchConfig

object (ContinuousMatchConfig)

연속 일치 모드를 시작하는 데 사용되는 구성입니다.

ContinuousMatchConfig

연속 일치 모드를 시작하는 데 사용되는 구성입니다.

JSON 표현
{
  "expectedPhrases": [
    {
      object (ExpectedPhrase)
    }
  ],
  "durationSeconds": integer
}
필드
expectedPhrases[]

object (ExpectedPhrase)

이 연속 일치 모드 세션 중에 예상되는 모든 구문입니다.

durationSeconds

integer

연속 일치 모드를 유지할 기간입니다. 지정하면 시간이 다 되면 마이크가 꺼집니다. 허용되는 최댓값은 180입니다.

ExpectedPhrase

JSON 표현
{
  "phrase": string,
  "alternativePhrases": [
    string
  ]
}
필드
phrase

string

연속 일치 모드 세션 중에 검색할 구문입니다.

alternativePhrases[]

string

일부 문구는 음성 바이어스를 사용하는 경우에도 음성 모델에서 잘못 인식할 수 있습니다. 이를 통해 개발자는 동음이의어용 대체 트리거를 지정할 수 있습니다.

OrderUpdate

주문을 업데이트합니다.

JSON 표현
{
  "type": enum (Type),
  "order": {
    object (Order)
  },
  "updateMask": string,
  "userNotification": {
    object (UserNotification)
  },
  "reason": string
}
필드
type
(deprecated)

enum (Type)

지원 중단됨: 대신 OrderUpdate.update_mask를 사용하세요. 유형이 SNAPSHOT인 경우 OrderUpdate.order가 전체 주문이어야 합니다. type = ORDER_STATUS인 경우 주문 수준 상태 변경입니다. order.last_update_time 및 이 카테고리 상태만 선택됩니다. 참고: type.ORDER_STATUS는 PurcahaseOrderExtension 상태 업데이트만 지원하며 이 지원을 확장할 계획은 없습니다. 대신 더 일반적이고 확장 가능하며 모든 카테고리에 사용할 수 있는 updateMask를 사용하는 것이 좋습니다.

order

object (Order)

updateMask

string (FieldMask format)

참고: 다음 특수 입력란에 대한 고려사항/권장사항이 있습니다. 1. order.last_update_time은 항상 업데이트 요청의 일부로 업데이트됩니다. 2. order.create_time, order.google_order_id, order.merchant_order_id는 updateMask의 일부로 제공되는 경우 무시됩니다.

필드의 정규화된 이름을 쉼표로 구분한 목록입니다. 예: "user.displayName,photo"

userNotification

object (UserNotification)

지정하면 지정된 제목과 텍스트로 사용자에게 알림이 표시됩니다. 알림을 지정하는 것은 알림의 제안이며 알림이 전송되지 않을 수도 있습니다.

reason

string

변경/업데이트 사유

유형

지원 중단됨: 대신 OrderUpdate.update_mask를 사용하세요. 주문에 대한 업데이트가 허용되었습니다.

열거형
TYPE_UNSPECIFIED 유형이 지정되지 않았습니다. 이를 명시적으로 설정하면 안 됩니다.
ORDER_STATUS 주문 상태만 업데이트합니다.
SNAPSHOT 주문 스냅샷을 업데이트합니다.

주문

주문 항목입니다. 참고: 1. 달리 명시되지 않는 한 모든 수준의 모든 문자열은 1,000자(영문 기준) 미만이어야 합니다. 2. 달리 명시되지 않는 한 모든 수준에서 반복되는 모든 필드는 개수가 50 미만이어야 합니다. 3. 모든 수준의 모든 타임스탬프가 지정된 경우 유효한 타임스탬프여야 합니다.

JSON 표현
{
  "googleOrderId": string,
  "merchantOrderId": string,
  "userVisibleOrderId": string,
  "userVisibleStateLabel": string,
  "buyerInfo": {
    object (UserInfo)
  },
  "image": {
    object (Image)
  },
  "createTime": string,
  "lastUpdateTime": string,
  "transactionMerchant": {
    object (Merchant)
  },
  "contents": {
    object (Contents)
  },
  "priceAttributes": [
    {
      object (PriceAttribute)
    }
  ],
  "followUpActions": [
    {
      object (Action)
    }
  ],
  "paymentData": {
    object (PaymentData)
  },
  "termsOfServiceUrl": string,
  "note": string,
  "promotions": [
    {
      object (Promotion)
    }
  ],
  "disclosures": [
    {
      object (Disclosure)
    }
  ],
  "vertical": {
    "@type": string,
    field1: ...,
    ...
  },

  // Union field verticals can be only one of the following:
  "purchase": {
    object (PurchaseOrderExtension)
  },
  "ticket": {
    object (TicketOrderExtension)
  }
  // End of list of possible types for union field verticals.
}
필드
googleOrderId

string

Google에서 할당한 주문 ID입니다.

merchantOrderId

string

필수: 판매자가 할당한 내부 주문 ID입니다. 이 ID는 고유해야 하며 후속 주문 업데이트 작업에 필요합니다. 이 ID는 제공된 googleOrderId 또는 다른 고유한 값으로 설정할 수 있습니다. 사용자에게 표시되는 ID는 userVisibleOrderId이며 이는 더 사용자 친화적인 다른 값일 수 있습니다. 허용되는 최대 길이는 128자(영문 기준)입니다.

userVisibleOrderId

string

현재 주문을 참조하는 사용자 대상 ID입니다. 이 ID는 웹사이트, 앱, 이메일을 비롯한 다른 컨텍스트에서 이 주문에 대해 표시되는 ID와 일치해야 합니다.

userVisibleStateLabel
(deprecated)

string

지원 중단됨: 대신 OrderExtensions 상태를 사용하세요. 이 주문 상태에 대해 사용자에게 표시되는 라벨입니다.

buyerInfo

object (UserInfo)

구매자에 대한 정보입니다.

image

object (Image)

주문과 연결된 이미지입니다.

createTime

string (Timestamp format)

필수: 주문이 생성된 날짜 및 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

lastUpdateTime

string (Timestamp format)

주문이 마지막으로 업데이트된 날짜 및 시간입니다. OrderUpdate에 필요합니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

transactionMerchant

object (Merchant)

결제를 지원한 판매자입니다. 광고 항목 수준 제공업체와 다를 수 있습니다. 예: ANA의 광고 항목이 있는 익스피디아 주문

contents

object (Contents)

필수: 광고 항목 그룹인 콘텐츠를 주문합니다.

priceAttributes[]

object (PriceAttribute)

가격, 할인, 세금 등

followUpActions[]

object (Action)

주문 수준의 후속 조치

paymentData

object (PaymentData)

주문의 결제 관련 데이터입니다.

termsOfServiceUrl

string

주문/제안된 주문에 적용되는 서비스 약관 링크

note

string

주문에 첨부된 메모입니다.

promotions[]

object (Promotion)

이 주문과 연결된 모든 프로모션입니다.

disclosures[]

object (Disclosure)

이 주문과 관련된 공개 정보입니다.

vertical
(deprecated)

object

지원 중단됨: 대신 카테고리를 사용하세요. 이러한 속성은 일부 광고 항목에서 재정의하지 않는 한 모든 광고 항목에 적용됩니다. 이 카테고리는 광고 항목 수준 카테고리 유형과 일치해야 합니다. 가능한 값: google.actions.orders.v3.verticals.purchase.PurchaseOrderExtension google.actions.orders.v3.verticals.ticket.TicketOrderExtension

임의 유형의 필드를 포함하는 객체입니다. 추가 필드 "@type"은 유형을 식별하는 URI를 포함합니다. 예: { "id": 1234, "@type": "types.example.com/standard/id" }.

통합 필드 verticals. 이러한 속성은 일부 광고 항목에서 재정의하지 않는 한 모든 광고 항목에 적용됩니다. 이 카테고리는 광고 항목 수준 카테고리 유형과 일치해야 합니다. verticals은 다음 중 하나여야 합니다.
purchase

object (PurchaseOrderExtension)

구매주문서

ticket

object (TicketOrderExtension)

티켓 주문

UserInfo

사용자에 관한 정보입니다. 주문과 연결된 사용자의 정보를 나타내는 데 사용됩니다.

JSON 표현
{
  "email": string,
  "firstName": string,
  "lastName": string,
  "displayName": string,
  "phoneNumbers": [
    {
      object (PhoneNumber)
    }
  ]
}
필드
email

string

사용자 이메일(예: janedoe@gmail.com)입니다.

firstName

string

사용자의 이름입니다.

lastName

string

사용자의 성입니다.

displayName

string

사용자의 표시 이름으로, 성 또는 이름과 다를 수 있습니다.

phoneNumbers[]

object (PhoneNumber)

사용자의 전화번호입니다.

PhoneNumber

표준 전화번호 표현입니다.

JSON 표현
{
  "e164PhoneNumber": string,
  "extension": string,
  "preferredDomesticCarrierCode": string
}
필드
e164PhoneNumber

string

국제전기통신연합 (ITU) 권고 E.164에 정의된 E.164 형식의 전화번호. 위키 링크: https://en.wikipedia.org/wiki/E.164

extension

string

내선 번호는 ITU 권장사항에서 표준화되어 있지 않습니다. 단, 최대 길이가 40자리인 일련의 숫자로 정의되는 경우는 예외입니다. 여기서는 확장에 선행 0을 사용할 수 있도록 문자열로 정의됩니다. 정의된 표준이 없으므로 조직은 자유롭게 지정할 수 있습니다. 숫자 외에도 ',' (대기를 나타냄)와 같은 기타 통화 문자가 여기에 저장될 수 있습니다. 예를 들어 xxx-xxx-xxxx 내선 123에서 '123'이 확장자입니다.

preferredDomesticCarrierCode

string

국내에서 이 전화번호로 전화를 걸 때 선호되는 이동통신사 선택 코드입니다. 여기에는 일부 국가에서 유선 전화로 전화를 걸거나 그 반대로 전화해야 하는 코드도 포함됩니다. 예를 들어 컬럼비아에서는 휴대전화에서 국내 유선전화로 전화를 걸 때 전화번호 앞에 '3'을 눌러야 하며 그 반대의 경우도 마찬가지입니다. https://en.wikipedia.org/wiki/Telephone_numbers_in_Colombia https://en.wikipedia.org/wiki/Brazilian_Carrier_Selection_Code

이는 '기본' 코드이므로 다른 코드도 작동할 수 있습니다.

이미지

카드에 표시되는 이미지입니다.

JSON 표현
{
  "url": string,
  "accessibilityText": string,
  "height": integer,
  "width": integer
}
필드
url

string

이미지의 소스 URL입니다. 이미지는 JPG, PNG, GIF (애니메이션 및 애니메이션 이외)일 수 있습니다. 예: https://www.agentx.com/logo.png 필수 항목입니다.

accessibilityText

string

접근성을 위해 사용되는 이미지의 텍스트 설명입니다(예: 스크린 리더). 필수 항목입니다.

height

integer

이미지 높이(픽셀 단위)입니다. 선택사항입니다.

width

integer

이미지 너비(픽셀 단위)입니다. 선택사항입니다.

판매자

장바구니/주문/상품의 판매자입니다.

JSON 표현
{
  "id": string,
  "name": string,
  "image": {
    object (Image)
  },
  "phoneNumbers": [
    {
      object (PhoneNumber)
    }
  ],
  "address": {
    object (Location)
  }
}
필드
id

string

(있는 경우) 판매자에게 할당된(선택사항) ID입니다.

name

string

판매자의 이름입니다(예: '파네라 빵').

image

object (Image)

판매자와 연결된 이미지입니다.

phoneNumbers[]

object (PhoneNumber)

판매자의 전화번호입니다.

address

object (Location)

판매자의 주소입니다.

위치

위치를 나타내는 컨테이너

JSON 표현
{
  "coordinates": {
    object (LatLng)
  },
  "formattedAddress": string,
  "zipCode": string,
  "city": string,
  "postalAddress": {
    object (PostalAddress)
  },
  "name": string,
  "phoneNumber": string,
  "notes": string,
  "placeId": string
}
필드
coordinates

object (LatLng)

지역 좌표 [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 권한이 필요합니다.

formattedAddress

string

표시 주소(예: '1600 Amphitheatre Pkwy, Mountain View, CA 94043'. [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 권한이 필요합니다.

zipCode

string

우편번호. [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 또는 [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] 권한이 필요합니다.

city

string

시/군/구. [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 또는 [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] 권한이 필요합니다.

postalAddress

object (PostalAddress)

우편 주소 [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 또는 [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] 권한이 필요합니다.

name

string

장소의 이름입니다.

phoneNumber

string

위치의 전화번호입니다(예: 업체 위치의 연락처 또는 배송 위치의 전화번호).

notes

string

위치에 관한 메모입니다.

placeId

string

placeId는 Places API와 함께 장소의 세부정보를 가져오는 데 사용됩니다. https://developers.google.com/places/web-service/place-id를 참고하세요.

LatLng

위도/경도 쌍을 나타내는 객체로 위도(도)와 경도(도)를 나타내는 double의 쌍으로 표현됩니다. 달리 명시되지 않는 한 이 객체는 WGS84 표준을 준수해야 합니다. 값은 정규화된 범위 내에 있어야 합니다.

JSON 표현
{
  "latitude": number,
  "longitude": number
}
필드
latitude

number

위도입니다. 범위는 [-90.0, +90.0]입니다.

longitude

number

경도입니다. 범위는 [-180.0, +180.0]여야 합니다.

PostalAddress

우편 배달 또는 수취인 주소와 같은 우편 주소를 나타냅니다. 우편 주소가 있으면 우편 서비스가 사업장, 사서함 또는 이와 유사한 주소로 물건을 배송할 수 있습니다. 도로, 마을, 산 등 지리적 위치를 모델링하기 위한 것은 아닙니다.

일반적인 용도에서는 프로세스 유형에 따라 사용자 입력을 통해 또는 기존 데이터를 가져와 주소가 생성됩니다.

주소 입력 / 수정 관련 조언: - https://github.com/google/libaddressinput과 같은 i18n 지원 주소 위젯 사용) - 해당 필드가 사용되는 국가 외부에서 입력란을 입력하거나 수정할 수 있는 UI 요소가 사용자에게 표시되어서는 안 됩니다.

이 스키마를 사용하는 방법에 대한 자세한 안내는 https://support.google.com/business/answer/6397478을 참조하세요.

JSON 표현
{
  "revision": integer,
  "regionCode": string,
  "languageCode": string,
  "postalCode": string,
  "sortingCode": string,
  "administrativeArea": string,
  "locality": string,
  "sublocality": string,
  "addressLines": [
    string
  ],
  "recipients": [
    string
  ],
  "organization": string
}
필드
revision

integer

PostalAddress의 스키마 버전입니다. 최신 버전인 0으로 설정해야 합니다.

모든 새 버전은 이전 버전과 반드시 호환되어야 합니다.

regionCode

string

필수 항목입니다. 주소의 국가/지역에 해당하는 CLDR 지역 코드입니다. 이는 추론되지 않으며 값이 올바른지 확인하는 것은 사용자의 책임입니다. 자세한 내용은 http://cldr.unicode.org/http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html을 참고하세요. 예: 스위스의 경우 'CH'.

languageCode

string

선택사항입니다. 이 주소 콘텐츠의 BCP-47 언어 코드입니다 (알려진 경우). 주로 입력 양식의 UI 언어이거나 주소의 국가/지역에서 사용되는 언어 중 하나 또는 음역된 언어와 일치해야 합니다. 이는 특정 국가에서 형식에 영향을 줄 수 있지만 데이터의 정확성에는 중요하지 않으며 유효성 검사 또는 기타 형식 지정과 관련 없는 작업에는 영향을 미치지 않습니다.

이 값을 알 수 없는 경우 잘못되었을 수 있는 기본값을 지정하는 대신 이 값을 생략해야 합니다.

예: 'zh-Hant', 'ja', 'ja-Latn', 'en'.

postalCode

string

선택사항입니다. 주소의 우편번호입니다. 모든 국가에서 우편번호를 사용하거나 우편번호를 필수로 사용해야 하는 것은 아니지만, 우편번호가 사용되는 경우 주소의 다른 부분에서 추가 확인 (예: 미국의 주/우편번호 확인)이 트리거될 수 있습니다.

sortingCode

string

선택사항입니다. 국가별 추가 정렬 코드입니다. 대부분의 리전에서 사용되지 않습니다. 사용되는 경우 값은 선택적으로 뒤에 숫자가 오는 'CEDEX'와 같은 문자열 (예: 'CEDEX 7')이거나 '섹터 코드' (자메이카), '배송 지역 표시기' (말라위) 또는 '우체국 표시기' (예: 코트디부아르)를 나타내는 숫자만 있습니다.

administrativeArea

string

선택사항입니다. 국가 또는 지역의 우편 주소에 사용되는 최상위 행정 구역 단위입니다. 예를 들어 시/도, 주 또는 현이 될 수 있습니다. 특히 스페인의 경우 자치 공동체가 아닌 주입니다 (예: '카탈로니아'가 아니라 '바르셀로나'). 많은 국가에서 우편 주소에 행정 구역을 사용하지 않습니다. 예를 들어 스위스에서는 이 필드를 채우지 않은 상태로 두어야 합니다.

locality

string

선택사항입니다. 일반적으로 주소의 시/군/구 부분을 나타냅니다. 예: 미국 도시, IT 코뮌, 영국 우체국 지역이 잘 정의되지 않거나 이 구조에 잘 맞지 않는 경우 지역을 비워 두고 addressLines를 사용합니다.

sublocality

string

선택사항입니다. 주소의 하위 지역입니다. 예를 들어 인근 지역, 자치구, 지구가 여기에 해당합니다.

addressLines[]

string

주소의 하위 수준을 설명하는 구조화되지 않은 주소 입력란입니다.

addressLines의 값에는 유형 정보가 없고 경우에 따라 단일 필드에 여러 값이 포함될 수 있으므로 (예: 'Austin, TX') 행 순서가 명확해야 합니다. 주소 입력란 순서는 주소의 국가/지역의 '봉투 순서'여야 합니다. 다양한 지역 (예: 일본)에서는 address_language를 사용하여 명시적으로 만듭니다 (예: 큰 대 작은 순서의 경우 'ja', 크고 작은 순서의 경우 'ja-Latn' 또는 'en'). 이렇게 하면 언어에 따라 가장 구체적인 주소 입력란을 선택할 수 있습니다.

주소에 허용되는 최소 구조 표현은 나머지 모든 정보가 addressLines에 배치된 regionCode로 구성됩니다. 이러한 주소의 형식은 지오코딩 없이 매우 대략적으로만 가능하지만, 최소한 부분적으로 해결될 때까지는 어떤 주소 구성 요소도 의미적 추론을 할 수 없습니다.

(주소의 어떤 부분이 지역인지 또는 행정 구역이어야 하는지 추측하는 대신) regionCode와 addressLines만 포함된 주소를 만든 다음 지오코딩하는 것이 완전히 구조화되지 않은 주소를 처리하는 권장 방법입니다.

recipients[]

string

선택사항입니다. 주소의 수신자입니다. 경우에 따라 이 필드에는 여러 줄의 정보가 포함될 수 있습니다. 예를 들어 '돌봄' 정보가 포함될 수 있습니다.

organization

string

선택사항입니다. 주소에 있는 조직의 이름입니다.

목차

광고 항목의 래퍼입니다.

JSON 표현
{
  "lineItems": [
    {
      object (LineItem)
    }
  ]
}
필드
lineItems[]

object (LineItem)

주문 광고 항목의 목록입니다. 광고 항목은 1개 이상 필요하며, 최대 50개까지 허용됩니다. 모든 광고 항목은 동일한 카테고리에 속해야 합니다.

LineItem

광고 항목 1개에 카테고리 1개가 포함됩니다. 주문 또는 장바구니에 동일한 카테고리의 여러 광고 항목이 포함될 수 있습니다. 하위 항목/부가기능 등은 사용 사례에 따라 카테고리 proto에서 정의해야 합니다. 참고: 1. 달리 명시되지 않는 한 모든 수준의 모든 문자열은 1,000자(영문 기준) 미만이어야 합니다. 2. 달리 명시되지 않는 한 모든 수준에서 반복되는 모든 필드는 개수가 50 미만이어야 합니다. 3. 모든 수준의 모든 타임스탬프가 지정된 경우 유효한 타임스탬프여야 합니다.

JSON 표현
{
  "id": string,
  "name": string,
  "userVisibleStateLabel": string,
  "provider": {
    object (Merchant)
  },
  "priceAttributes": [
    {
      object (PriceAttribute)
    }
  ],
  "followUpActions": [
    {
      object (Action)
    }
  ],
  "recipients": [
    {
      object (UserInfo)
    }
  ],
  "image": {
    object (Image)
  },
  "description": string,
  "notes": [
    string
  ],
  "disclosures": [
    {
      object (Disclosure)
    }
  ],
  "vertical": {
    "@type": string,
    field1: ...,
    ...
  },

  // Union field verticals can be only one of the following:
  "purchase": {
    object (PurchaseItemExtension)
  },
  "reservation": {
    object (ReservationItemExtension)
  }
  // End of list of possible types for union field verticals.
}
필드
id

string

필수: 판매자가 광고 항목에 할당한 식별자입니다. 부분 업데이트를 적용할 때 기존 광고 항목을 식별하는 데 사용됩니다. 허용되는 최대 길이는 64자(영문 기준)입니다.

name

string

영수증에 표시된 광고 항목의 이름입니다. 허용되는 최대 길이는 100자(영문 기준)입니다.

userVisibleStateLabel
(deprecated)

string

지원이 중단되었습니다. 대신 세로 수준 상태를 사용하세요. 예를 들어 구매의 경우 PurchaseOrderExtension.status를 사용합니다. 이 광고 항목의 상태에 대해 사용자에게 표시되는 라벨입니다.

provider

object (Merchant)

특정 광고 항목의 제공업체(전체 주문과 다른 경우) 예: 광고 항목 제공업체 ANA의 익스피디아 주문

priceAttributes[]

object (PriceAttribute)

광고 항목 수준 가격 및 조정입니다.

followUpActions[]

object (Action)

광고 항목의 후속 작업

recipients[]

object (UserInfo)

광고 항목 수준 고객의 경우 주문 수준 구매자와 다를 수 있습니다. 예: 사용자 X가 사용자 Y의 이름으로 식당을 예약했습니다.

image

object (Image)

이 항목과 연결된 작은 이미지입니다(있는 경우).

description

string

광고 항목 설명

notes[]

string

이 특정 광고 항목에 적용할 수 있는 추가 메모입니다(예: 취소 정책).

disclosures[]

object (Disclosure)

이 광고 항목과 관련된 공개 정보입니다.

vertical
(deprecated)

object

지원 중단됨: 대신 카테고리를 사용하세요. 필수: 유형/카테고리를 기준으로 한 광고 항목의 시맨틱 콘텐츠 모든 카테고리에는 자체 처리 세부정보가 포함되어야 합니다. 다음 값 중 하나여야 합니다. google.actions.orders.v3.verticals.purchase.PurchaseItemExtension google.actions.orders.v3.verticals.reservation.ReservationItemExtension google.actions.orders.v3.verticals.ticket.TicketItemExtension

임의 유형의 필드를 포함하는 객체입니다. 추가 필드 "@type"은 유형을 식별하는 URI를 포함합니다. 예: { "id": 1234, "@type": "types.example.com/standard/id" }.

통합 필드 verticals. 필수: 유형/카테고리를 기준으로 한 광고 항목의 시맨틱 콘텐츠 모든 카테고리에는 자체 처리 세부정보가 포함되어야 합니다. verticals은 다음 중 하나여야 합니다.
purchase

object (PurchaseItemExtension)

상품, 음식 등의 구매주문서

reservation

object (ReservationItemExtension)

식당, 미용실 등의 예약 주문

PriceAttribute

주문 또는 광고 항목의 가격 속성입니다.

JSON 표현
{
  "type": enum (Type),
  "name": string,
  "id": string,
  "state": enum (State),
  "taxIncluded": boolean,

  // Union field spec can be only one of the following:
  "amount": {
    object (Money)
  },
  "amountMillipercentage": integer
  // End of list of possible types for union field spec.
}
필드
type

enum (Type)

필수: 금액 유형 속성입니다.

name

string

필수: 사용자에게 표시되는 가격 속성의 문자열입니다. 판매자가 전송하고 현지화합니다.

id

string

선택사항: 가격에 해당하는 광고 항목의 ID입니다.

state

enum (State)

필수: 가격 상태(예상치와 실제값 비교)입니다.

taxIncluded

boolean

가격의 세금 포함 여부입니다.

통합 필드 spec. 금액 또는 밀리초 비율을 나타냅니다. spec은 다음 중 하나여야 합니다.
amount

object (Money)

금액

amountMillipercentage
(deprecated)

integer

백분율의 1/1000까지의 백분율 사양입니다. 예: 8.750% 는 8,750으로, 음수 백분율은 할인율을 나타냅니다. 이 필드의 지원이 중단됩니다. 견고한 사용 사례가 필요한 경우 다시 추가하는 것이 좋습니다.

유형

돈의 유형을 나타냅니다.

열거형
TYPE_UNSPECIFIED 유형이 지정되지 않았습니다. 클라이언트가 이를 명시적으로 설정할 필요가 없습니다.
REGULAR 할인 등이 적용되기 전의 일반 표시 가격입니다.
DISCOUNT 소계에서 차감됩니다.
TAX 소계에 추가됩니다.
DELIVERY 소계에 추가됩니다.
SUBTOTAL 일부 수수료가 추가되기 전의 소계입니다.
FEE 추가 요금
GRATUITY 소계에 추가됩니다.
TOTAL 표시되는 주문 또는 광고 항목의 가격입니다.

상태

가격 상태를 나타냅니다.

열거형
STATE_UNSPECIFIED 지정되지 않음
ESTIMATE 가격은 추정치에 불과하지만 최종 금액은 이 금액에 근접하게 됩니다. 예: 거래 시점에 세금을 정확하게 알 수 없는 경우 총액이 예상 금액이 됩니다.
ACTUAL 사용자에게 청구될 실제 가격입니다.

통화

통화 유형의 금액을 나타냅니다.

JSON 표현
{
  "currencyCode": string,
  "amountInMicros": string
}
필드
currencyCode

string

ISO 4217에 정의된 3자리 통화 코드입니다.

amountInMicros

string (int64 format)

마이크로 단위의 금액입니다. 예를 들어 $1.99의 경우 이 필드는 1990000으로 설정해야 합니다.

작업

주문 또는 광고 항목과 관련된 후속 작업입니다.

JSON 표현
{
  "type": enum (Type),
  "title": string,
  "openUrlAction": {
    object (OpenUrlAction)
  },
  "actionMetadata": {
    object (ActionMetadata)
  }
}
필드
type

enum (Type)

필수: 작업 유형입니다.

title

string

사용자에게 표시되는 작업의 제목 또는 라벨입니다. 허용되는 최대 길이는 100자(영문 기준)입니다.

openUrlAction

object (OpenUrlAction)

취해야 할 조치

actionMetadata

object (ActionMetadata)

작업과 연결된 메타데이터입니다.

유형

가능한 후속 조치입니다.

열거형
TYPE_UNSPECIFIED 지정되지 않은 작업입니다.
VIEW_DETAILS 주문 세부정보 보기 작업입니다.
MODIFY 주문 수정 작업을 선택합니다.
CANCEL 주문 취소 작업
RETURN 주문 반품 작업
EXCHANGE 교환 주문 작업
EMAIL

이메일 작업을 탭합니다. EMAIL 및 CALL 유형은 지원 중단되었습니다. openUrlAction.url을 전화번호 또는 이메일로 사용할 수 있습니다.

CALL

클릭 유도 문구

REORDER 작업을 재정렬합니다.
REVIEW 주문 작업을 검토하세요.
CUSTOMER_SERVICE 고객 서비스팀에 문의하세요.
FIX_ISSUE 판매자 사이트 또는 앱으로 안내하여 문제를 해결하세요.
DIRECTION 경로 링크

OpenUrlAction

지정된 URL을 엽니다.

JSON 표현
{
  "url": string,
  "androidApp": {
    object (AndroidApp)
  },
  "urlTypeHint": enum (UrlTypeHint)
}
필드
url

string

URL 필드: - 앱에 연결된 애플리케이션 또는 웹페이지를 여는 데 사용되는 http/https URL

androidApp

object (AndroidApp)

Android 앱에서 URL을 처리해야 하는 경우 Android 앱에 관한 정보입니다.

urlTypeHint

enum (UrlTypeHint)

URL 유형에 대한 힌트를 나타냅니다.

AndroidApp

처리 제한을 위한 Android 앱 사양

JSON 표현
{
  "packageName": string,
  "versions": [
    {
      object (VersionFilter)
    }
  ]
}
필드
packageName

string

패키지 이름 패키지 이름은 Android Fulfillment를 지정할 때 지정해야 합니다.

versions[]

object (VersionFilter)

여러 필터가 지정되면 필터 일치가 앱을 트리거합니다.

VersionFilter

특정 버전의 앱이 필요한 경우 VersionFilter를 포함해야 합니다.

JSON 표현
{
  "minVersion": integer,
  "maxVersion": integer
}
필드
minVersion

integer

최소 버전 코드 또는 0(포함)

maxVersion

integer

최대 버전 코드(해당 값 포함)입니다. 고려되는 범위는 [minVersion:maxVersion]입니다. null 범위는 모든 버전을 의미합니다. 예: 단일 버전을 지정하려면 [target_version:target_version]을 사용하세요. 버전을 지정하려면 minVersion 및 maxVersion을 지정하지 않은 상태로 둡니다. maxVersion까지 모든 버전을 지정하려면 minVersion을 지정하지 않은 상태로 둡니다. minVersion의 모든 버전을 지정하려면 maxVersion을 지정하지 않은 상태로 둡니다.

UrlTypeHint

다양한 유형의 URL 힌트

열거형
URL_TYPE_HINT_UNSPECIFIED 미지정
AMP_CONTENT AMP 콘텐츠로 직접 연결되는 URL 또는 <link rel="amphtml">을 통해 AMP 콘텐츠를 참조하는 표준 URL로 연결됩니다.

ActionMetadata

작업당 관련 메타데이터입니다.

JSON 표현
{
  "expireTime": string
}
필드
expireTime

string (Timestamp format)

이 작업이 만료되는 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

공개

사용자에게 표시될 수 있는 제품, 서비스, 정책 공개 정보

JSON 표현
{
  "title": string,
  "disclosureText": {
    object (DisclosureText)
  },
  "presentationOptions": {
    object (DisclosurePresentationOptions)
  }
}
필드
title

string

공개 제목 예: '안전 정보'

disclosureText

object (DisclosureText)

공개사항의 내용 웹링크는 허용됩니다.

presentationOptions

object (DisclosurePresentationOptions)

공개에 대한 프레젠테이션 옵션입니다.

DisclosureText

웹 링크가 있는 일반 텍스트를 나타냅니다.

JSON 표현
{
  "template": string,
  "textLinks": [
    {
      object (TextLink)
    }
  ]
}
필드
template

string

표시할 텍스트. 삽입해야 하는 각 텍스트 링크에 대한 '{0}' 및 '{1}' 등의 자리표시자가 포함되어 있습니다. 예: '경고: 이 제품은 캘리포니아주에서 암을 유발하는 것으로 알려진 화학물질에 노출될 수 있습니다. 자세한 내용은 {0}(으)로 이동하세요." 이 공개 텍스트에는 홍보성 또는 광고성 콘텐츠를 포함해서는 안 됩니다.

DisclosurePresentationOptions

공시를 표시하기 위한 옵션입니다.

JSON 표현
{
  "presentationRequirement": enum (PresentationRequirement),
  "initiallyExpanded": boolean
}
필드
presentationRequirement

enum (PresentationRequirement)

공개에 관한 프레젠테이션 요구사항.

initiallyExpanded

boolean

공개 내용의 처음 내용을 펼칠지 여부입니다. 기본적으로 처음에는 접혀 있습니다.

PresentationRequirement

정보 공개 문구를 표시하기 위한 요건입니다.

열거형
REQUIREMENT_UNSPECIFIED 요구사항이 지정되지 않았습니다. 이를 명시적으로 설정하면 안 됩니다.
REQUIREMENT_OPTIONAL 공개는 선택사항입니다. 기기에서 정보 공개 문구를 지원하지 않는 경우에는 건너뛸 수 있습니다.
REQUIREMENT_REQUIRED 정보 공개는 필수 항목입니다. 기기가 정보 공개를 지원하지 않는 경우 전화로 대화를 나눕니다.

PurchaseItemExtension

구매 카테고리의 광고 항목 콘텐츠

JSON 표현
{
  "status": enum (PurchaseStatus),
  "userVisibleStatusLabel": string,
  "type": enum (PurchaseType),
  "productId": string,
  "quantity": integer,
  "unitMeasure": {
    object (MerchantUnitMeasure)
  },
  "returnsInfo": {
    object (PurchaseReturnsInfo)
  },
  "fulfillmentInfo": {
    object (PurchaseFulfillmentInfo)
  },
  "itemOptions": [
    {
      object (ItemOption)
    }
  ],
  "productDetails": {
    object (ProductDetails)
  },
  "extension": {
    "@type": string,
    field1: ...,
    ...
  }
}
필드
status

enum (PurchaseStatus)

필수: 광고 항목 수준 상태입니다.

userVisibleStatusLabel

string

필수: 사용자에게 표시되는 상태의 라벨/문자열입니다. 허용되는 최대 길이는 50자(영문 기준)입니다.

type

enum (PurchaseType)

필수: 구매 유형입니다.

productId
(deprecated)

string

이 광고 항목과 연결된 제품 또는 혜택 ID입니다.

quantity

integer

상품의 수량입니다.

unitMeasure

object (MerchantUnitMeasure)

단위 측정 선택한 단위로 상품의 크기를 지정합니다. 크기 및 활성 가격이 단가를 결정하는 데 사용됩니다.

returnsInfo

object (PurchaseReturnsInfo)

이 광고 항목에 대한 정보를 반환합니다. 설정하지 않으면 이 광고 항목이 주문 수준을 상속하여 정보를 반환합니다.

fulfillmentInfo

object (PurchaseFulfillmentInfo)

이 광고 항목의 처리 정보입니다. 설정하지 않으면 이 광고 항목이 주문 수준의 처리 정보를 상속합니다.

itemOptions[]

object (ItemOption)

추가 부가기능 또는 하위 항목입니다.

productDetails

object (ProductDetails)

제품에 대한 세부정보입니다.

extension
(deprecated)

object

판매자와 Google 간에 교환된 모든 추가 필드 참고: 이 확장 프로그램은 사용하지 않는 것이 좋습니다. 사용 사례/상황에 따라 다음 중 하나를 고려하세요. 1. 다른 사용 사례 (예: 일반 기능)에 사용할 수 있는 경우 PurchaseItemExtension에 필드를 정의합니다. 2. 일반적이지 않은 커스텀 사용 사례/기능에만 해당하는 경우 vertical_extension을 사용합니다.

임의 유형의 필드를 포함하는 객체입니다. 추가 필드 "@type"은 유형을 식별하는 URI를 포함합니다. 예: { "id": 1234, "@type": "types.example.com/standard/id" }.

PurchaseStatus

구매주문서 또는 특정 광고 항목과 연결된 구매 상태입니다.

열거형
PURCHASE_STATUS_UNSPECIFIED 상태가 지정되지 않았습니다.
READY_FOR_PICKUP 수령 준비 완료
SHIPPED 배송됨.
DELIVERED 전송 완료.
OUT_OF_STOCK 재고 없음.
IN_PREPARATION 'IN_PREPARATION'은 맥락에 따라 의미가 다를 수 있습니다. 음식 주문의 경우 음식이 준비 중일 수 있습니다. 소매업의 경우 상품이 포장될 수 있습니다.
CREATED 주문이 생성되었습니다.
CONFIRMED 판매자가 주문을 확인했습니다.
REJECTED 판매자가 주문 또는 광고 항목을 거부했습니다.
RETURNED 사용자가 상품을 반품했습니다.
CANCELLED 사용자가 주문 또는 항목을 취소했습니다.
CHANGE_REQUESTED 사용자가 주문 변경을 요청했으며 통합업체가 이 변경사항을 처리하는 중입니다. 요청이 처리된 후 주문을 다른 상태로 변경해야 합니다.

PurchaseType

구매 카테고리입니다.

열거형
PURCHASE_TYPE_UNSPECIFIED 알 수 없는 값입니다.
RETAIL 실제 상품과 같은 구매가 포함됩니다.
FOOD 음식 주문 구매가 포함됩니다.
GROCERY 식료품 구매
MOBILE_RECHARGE 선불 모바일 충전 구매

MerchantUnitMeasure

판매자 단가 책정 단위

JSON 표현
{
  "measure": number,
  "unit": enum (Unit)
}
필드
measure

number

값: 예 1.2.

unit

enum (Unit)

단위: POUND, GRAM을 예로 들 수 있습니다.

단위

열거형
UNIT_UNSPECIFIED 단위가 지정되지 않았습니다.
MILLIGRAM 밀리그램
GRAM 할머니.
KILOGRAM 킬로그램.
OUNCE 용기
POUND 파운드.

PurchaseReturnsInfo

주문 또는 특정 광고 항목과 연결된 정보를 반환합니다.

JSON 표현
{
  "isReturnable": boolean,
  "daysToReturn": integer,
  "policyUrl": string
}
필드
isReturnable

boolean

true인 경우 반환이 허용됩니다.

daysToReturn

integer

이 기간 내에 반품이 허용됩니다.

policyUrl

string

반품 정책 링크

PurchaseFulfillmentInfo

구매주문서 또는 특정 품목과 연결된 처리 정보입니다.

JSON 표현
{
  "id": string,
  "fulfillmentType": enum (Type),
  "expectedFulfillmentTime": {
    object (Time)
  },
  "expectedPreparationTime": {
    object (Time)
  },
  "location": {
    object (Location)
  },
  "expireTime": string,
  "price": {
    object (PriceAttribute)
  },
  "fulfillmentContact": {
    object (UserInfo)
  },
  "shippingMethodName": string,
  "storeCode": string,
  "pickupInfo": {
    object (PickupInfo)
  }
}
필드
id

string

이 서비스 옵션의 고유 식별자입니다.

fulfillmentType

enum (Type)

필수: 처리 유형입니다.

expectedFulfillmentTime

object (Time)

시간 범위가 지정된 경우 기간이며 단일 시간이 지정된 경우 ETA입니다. 예상 배송 시간 또는 수령 시간입니다.

expectedPreparationTime

object (Time)

시간 범위가 지정된 경우 기간이며 단일 시간이 지정된 경우 ETA입니다. 음식 준비에 걸리는 예상 시간입니다. 1회 권장

location

object (Location)

수령 또는 배송 위치입니다.

expireTime

string (Timestamp format)

이 처리 옵션이 만료되는 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

price

object (PriceAttribute)

이 옵션의 비용입니다.

fulfillmentContact

object (UserInfo)

이 처리의 사용자 연락처입니다.

shippingMethodName

string

사용자가 선택한 배송 방법의 이름입니다.

storeCode

string

위치의 StoreCode입니다. 예: Walmart는 판매자이고 storeCode는 주문이 발생한 walmart 매장입니다. https://support.google.com/business/answer/3370250?ref_topic=4596653

pickupInfo

object (PickupInfo)

주문 선택 방법에 대한 추가 정보입니다. 이 필드는 처리 유형이 PICKUP인 경우에만 적용됩니다.

유형

처리 유형입니다.

열거형
TYPE_UNSPECIFIED 유형이 지정되지 않습니다.
DELIVERY 이 주문은 배송됩니다.
PICKUP 이 주문은 수령해야 합니다.

시간

사용자에게 주문을 표시할 때 사용할 이벤트의 시간을 나타내는 시간입니다.

JSON 표현
{
  "timeIso8601": string
}
필드
timeIso8601

string

예약 시간, 배송 시간 등의 주문 이벤트 시간을 나타냅니다. 기간 (시작 및 종료 시간), 날짜, 날짜 시간 등일 수 있습니다. 지원되는 모든 형식은 https://en.wikipedia.org/wiki/ISO_8601을 참조하세요.

PickupInfo

주문 상품을 수령하는 방법에 관한 세부정보입니다. 여기에는 수령 유형 및 각 유형에 첨부된 추가 메타데이터(있는 경우)와 같은 세부정보가 포함됩니다.

JSON 표현
{
  "pickupType": enum (PickupType),
  "curbsideInfo": {
    object (CurbsideInfo)
  },
  "checkInInfo": [
    {
      object (CheckInInfo)
    }
  ]
}
필드
pickupType

enum (PickupType)

수령 방법(예: INSTORE, CURBSIDE 등)

curbsideInfo

object (CurbsideInfo)

매장 밖 수령 정보와 관련된 세부정보입니다. pickupType이 'CURBSIDE'가 아닌 경우 이 필드는 무시됩니다.

checkInInfo[]

object (CheckInInfo)

파트너가 체크인을 지원하기 위해 지원하는 다양한 방법의 목록입니다.

PickupType

지원되는 수령 유형 목록입니다.

열거형
UNSPECIFIED 수령 유형이 지정되지 않았습니다.
INSTORE 식당 안에서 음식을 픽업합니다.
CURBSIDE 레스토랑 밖에 지정된 장소에 주차하면 사람이 그곳에서 음식을 배달합니다.

CurbsideInfo

매장 밖 수령 주문을 처리하는 방법에 관한 세부정보입니다.

JSON 표현
{
  "curbsideFulfillmentType": enum (CurbsideFulfillmentType),
  "userVehicle": {
    object (Vehicle)
  }
}
필드
curbsideFulfillmentType

enum (CurbsideFulfillmentType)

파트너는 매장 밖 수령 주문을 용이하게 하기 위해 추가 정보가 필요합니다. 선택한 처리 유형에 따라 사용자로부터 해당 세부정보가 수집됩니다.

userVehicle

object (Vehicle)

주문한 사용자의 차량 세부정보

CurbsideFulfillmentType

매장 밖 처리 유형의 가능한 값입니다.

열거형
UNSPECIFIED 매장 밖 처리 유형이 지정되지 않았습니다.
VEHICLE_DETAIL 매장 밖 수령을 위해 차량 세부정보가 필요합니다.

차량

차량 세부정보

JSON 표현
{
  "make": string,
  "model": string,
  "licensePlate": string,
  "colorName": string,
  "image": {
    object (Image)
  }
}
필드
make

string

차량 제조업체 (예: 'Honda') 사용자에게 표시되며 현지화해야 합니다. 필수 항목입니다.

model

string

차량 모델 (예: '그롬') 사용자에게 표시되며 현지화해야 합니다. 필수 항목입니다.

licensePlate

string

차량 번호판 번호 (예: '1ABC234') 필수 항목입니다.

colorName

string

차량 색상 이름(예: 검은색)입니다(선택사항).

image

object (Image)

차량 사진의 URL입니다. 사진은 약 256x256픽셀로 표시됩니다. jpg 또는 png 형식이어야 합니다. 선택사항입니다.

CheckInInfo

파트너가 체크인 방법을 지원하는 데 필요한 메타데이터입니다.

JSON 표현
{
  "checkInType": enum (CheckInType)
}
필드
checkInType

enum (CheckInType)

체크인 안내를 전송하는 데 사용된 메서드입니다.

CheckInType

체크인 안내를 전송하는 데 사용되는 다양한 방법입니다.

열거형
CHECK_IN_TYPE_UNSPECIFIED 알 수 없는 값입니다.
EMAIL 체크인 정보는 이메일로 전송됩니다.
SMS 체크인 정보가 SMS로 전송됩니다.

ItemOption

부가기능 또는 하위 항목을 나타냅니다.

JSON 표현
{
  "id": string,
  "name": string,
  "prices": [
    {
      object (PriceAttribute)
    }
  ],
  "note": string,
  "quantity": integer,
  "productId": string,
  "subOptions": [
    {
      object (ItemOption)
    }
  ]
}
필드
id

string

옵션인 경우 고유한 상품 ID입니다.

name

string

옵션 이름입니다.

prices[]

object (PriceAttribute)

옵션의 총가격입니다.

note

string

옵션과 관련된 참고사항입니다.

quantity

integer

상품 옵션의 경우 수량입니다.

productId

string

이 옵션과 연결된 제품 또는 혜택 ID입니다.

subOptions[]

object (ItemOption)

다른 중첩된 하위 옵션을 정의합니다.

ProductDetails

제품에 대한 세부정보입니다.

JSON 표현
{
  "productId": string,
  "gtin": string,
  "plu": string,
  "productType": string,
  "productAttributes": {
    string: string,
    ...
  }
}
필드
productId

string

이 광고 항목과 연결된 제품 또는 혜택 ID입니다.

gtin

string

제품의 국제거래단품식별코드입니다. OfferId가 판매자 센터에 없는 경우 유용합니다. 선택사항입니다.

plu

string

일반적으로 PLU 코드, PLU 번호, PLU, 농산물 코드, 농산물 라벨이라고 하는 가격 조회 코드는 식료품점과 슈퍼마켓에서 판매되는 대량 농산물을 고유하게 식별하는 번호 시스템입니다.

productType

string

판매자가 정의한 제품 카테고리입니다. 예: '가정 > 식료품 > 유제품 및 계란 > 우유 > 전유'

productAttributes

map (key: string, value: string)

판매자가 제공한 제품 세부정보(예: { "allergen": "peanut" }). offerId가 판매자 센터에 없는 경우 유용합니다. 선택사항입니다.

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ReservationItemExtension

식당, 헤어컷 등의 예약 주문에 대한 광고 항목 콘텐츠

JSON 표현
{
  "status": enum (ReservationStatus),
  "userVisibleStatusLabel": string,
  "type": enum (ReservationType),
  "reservationTime": {
    object (Time)
  },
  "userAcceptableTimeRange": {
    object (Time)
  },
  "confirmationCode": string,
  "partySize": integer,
  "staffFacilitators": [
    {
      object (StaffFacilitator)
    }
  ],
  "location": {
    object (Location)
  }
}
필드
status

enum (ReservationStatus)

필수: 예약 상태.

userVisibleStatusLabel

string

필수: 사용자에게 표시되는 상태의 라벨/문자열입니다. 허용되는 최대 길이는 50자(영문 기준)입니다.

type

enum (ReservationType)

예약 유형입니다. 적용할 수 있는 유형 옵션이 없는 경우 설정 해제할 수 있습니다.

reservationTime

object (Time)

서비스/이벤트가 실행되도록 예약된 시간입니다. 시간 범위, 날짜 또는 정확한 날짜 시간일 수 있습니다.

userAcceptableTimeRange

object (Time)

사용자가 사용할 수 있는 기간

confirmationCode

string

이 예약의 확인 코드입니다.

partySize

integer

인원 수입니다.

staffFacilitators[]

object (StaffFacilitator)

예약 서비스를 제공할 직원 안내 예: 미용사.

location

object (Location)

서비스/이벤트의 위치입니다.

ReservationStatus

예약 상태입니다.

열거형
RESERVATION_STATUS_UNSPECIFIED 상태가 지정되지 않았습니다.
PENDING 예약이 대기 중입니다.
CONFIRMED 예약이 확인되었습니다.
CANCELLED 사용자가 예약을 취소했습니다.
FULFILLED 예약이 완료되었습니다.
CHANGE_REQUESTED 예약 변경 요청됨
REJECTED 예약이 만료되었거나 통합업체에 의해 거부되었습니다.

ReservationType

예약 유형입니다.

열거형
RESERVATION_TYPE_UNSPECIFIED 알 수 없는 유형.
RESTAURANT 식당 예약
HAIRDRESSER 미용사 예약.

StaffFacilitator

서비스 직원에 관한 정보입니다.

JSON 표현
{
  "name": string,
  "image": {
    object (Image)
  }
}
필드
name

string

교직원 진행자의 이름입니다. 예: '홍길동'

image

object (Image)

공연자의 이미지

PaymentData

주문과 관련된 결제 데이터입니다.

JSON 표현
{
  "paymentResult": {
    object (PaymentResult)
  },
  "paymentInfo": {
    object (PaymentInfo)
  }
}
필드
paymentResult

object (PaymentResult)

통합업체가 거래를 완료하기 위해 사용하는 결제 결과입니다. 결제 환경을 Actions-on-Google에서 관리하는 경우 이 필드는 Actions on Google에 의해 채워집니다.

paymentInfo

object (PaymentInfo)

사용자 대면 상호작용에 유용한 주문에 관한 결제 정보입니다.

PaymentResult

통합업체가 거래를 완료하기 위해 사용하는 결제 결과입니다.

JSON 표현
{

  // Union field result can be only one of the following:
  "googlePaymentData": string,
  "merchantPaymentMethodId": string
  // End of list of possible types for union field result.
}
필드
통합 필드 result. Google 결제 데이터 또는 판매자 결제 수단이 제공됩니다. result은 다음 중 하나여야 합니다.
googlePaymentData

string

Google에서 결제 수단 데이터를 제공했습니다. 결제 대행업체가 여기(https://developers.google.com/pay/api/)에서 Google 지원 결제 대행업체로 등록되어 있는 경우 링크를 통해 결제 대행업체로 이동하여 자세한 내용을 확인할 수 있습니다. 그 외의 경우에는 다음 문서에서 페이로드 세부정보를 확인하세요. https://developers.google.com/pay/api/payment-data-cryptography

merchantPaymentMethodId

string

판매자/작업에서 사용자가 선택한 결제 수단입니다.

PaymentInfo

주문과 관련된 결제 정보입니다. 이 프로토콜은 사용자 대상 상호작용에 유용한 정보를 캡처합니다.

JSON 표현
{
  "paymentMethodDisplayInfo": {
    object (PaymentMethodDisplayInfo)
  },
  "paymentMethodProvenance": enum (PaymentMethodProvenance)
}
필드
paymentMethodDisplayInfo

object (PaymentMethodDisplayInfo)

거래에 사용된 결제 수단의 표시 정보입니다.

paymentMethodProvenance

enum (PaymentMethodProvenance)

거래에 사용된 결제 수단의 출처 사용자가 Google과 판매자 모두에 동일한 결제 수단을 등록했을 수 있습니다.

PaymentMethodDisplayInfo

통합업체가 거래를 완료하기 위해 사용하는 결제 결과입니다.

JSON 표현
{
  "paymentType": enum (PaymentType),
  "paymentMethodDisplayName": string,
  "paymentMethodVoiceName": string
}
필드
paymentType

enum (PaymentType)

결제 유형입니다.

paymentMethodDisplayName

string

사용자에게 표시되는 결제 수단의 이름입니다. 예: VISA **** 1234 당좌 예금 계좌 **** 5678

paymentMethodVoiceName

string

음성 전용 어시스턴트 기기에서 사용자에게 음성으로 나오는 결제 수단 이름입니다. 예: '1234로 끝나는 비자' 또는 '5678로 끝나는 당좌 예금 계좌' 참고: 음성 전용 어시스턴트 기기에 paymentsMethodDisplayName 대신 사용되는 음성 최적화 문자열입니다. 이 문자열을 설정하지 않으면 paymentMethodDisplayName이 사용자에게 음성으로 들립니다.

PaymentType

PaymentType은 판매자가 제공한 결제 수단에 사용되는 결제 수단을 나타냅니다. 작업은 결제 수단의 표시 이름도 제공해야 합니다.

열거형
PAYMENT_TYPE_UNSPECIFIED 결제 유형이 지정되지 않았습니다.
PAYMENT_CARD 신용카드/체크카드 또는 선불카드
BANK 결제 수단이 은행 계좌입니다.
LOYALTY_PROGRAM 결제 수단이 포인트 제도입니다.
CASH 결제 수단이 현금입니다.
GIFT_CARD 결제 수단이 기프트 카드입니다.
WALLET 서드 파티 월렛(예: PayPal)

PaymentMethodProvenance

거래에 사용된 결제 수단 출처를 나타냅니다.

열거형
PAYMENT_METHOD_PROVENANCE_UNSPECIFIED 출처가 지정되지 않았습니다.
PAYMENT_METHOD_PROVENANCE_GOOGLE 출처는 Google입니다.
PAYMENT_METHOD_PROVENANCE_MERCHANT 출처는 판매자입니다.

프로모션

장바구니에 추가된 프로모션/혜택입니다.

JSON 표현
{
  "coupon": string
}
필드
coupon

string

필수: 이 혜택에 적용되는 쿠폰 코드입니다.

PurchaseOrderExtension

구매 카테고리의 주문 광고 확장 광고 항목에서 재정의하지 않는 한, 이러한 속성은 주문에 포함된 모든 광고 항목에 적용됩니다.

JSON 표현
{
  "status": enum (PurchaseStatus),
  "userVisibleStatusLabel": string,
  "type": enum (PurchaseType),
  "returnsInfo": {
    object (PurchaseReturnsInfo)
  },
  "fulfillmentInfo": {
    object (PurchaseFulfillmentInfo)
  },
  "purchaseLocationType": enum (PurchaseLocationType),
  "errors": [
    {
      object (PurchaseError)
    }
  ],
  "extension": {
    "@type": string,
    field1: ...,
    ...
  }
}
필드
status

enum (PurchaseStatus)

필수: 주문의 전반적인 상태입니다.

userVisibleStatusLabel

string

사용자에게 표시되는 상태의 라벨/문자열입니다. 허용되는 최대 길이는 50자(영문 기준)입니다.

type

enum (PurchaseType)

필수: 구매 유형입니다.

returnsInfo

object (PurchaseReturnsInfo)

주문의 반품 정보입니다.

fulfillmentInfo

object (PurchaseFulfillmentInfo)

주문의 처리 정보입니다.

purchaseLocationType

enum (PurchaseLocationType)

구매 장소 (매장 / 온라인)

errors[]

object (PurchaseError)

선택사항: 주문이 거부된 오류입니다.

extension
(deprecated)

object

판매자와 Google 간에 교환된 모든 추가 필드 참고: 이 확장 프로그램은 사용하지 않는 것이 좋습니다. 사용 사례/상황에 따라 다음 중 하나를 고려하세요. 1. 다른 사용 사례 (예: 일반 기능)에 사용할 수 있는 경우 PurchaseOrderExtension에 필드를 정의합니다. 2. 일반적이지 않은 커스텀 사용 사례/기능에만 해당하는 경우 vertical_extension을 사용합니다.

임의 유형의 필드를 포함하는 객체입니다. 추가 필드 "@type"은 유형을 식별하는 URI를 포함합니다. 예: { "id": 1234, "@type": "types.example.com/standard/id" }.

PurchaseLocationType

구매 위치 유형입니다.

열거형
UNSPECIFIED_LOCATION 알 수 없는 값입니다.
ONLINE_PURCHASE 온라인으로 구매한 모든 상품입니다.
INSTORE_PURCHASE 모든 오프라인 구매

PurchaseError

구매주문서가 거부될 수 있는 오류입니다.

JSON 표현
{
  "type": enum (ErrorType),
  "description": string,
  "entityId": string,
  "updatedPrice": {
    object (PriceAttribute)
  },
  "availableQuantity": integer
}
필드
type

enum (ErrorType)

필수: 판매자가 주문을 거부하는 상세한 이유를 나타냅니다.

description

string

추가 오류 설명입니다.

entityId

string

오류에 해당하는 엔티티 ID 예를 들어 LineItemId / ItemOptionId에 해당할 수 있습니다.

updatedPrice

object (PriceAttribute)

PRICE_CHANGED / INORRECT_PRICE 오류 유형인 경우에 적합합니다.

availableQuantity

integer

현재 재고 수량이 있습니다. AVAILABILITY_CHANGED의 경우 적용할 수 있습니다.

ErrorType

가능한 오류 유형입니다.

열거형
ERROR_TYPE_UNSPECIFIED 알 수 없는 오류
NOT_FOUND 항목을 찾을 수 없으며 Item, FulfillmentOption, 프로모션일 수 있습니다. 엔티티 ID는 필수 항목입니다.
INVALID 항목 데이터가 잘못되었습니다. Item, FulfillmentOption, 프로모션일 수 있습니다. 엔티티 ID는 필수 항목입니다.
AVAILABILITY_CHANGED 항목을 사용할 수 없거나 항목이 부족하여 요청을 처리할 수 없습니다. 엔티티 ID는 필수 항목입니다.
PRICE_CHANGED 상품 가격이 상품 항목의 가격과 다릅니다. 엔티티 ID 및 업데이트된 가격이 필요합니다.
INCORRECT_PRICE 수수료, 총액에 가격 오류가 있습니다. 엔티티 ID 및 업데이트된 가격이 필요합니다.
REQUIREMENTS_NOT_MET 주문 수락을 위한 제약 조건(최소 장바구니 크기 등)이 충족되지 않았습니다.
TOO_LATE FulfillmentOption이 만료되었습니다.
NO_CAPACITY 사용 가능한 서비스 용량이 없습니다. 더 세분화된 오류 유형 중 적용할 수 있는 것이 없는 경우 이 오류 코드를 사용하세요.
NO_COURIER_AVAILABLE 배송업체를 찾을 수 없습니다. NO_CAPACITY로 분류될 수 있는 세분화된 오류 유형입니다.
INELIGIBLE 사용자가 주문할 수 없습니다 (차단됨).
OUT_OF_SERVICE_AREA 경계 규정 등으로 인해 요청한 주소로 배송할 수 없습니다.
CLOSED 음식점은 주문 시간에 영업하지 않습니다.
PROMO_NOT_APPLICABLE 아래 항목 중 어느 것도 해당하지 않는 경우 프로모션 코드 적용에 실패하는 모든 경우를 포착하는 일반 오류 코드입니다. 엔티티 ID로 프로모션 코드를 추가합니다.
PROMO_NOT_RECOGNIZED 파트너가 쿠폰 코드를 인식할 수 없습니다. 엔티티 ID로 프로모션 코드를 추가합니다.
PROMO_EXPIRED 프로모션이 만료되었으므로 적용할 수 없습니다. 엔티티 ID로 프로모션 코드를 추가합니다.
PROMO_USER_INELIGIBLE 현재 사용자는 이 쿠폰을 사용할 수 없습니다. 엔티티 ID로 프로모션 코드를 추가합니다.
PROMO_ORDER_INELIGIBLE 현재 주문은 이 쿠폰을 사용할 수 없습니다. 엔티티 ID로 프로모션 코드를 추가합니다.
UNAVAILABLE_SLOT 미리 주문 슬롯을 사용할 수 없습니다.
FAILED_PRECONDITION 주문 수락을 위한 제약 조건(최소 장바구니 크기 등)을 충족하지 않음
PAYMENT_DECLINED 결제가 잘못되었습니다.
MERCHANT_UNREACHABLE 판매자에게 연락할 수 없습니다. 이는 파트너가 애그리게이터이고 판매자에게 연락할 수 없는 경우에 유용합니다.
ACCOUNT_LINKING_FAILED 판매자가 사용자 Google 계정을 시스템의 계정에 연결하려고 했지만 연결 중에 오류가 발생했습니다.

TicketOrderExtension

영화, 스포츠 등의 티켓 주문 콘텐츠를 주문하세요.

JSON 표현
{
  "ticketEvent": {
    object (TicketEvent)
  }
}
필드
ticketEvent

object (TicketEvent)

모든 광고 항목 티켓에 적용되는 이벤트입니다.

TicketEvent

단일 이벤트를 나타냅니다.

JSON 표현
{
  "type": enum (Type),
  "name": string,
  "description": string,
  "url": string,
  "location": {
    object (Location)
  },
  "eventCharacters": [
    {
      object (EventCharacter)
    }
  ],
  "startDate": {
    object (Time)
  },
  "endDate": {
    object (Time)
  },
  "doorTime": {
    object (Time)
  }
}
필드
type

enum (Type)

필수: 티켓 이벤트의 유형입니다(예: 영화, 콘서트).

name

string

필수: 이벤트 이름입니다. 예를 들어 이벤트가 영화인 경우 영화 이름이어야 합니다.

description

string

이벤트에 관한 설명입니다.

url

string

이벤트 정보의 URL입니다.

location

object (Location)

이벤트가 열리는 위치 또는 조직이 있는 위치입니다.

eventCharacters[]

object (EventCharacter)

이 이벤트와 관련된 캐릭터입니다. 영화 이벤트의 감독이나 배우 또는 콘서트 공연자 등이 될 수 있습니다.

startDate

object (Time)

시작 시간

endDate

object (Time)

종료 시간

doorTime

object (Time)

입장 시간(일정 시작 시간과 다를 수 있음)을 입력합니다. 예를 들어 이벤트가 오전 9시에 시작하지만 입장 시간은 오전 8시 30분입니다.

유형

이벤트 유형입니다.

열거형
EVENT_TYPE_UNKNOWN 알 수 없는 이벤트 유형입니다.
MOVIE 영화를 탭합니다.
CONCERT 콘서트.
SPORTS 스포츠

EventCharacter

이벤트 캐릭터 1개(예: 주최자, 출연자 등)

JSON 표현
{
  "type": enum (Type),
  "name": string,
  "image": {
    object (Image)
  }
}
필드
type

enum (Type)

이벤트 캐릭터의 유형입니다(예: 배우 또는 감독).

name

string

캐릭터의 이름입니다.

image

object (Image)

캐릭터의 이미지

유형

문자 유형입니다.

열거형
TYPE_UNKNOWN 알 수 없는 유형입니다.
ACTOR 배우
PERFORMER 공연자
DIRECTOR 디렉터
ORGANIZER 주최자

UserNotification

주문 업데이트의 일부로 표시할 선택적 사용자 알림입니다.

JSON 표현
{
  "title": string,
  "text": string
}
필드
title

string

사용자 알림의 제목입니다. 허용되는 최대 길이는 30자(영문 기준)입니다.

text

string

알림의 콘텐츠입니다. 허용되는 최대 길이는 100자(영문 기준)입니다.

NextScene

다음에 실행될 장면을 나타냅니다.

JSON 표현
{
  "name": string
}
필드
name

string

다음에 실행될 장면의 이름입니다.

세션

현재 대화 세션에 대한 정보가 포함됩니다.

JSON 표현
{
  "id": string,
  "params": {
    string: value,
    ...
  },
  "typeOverrides": [
    {
      object (TypeOverride)
    }
  ],
  "languageCode": string
}
필드
id

string

필수 항목입니다. 현재 대화 세션의 전역 고유 ID입니다. 이 필드는 읽기 전용입니다.

params

map (key: string, value: value (Value format))

필수 항목입니다. 세션 중에 양식과 인텐트에서 수집된 모든 매개변수 목록입니다. 키는 매개변수 이름입니다. 여기에 정의된 매개변수는 세션에서 이미 정의된 매개변수와 병합됩니다. null 값이 있는 매개변수는 세션에서 삭제됩니다. 세션 스토리지 문서(https://developers.google.com/assistant/conversational/storage-session)를 참고하세요.

"key": value 쌍 목록을 포함하는 객체입니다. 예를 들면 { "name": "wrench", "mass": "1.3kg", "count": "3" }입니다.

typeOverrides[]

object (TypeOverride)

선택사항입니다. 세션으로 범위가 지정된 유형입니다. 세션 유형 정의는 기존 유형을 보완하거나 대체할 수 있습니다. 유형 이름은 고유해야 합니다.

languageCode

string

현재 대화 세션의 언어입니다. IETF BCP-47 언어 코드 http://www.rfc-editor.org/rfc/bcp/bcp47.txt를 따릅니다. 작업에서 다국어 기능을 사용하는 경우 사용자 언어와 다를 수 있습니다. 예를 들어 핸들러_response.expected.language_code를 설정하면 이후 모든 차례의 대화 언어가 변경되며, 변경사항이 이 필드에 반영됩니다.

TypeOverride

유형의 재정의를 나타냅니다.

JSON 표현
{
  "name": string,
  "mode": enum (TypeOverrideMode),
  "synonym": {
    object (SynonymType)
  }
}
필드
name

string

필수 항목입니다. 보완하거나 재정의할 유형의 이름입니다.

mode

enum (TypeOverrideMode)

필수 항목입니다. 이 유형을 다른 유형 값과 병합하는 방법입니다.

synonym

object (SynonymType)

TypeOverrideMode

세션 항목 유형의 수정 유형입니다.

열거형
TYPE_UNSPECIFIED 지정되지 않았습니다. 절대로 이 값을 사용하지 마세요.
TYPE_REPLACE 이 응답의 유형 정의가 이전에 정의된 유형 정의를 대체합니다.
TYPE_MERGE 이 응답의 유형 정의는 이전에 정의된 유형 정의와 병합됩니다. 새 유형 정의가 기존 유형 정의를 덮어씁니다.

SynonymType

동의어가 있는 유형을 나타냅니다.

JSON 표현
{
  "entries": [
    {
      object (Entry)
    }
  ]
}
필드
entries[]

object (Entry)

필수 항목입니다. 동의어 유형의 항목 목록입니다.

항목

동의어 유형에 대한 항목을 나타냅니다.

JSON 표현
{
  "name": string,
  "synonyms": [
    string
  ],
  "display": {
    object (EntryDisplay)
  }
}
필드
name

string

필수 항목입니다. 항목의 이름입니다 (예: '자전거'). 이 필드의 항목은 유효한 유형 값으로 인식될 반복 동의어 필드에 포함되어야 합니다.

synonyms[]

string

필수 항목입니다. 항목의 동의어 목록입니다 (예: '자전거', '자전거').

display

object (EntryDisplay)

선택사항입니다. 아이템의 정보가 표시됩니다.

EntryDisplay

JSON 표현
{
  "title": string,
  "description": string,
  "image": {
    object (Image)
  },
  "footer": string,
  "openUrl": {
    object (OpenUrl)
  }
}
필드
title

string

필수 항목입니다. 상품 제목입니다. 탭하면 이 텍스트가 사용자가 입력한 것처럼 대화에 그대로 다시 게시됩니다. 각 제목은 컬렉션 항목 집합 내에서 고유해야 합니다.

description

string

선택사항입니다. 카드의 본문 텍스트입니다.

image

object (Image)

선택사항입니다. 표시할 이미지입니다.

footer

string

선택사항입니다. 탐색 컬렉션 항목의 바닥글 텍스트로, 설명 아래에 표시됩니다. 한 줄의 텍스트이며 생략 부호로 잘립니다.

openUrl

object (OpenUrl)

캐러셀 항목 탐색과 연결된 문서의 URL입니다. 캐러셀에 필요합니다.

사용자

작업에 요청하는 사용자를 나타냅니다.

JSON 표현
{
  "locale": string,
  "params": {
    string: value,
    ...
  },
  "accountLinkingStatus": enum (AccountLinkingStatus),
  "verificationStatus": enum (UserVerificationStatus),
  "lastSeenTime": string,
  "engagement": {
    object (Engagement)
  },
  "packageEntitlements": [
    {
      object (PackageEntitlements)
    }
  ],
  "permissions": [
    enum (Permission)
  ]
}
필드
locale

string

요청하는 사용자의 기본 언어 설정입니다. IETF BCP-47 언어 코드 http://www.rfc-editor.org/rfc/bcp/bcp47.txt를 따릅니다. 하지만 스크립트 하위 태그는 포함되지 않습니다.

params

map (key: string, value: value (Value format))

선택사항입니다. 현재 사용자와 연결된 모든 매개변수의 목록입니다. 사용자 저장용량 문서(https://developers.google.com/assistant/conversational/storage-user)를 참고하세요.

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

accountLinkingStatus

enum (AccountLinkingStatus)

사용자 계정이 앱에 연결되어 있는지 여부

verificationStatus

enum (UserVerificationStatus)

사용자의 확인 상태를 나타냅니다.

lastSeenTime

string (Timestamp format)

이 사용자와의 마지막 상호작용 타임스탬프입니다. 사용자가 이전에 상담사와 상호작용한 적이 없는 경우 이 필드가 생략됩니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

engagement

object (Engagement)

인텐트 구독을 포함한 현재 사용자의 참여도입니다.

packageEntitlements[]

object (PackageEntitlements)

현재 작업과 연결된 Android 패키지와 관련된 사용자의 사용 권한입니다.

permissions[]

enum (Permission)

이 작업에 사용자가 부여한 권한이 포함됩니다.

AccountLinkingStatus

최종 사용자가 계정을 이 앱에 연결했는지 여부를 나타냅니다. 계정 연결 문서(https://developers.google.com/assistant/identity)를 참고하세요.

열거형
ACCOUNT_LINKING_STATUS_UNSPECIFIED 알 수 없는 작업입니다.
NOT_LINKED 사용자가 이 앱에 계정을 연결하지 않았습니다.
LINKED 사용자가 계정을 이 앱에 연결했습니다.

UserVerificationStatus

Google에서 사용자를 확인했는지 여부를 나타냅니다. 인증됨 상태는 매개변수 필드를 사용하거나 계정을 연결하여 모든 대화의 데이터를 저장할 수 있음을 나타냅니다.

열거형
USER_VERIFICATION_STATUS_UNSPECIFIED 알 수 없는 작업입니다.
GUEST 게스트 사용자입니다.
VERIFIED 인증된 사용자입니다.

참여

현재 사용자가 등록한 참여 메커니즘에 관한 읽기 전용 추가 정보를 제공합니다. 예를 들어 사용자에게 동일한 인텐트를 다시 구독하도록 요청하지 않으려면 사용자가 이미 구독 중인 인텐트를 아는 것이 유용할 수 있습니다. 즉, 이 정보는 사용자가 아직 구독하지 않은 경우에만 DailyUpdates 또는 Push Notifications를 설정하기 위해 장면으로 조건부로 라우팅하는 데 사용할 수 있습니다. 사용자 참여 관련 문서(https://developers.google.com/assistant/engagement)를 참고하세요.

JSON 표현
{
  "pushNotificationIntents": [
    {
      object (IntentSubscription)
    }
  ],
  "dailyUpdateIntents": [
    {
      object (IntentSubscription)
    }
  ]
}
필드
pushNotificationIntents[]

object (IntentSubscription)

사용자가 푸시 알림을 사용 설정한 인텐트 목록을 포함합니다.

dailyUpdateIntents[]

object (IntentSubscription)

사용자가 일일 업데이트를 사용 설정한 인텐트 목록을 포함합니다.

IntentSubscription

기존 IntentSubscription을 설명합니다.

JSON 표현
{
  "intent": string,
  "contentTitle": string
}
필드
intent

string

구독 중인 인텐트의 이름입니다.

contentTitle

string

정기 결제에 관한 간단한 설명입니다. 이 라벨은 알림의 라벨로 사용되며, 어시스턴트가 사용자에게 권한을 요청할 때 사용됩니다.

PackageEntitlements

패키지 이름과 관련된 사용자의 사용 권한 목록입니다. 디지털 상품 거래 문서(https://developers.google.com/assistant/transactions/digital/dev-guide-digital-non-consumables)를 참조하세요.

JSON 표현
{
  "packageName": string,
  "entitlements": [
    {
      object (Entitlement)
    }
  ]
}
필드
packageName

string

작업 패키지에 지정된 Android 패키지 이름입니다.

entitlements[]

object (Entitlement)

지정된 패키지에 대한 사용자의 사용 권한입니다.

사용 권한

사용자의 디지털 사용 권한을 정의합니다.

JSON 표현
{
  "sku": string,
  "skuType": enum (SkuType),
  "inAppDetails": {
    object (SignedData)
  }
}
필드
sku

string

제품 SKU입니다. 유료 앱의 패키지 이름, 인앱 구매 및 인앱 구독을 위한 Finsky Docid의 접미사. Play InApp Billing API의 getSku()를 매칭합니다. Play 인앱 결제 문서(https://developer.android.com/google/play/billing)를 참고하세요.

skuType

enum (SkuType)

SKU 유형입니다.

inAppDetails

object (SignedData)

인앱 구매 및 인앱 정기 결제인 경우에만 표시됩니다.

SkuType

열거형
SKU_TYPE_UNSPECIFIED
IN_APP 인앱 구매
SUBSCRIPTION 구독
APP 유료 앱

SignedData

JSON 표현
{
  "inAppPurchaseData": {
    object
  },
  "inAppDataSignature": string
}
필드
inAppPurchaseData

object (Struct format)

JSON 형식의 모든 인앱 구매 데이터가 포함됩니다. 자세한 내용은 https://developer.android.com/google/play/billing/billing_reference.html의 표 6을 참고하세요.

inAppDataSignature

string

Play InApp Billing API의 getPurchases() 메서드의 IN_APP_DATA_SIGNATURE와 일치합니다.

권한

권한에 사용할 수 있는 값입니다.

열거형
PERMISSION_UNSPECIFIED 권한이 지정되지 않았습니다.
DEVICE_PRECISE_LOCATION 사용자의 정확한 위치, 위도/경도, 형식이 지정된 주소를 요청합니다.
DEVICE_COARSE_LOCATION 사용자의 대략적인 위치, 우편번호, 도시, 국가 코드를 요청합니다.
UPDATE 업데이트를 보낼 권한을 요청합니다. https://developers.google.com/assistant/engagement/daily 페이지를 참고하세요.

사용자의 타겟 기기가 속한 HomeGraph 구조를 나타냅니다.

JSON 표현
{
  "params": {
    string: value,
    ...
  }
}
필드
params

map (key: string, value: value (Value format))

선택사항입니다. 타겟 기기가 속한 HomeGraph 구조와 연결된 매개변수 목록입니다. 홈 스토리지 문서(https://developers.google.com/assistant/conversational/storage-home)를 참고하세요.

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

기기

사용자가 작업에 요청하는 데 사용하는 기기를 나타냅니다.

JSON 표현
{
  "capabilities": [
    enum (Capability)
  ],
  "currentLocation": {
    object (Location)
  },
  "timeZone": {
    object (TimeZone)
  }
}
필드
capabilities[]

enum (Capability)

필수. 작업에 요청을 보내는 기기의 기능입니다.

currentLocation

object (Location)

선택사항입니다. 사용자의 기기 위치입니다. 이는 최종 사용자가 위치 정보 액세스 권한을 부여한 후에만 채워집니다. 대략적인 권한과 세분화된 권한에 따라 설정되는 필드에 관한 자세한 내용은 위치 메시지를 참고하세요. 권한 문서(https://developers.google.com/assistant/conversational/permissions)를 참고하세요.

timeZone

object (TimeZone)

선택사항입니다. 클라이언트 기기와 연결된 시간대입니다. 날짜/시간 값을 확인하는 데 사용할 수 있습니다.

기능

요청 시 기기 노출 영역에서 지원하는 기능입니다.

열거형
UNSPECIFIED 지정되지 않은 기기 기능입니다.
SPEECH 기기가 텍스트 음성 변환 또는 SSML을 통해 사용자와 대화할 수 있습니다.
RICH_RESPONSE 기기에서 카드, 목록, 표 등 풍부한 응답을 표시할 수 있습니다.
LONG_FORM_AUDIO 기기에서 음악 및 팟캐스트와 같은 긴 형식의 오디오 미디어를 재생할 수 있습니다.
INTERACTIVE_CANVAS 기기에서 대화형 캔버스 응답을 표시할 수 있습니다.
HOME_STORAGE 기기가 홈 저장용량 저장 및 가져오기를 지원할 수 있습니다.

위치

위치를 나타내는 컨테이너

JSON 표현
{
  "coordinates": {
    object (LatLng)
  },
  "postalAddress": {
    object (PostalAddress)
  }
}
필드
coordinates

object (LatLng)

지역 좌표 [DEVICE_PRECISE_LOCATION] 권한이 필요합니다.

postalAddress

object (PostalAddress)

우편 주소 [DEVICE_PRECISE_LOCATION] 또는 [DEVICE_COARSE_LOCATION] 권한이 필요합니다. 대략적 위치 정보 액세스 권한이 부여되면 'postalCode' 및 'locality' 필드만 채워져야 합니다. 정확한 위치 정보 액세스 권한은 'administrativeArea' 및 'addressLines'와 같은 추가 필드를 채웁니다.

TimeZone

IANA 시간대 데이터베이스에서 가져온 시간대를 나타냅니다.

JSON 표현
{
  "id": string,
  "version": string
}
필드
id

string

IANA 시간대 데이터베이스의 시간대입니다(예: 'America/New_York').

version

string

선택사항입니다. IANA 시간대 데이터베이스의 버전 번호입니다(예: '2019a').

관련 정보

사용자가 쿼리할 때 컨텍스트 정보를 포함합니다. 이러한 컨텍스트에는 활성 미디어 세션, 캔버스 웹 앱 상태 등을 포함하되 이에 국한되지 않습니다.

JSON 표현
{
  "media": {
    object (MediaContext)
  },
  "canvas": {
    object (CanvasContext)
  }
}
필드
media

object (MediaContext)

현재 활성 미디어 세션에 관한 컨텍스트 정보를 포함합니다.

canvas

object (CanvasContext)

현재 캔버스에 대한 컨텍스트 정보가 포함됩니다.

MediaContext

현재 활성 미디어 세션에 관한 컨텍스트 정보를 포함합니다.

JSON 표현
{
  "progress": string,
  "index": integer
}
필드
progress

string (Duration format)

현재 활성 미디어 파일의 미디어 진행률입니다.

초 단위 기간으로, 소수점 아래 9자리까지 지정 가능하며 's'로 끝납니다(예: "3.5s").

index

integer

미디어 응답의 미디어 파일 목록에 있는 현재 활성 미디어 파일의 0 기반 색인입니다.

CanvasContext

현재 캔버스에 대한 컨텍스트 정보가 포함됩니다.

JSON 표현
{
  "state": value
}
필드
state

value (Value format)

선택사항입니다. 3P Interactive Canvas 앱에서 설정한 상태입니다. 요청 시에만 설정되며 응답에는 설정되지 않습니다. 예를 들어 레시피 앱인 경우 상태는 다음과 같은 구조체 값일 수 있습니다. { "current_page" : 5, "last_page" : 3, } 크기 제한은 50KB입니다.

예상

다음 대화상자 차례에 대한 기대치를 설명합니다.

JSON 표현
{
  "speech": [
    string
  ]
}
필드
speech[]

string

음성 바이어스를 위해 작업이 사용자의 발화에서 예상하는 문구 목록입니다. 문구는 최대 1,000개까지 허용됩니다. 참고: 이 필드는 v2 API의 EstimatedInput.speech_biasing_hints와 동일한 의미를 가집니다.