Kakao Work::Block Kit 구성 및 정책::Text Block

페이지 이동경로

Text Block

Text Block(텍스트 블록)은 말풍선에서 가장 기본인 텍스트를 표현하는 블록입니다. Text Block은 단독으로도 존재할 수 있지만, 레이아웃 블록을 구성하는 엘리먼트의 속성으로 사용되기도 합니다.

Text Block
블록 유형 블록명 엘리먼트 레이아웃 블록
말풍선 Text Block O X

기능 소개

Text Block은 다음 기능을 지원합니다.

카카오워크 1.7 버전 이후부터 Text Block의 표준 포맷이 Markdown에서 다음과 같이 변경되었습니다.

  • Plain Text 또는 Inlines 포맷으로 내용 입력 가능
  • Plain Text와 Inlines 모두 줄 넘김(\n) 기능 지원
Text Block 구성
블록 포맷 설명
Text Block Plain Text 글자 수: 최대 500자(공백 및 줄바꿈 포함)
Inlines 글자 수: 최대 500자(공백 및 줄바꿈 포함)
styled: 텍스트 스타일 설정
link: 링크 연결
mention: 사용자 멘션
Text Block 속성
속성 타입 필수 여부 설명
type String 필수 타입 고정값
- text로 고정
text String 필수 관련 내용
- 전체 텍스트를 \n을 포함하여 기술
- inlines 서식을 적용할 텍스트까지 포함하여 작성 필요
- inlines와 정합성이 맞지 않을 경우, inlines의 text를 우선으로 적용함
inlines Array 선택 다양한 추가 서식을 적용하여 텍스트 및 스타일 설정 가능
styled: Text Block에 bold, italic, strike, color 스타일을 적용
link: Text Block에 HTTP 또는 HTTPS 스킴을 적용
mention: Text Block에서 사용자를 멘션

Plain Text

Plain Text(플레인 텍스트)는 별도의 서식 없이 단순 텍스트로만 구성된 Text Block 포맷으로, 텍스트만 입력하여 메시지를 구성할 때 활용합니다.

Plain Text 블록 예시 그림Plain Text 블록 예시

주의
Plain Text로 Text Block을 구성한 경우, 별도의 링크 자동 변환 기능은 지원하지 않습니다.

Inlines

Inlines(인라인스)는 텍스트에 다양한 추가 서식을 적용할 때 사용하는 Text Block 포맷입니다.
Inlines 포맷은 styled, link, mention 속성으로 구성됩니다.

안내
폰트 종류와 크기 설정 기능은 지원하지 않습니다.

Inlines(styled와 link 속성)를 적용한 Text Block 예시 그림Inlines(styled와 link 속성)를 적용한 Text Block 예시

styled

styled는 Text Block에 bold, italic, strike, color 스타일을 지정하여 텍스트를 꾸미는 속성입니다. styled 속성은 굵은 글씨체, 기울어진 글씨체, 취소선, 글자 색상의 스타일을 중복하여 지정할 수 있습니다. 값을 명시하지 않은 경우에는 속성별 기본값이 적용됩니다.

styled 속성
속성 타입 필수 여부 설명
type String 필수 타입 고정값
- styled로 고정
text String 필수 스타일을 적용할 텍스트
bold Boolean 선택 굵은 글씨체
true: 굵은 글씨체 적용
false(기본값): 굵은 글씨체 미적용
italic Boolean 선택 기울어진 글씨체
true: 기울기 글씨체 적용
false(기본값): 기울기 글씨체 미적용
strike Boolean 선택 취소선
true: 취소선 적용
false(기본값): 취소선 미적용
color String 선택 글자 색상
default(기본값): 검은색
red: 빨간색
blue: 파란색
grey: 회색

코드예제styled 속성 적용 예시

{
        "type": "text",
        "text": "카카오워크 텍스트 블록 변경",
        "inlines": [
                {
                        "type": "styled",
                        "text": "카카오워크 "
                },
                {
                        "type": "styled",
                        "text": "텍스트",
                        "bold": true
                },
                {
                        "type": "styled",
                        "text": " 블록 변경",
                        "color": "red"
                }
        ]
}

link는 Text Block에 다음과 같은 HTTP 또는 HTTPS 스킴을 적용할 수 있는 속성입니다. 메일 주소(mailto:)와 연락처(tel:)가 입력될 경우, 각 클라이언트 특성에 맞게 링크가 자동으로 연결합니다.

URL 예시
URL 예시 결과
“https://blog.kakaowork.com/43” 브라우저로 연결
“tel:010-1234-5678” 통화 또는 브라우저로 연결
“mailto:someone@foo.com” 메일 작성으로 연결
link 속성
속성 타입 필수 여부 설명
type String 필수 타입 고정값
- link로 고정
text String 필수 링크를 적용할 텍스트
url String 필수 연결할 링크 주소
주의
URL 링크에는 bold, italic, strike, color 속성을 적용할 수 없습니다.

코드예제link 속성 적용 예시

{
        "type": "text",
        "text": "카카오워크 기술문서",
        "inlines": [
                {
                        "type": "link",
                        "text": "카카오워크 기술 문서",
                        "url": "https://blog.kakaowork.com/43"
                }
        ]
}

mention

mention은 Text Block에서 사용자를 멘션할 수 있는 속성이며, 채팅방에 멘션된 참여자가 존재할 경우에만 동작합니다. 멘션된 사용자를 클릭하면, 해당 사용자의 프로필 카드가 표시됩니다.

mention 속성
속성 타입 필수 여부 설명
type String 필수 타입 고정값
- mention으로 고정
text String 필수 멘션을 적용할 텍스트
Object 필수 참조할 사용자 정보
type String 필수 타입 고정값
- kw로 고정
value Integer 필수 멤버의 고유 정보인 user_id
- 자세한 설명은 기술 문서 참고

코드예제mention 속성 적용 예시

{
        "type": "text",
        "text": "@ryan",
        "inlines": [
                {
                        "type": "mention",
                        "text": "@ryan",
                        "ref": {
                                "type": "kw",
                                "value": 000
                        }
                }
        ]
}

예시

코드예제Text Block Sample Code

{
        "type": "text",
        "text": "카카오워크 텍스트 블록이 변경되었습니다. 자세한 설명은 기술 문서를 참고하시기 바랍니다. 담당자는 @ryan 입니다.",
        "inlines": [
                {
                        "type": "styled",
                        "text": "카카오워크 "
                },
                {
                        "type": "styled",
                        "text": "텍스트",
                        "bold": true,
                        "color": "red"
                },
                {
                        "type": "styled",
                        "text": "블록이 변경되었습니다. 자세한 설명은 "
                },
                {
                        "type": "link",
                        "text": "기술 문서",
                        "url": "https://blog.kakaowork.com/43"
                },
                {
                        "type": "styled",
                        "text": "를 참고하시기 바랍니다. 담당자는"
                },
                {
                        "type": "mention",
                        "text": "@ryan",
                        "ref": {
                                "type": "kw",
                                "value": 000
                        }
                },
                {
                        "type": "styled",
                        "text": "입니다."
                }
        ]
}

안내
inlines 상위의 text의 값과 inlines 하위의 text의 값은 동일해야 합니다.

  • 값이 동일하지 않은 경우에는 inlines의 하위 text 값이 우선으로 표시됩니다.
이 문서가 만족스러운 이유를 알려주세요.
이 문서에 아쉬운 점을 알려주세요.
평가해주셔서 감사합니다.

더 자세한 의견은 contact.dkt@kakaocorp.com 으로 제보해주세요.