コミュニティを作成

POST/manage/communities

コミュニティを新規作成します。作成者は自動的に ADMIN メンバーとして登録されます。権限チェックはなく、ログイン中のユーザーであれば作成できます。

認証要ログイン

リクエストボディ

namestring必須

コミュニティ名(必須)。50 文字以内。

joinTypestring

APPROVAL_REQUIRED(承認制) / FREE_JOIN(自由参加) / INVITATION_ONLY(招待制)のいずれか(作成時は必須)

visibilitystring

PUBLIC / PRIVATE / LIMITED のいずれか。

descriptionstring

説明。500 文字以内。

languagesobject

多言語の名称・説明。

logoUrlstring

ロゴ画像 URL。有効な URL 形式であること。

contactobject

問い合わせ先。

tagsstring[]

タグ名の配列。

slugstring

3〜200 文字。半角英小文字・数字・ハイフン・アンダースコアのみ(^[a-z0-9-_]+$)。重複不可。

オブジェクトの構造

contact / organizerContact

連絡先。オブジェクトの配列(最大 10 件)で指定します。後方互換のため単一オブジェクトも受け付けます。

labelstring

表示ラベル(例: お問い合わせ窓口)

emailstring

メールアドレス。

urlstring

問い合わせフォームなどの URL。

x / instagram / facebook / youtubestring

公式 SNS。

languagesobject

言語別ラベル({ [lang]: { label } })

[
  {
    "label": "お問い合わせ",
    "email": "contact@example.com",
    "languages": { "en": { "label": "Contact" } }
  }
]

languages

言語コードをキーに、その言語で表示する title / description を指定します。指定した言語のみ上書きされ、未指定の言語は既定のフィールドが使われます。

<lang>object

言語コード(ja / en など)

<lang>.titlestring

その言語で表示するタイトル。

<lang>.descriptionstring

その言語で表示する説明。

{
  "ja": { "title": "オープニング基調講演", "description": "..." },
  "en": { "title": "Opening Keynote", "description": "..." }
}
リクエスト
curl https://api.4s.link/manage/communities \
-X POST \
-H "Authorization: Bearer 4s_at_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Tech Community",
"joinType": "FREE_JOIN",
"visibility": "PUBLIC"
}'
レスポンス例
{
"id": "c1a2b3c4-...",
"slug": "tech-community",
"name": "Tech Community",
"description": "...",
"joinType": "FREE_JOIN",
"visibility": "PUBLIC",
"logoUrl": "https://.../logo.png",
"logoDarkUrl": null,
"enabledChat": true,
"tags": []
}