Skip to main content
Skills

Skill の更新

(非推奨)Skill のメタデータまたは内容を更新する。

PUT /api/v1/cloud/skills/{skill_id}
⚠️ このエンドポイントは非推奨であり、今後のリリースで削除されます。
  • コンテンツの更新には Skill バージョンの作成POST /api/v1/cloud/skills/{skill_id}/versions)を使用してください。このエンドポイントで content を更新した場合も、既存内容を上書きせず、内部で新しいバージョンが作成されます。
  • name は変更できません:Skill 名はすべてのバージョンで一致する必要があります。現在と異なる name を送信すると 400 が返されます。
  • description / metadata のパッチ更新は引き続き利用できますが、これらも削除予定です。
指定された Skill のメタデータまたは内容を更新します。JSON リクエストボディのみサポートします。

パスパラメータ

パラメータ必須説明
skill_idstringはいSkill の一意識別子

ヘッダー

ヘッダー必須説明
AuthorizationはいBearer <PAT or SAT>
Content-Typeはいapplication/json

リクエストボディ

フィールド必須説明
namestringいいえ⚠️ 非推奨:名前変更はサポートされません。現在と異なる値は 400、同じ値は no-op(代替なし:name はバージョン間で不変)
descriptionstringいいえ⚠️ 非推奨:Skill シェルの説明を更新します。今後削除予定(説明は各バージョンの SKILL.md frontmatter で管理)
contentstringいいえ⚠️ 非推奨:base64 エンコードされた zip。内部で新しいバージョンに変換されます。プレーンテキストは受け付けず 400 を返します(代わりに POST /skills/{skill_id}/versions を使用)
content_encodingstringいいえ⚠️ 非推奨content が base64 zip の場合は "base64" を指定(代替は上記と同じ)
metadataobjectいいえ⚠️ 非推奨:保存済みメタデータオブジェクトを置換します。今後削除予定(現時点では代替なし)

リクエスト例

curl -X PUT https://api.qoder.com/api/v1/cloud/skills/skill_019e3bba474b73cfaf19eae9b5f5e66d \
  -H "Authorization: Bearer $QODER_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Updated skill description",
    "metadata": {"team":"docs","stage":"updated"}
  }'

レスポンス例

HTTP 200 OK
{
  "id": "skill_019e3bba474b73cfaf19eae9b5f5e66d",
  "type": "skill",
  "display_title": "test-skill-api-doc",
  "description": "Updated skill description",
  "source": "custom",
  "latest_version": "1759178010641129",
  "metadata": {
    "team": "docs",
    "stage": "updated"
  },
  "created_at": "2026-05-18T15:35:24.248164Z",
  "updated_at": "2026-05-18T15:36:01.767469Z"
}

レスポンスについて

  • updated_at は操作時刻に更新されます
  • content を更新すると新しいバージョンが作成され、latest_version はそのバージョンを指します
  • メタデータのみの更新では新しいバージョンは作成されません
  • リクエストボディに含まれないフィールドは元の値のまま保持されます

エラーレスポンス

HTTPtype説明
400invalid_request_errorJSON リクエストボディではなく multipart を使用
400invalid_request_errorname が現在の名前と異なる(名前変更不可)、または base64 zip 内の SKILL.mdname が既存の Skill 名と一致しない
400invalid_request_errorcontent_encoding のないプレーンテキスト content(受け付け終了。base64 zip または versions エンドポイントを使用)
401TOKEN_INVALID認証トークンが欠落または無効
404not_found_errorSkill が存在しないまたはアクセス不可
409conflict_error楽観的ロックの競合
完全なエラーエンベロープについては エラー を参照してください。

関連項目