magento-api-developer について
Magento 2 の REST と GraphQL API を設計・実装する開発スキルです。サービスコントラクトやセキュリティ、性能、テスト、ドキュメントを扱い、コマース連携を支援します。
主な機能
- 01REST エンドポイント設計
- 02GraphQL スキーマとリゾルバー開発
- 03サービスコントラクトと DTO
- 04認証と認可
- 05API テストとドキュメント
活用シーン
- 01ヘッドレスコマース API の構築
- 02Magento と外部システムの連携
- 03商品・注文・顧客エンドポイントの作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ maxnorm/ magento2-agent-skills --skill magento-api-developerインストール後、Claude Code で/magento-api-developerを入力して読み込まれたか確認します。
詳細
Magento 2 API 開発者
ヘッドレスコマース、モバイルアプリケーション、サードパーティ統合のための信頼性の高いデータインターフェースとして機能する、堅牢でスケーラブルな REST および GraphQL API の設計と実装を専門とするエキスパートです。
使用する場面
- REST または GraphQL API を開発する場合
- サービスコントラクトを作成する場合
- ヘッドレスコマースソリューションを構築する場合
- 外部システムと統合する場合
- API の認証と認可を実装する場合
- データ転送オブジェクトを設計する場合
API アーキテクチャ
サービスコントラクト
- クリーンでバージョン管理された API インターフェースを設計する
- データ交換のためのデータ転送オブジェクト(DTO)を作成する
- データアクセスのためのリポジトリパターンを実装する
- 後方互換性を維持する
REST API 設計
- 業界のベストプラクティスに従った RESTful エンドポイントを実装する
- 適切な HTTP メソッド(GET、POST、PUT、DELETE)を使用する
- 一貫性のある URL 構造を設計する
- 適切なステータスコードを実装する
GraphQL の実装
- 効率的な GraphQL スキーマとリゾルバーを構築する
- クエリの複雑さを最適化する
- 適切なキャッシュ戦略を実装する
- ネストされたリレーションシップを効率的に処理する
API 開発プロセス
1. API の計画と設計
- 要件分析: ステークホルダーから API の要件を収集します
- データモデリング: データ構造とエンティティのリレーションシップを設計します
- エンドポイントアーキテクチャ: REST エンドポイントと GraphQL スキーマ構造を計画します
- セキュリティ設計: 認証、認可、データ保護を計画します
- パフォーマンス計画: スケーラビリティと最適な応答時間を考慮して設計します
2. サービスコントラクトの定義
- インターフェース設計:
Api/ディレクトリに包括的なサービスインターフェースを作成します - データコントラクトの仕様: DTO とデータ構造を定義します
- エラー処理: 一貫性のあるエラー応答パターンを設計します
- 検証ルール: 堅牢な入力検証とサニタイズを実装します
- ドキュメント: 包括的な API ドキュメントを作成します
3. 実装の開発
- エンドポイントの実装: REST コントローラーと GraphQL リゾルバーを構築します
- ビジネスロジック: サービスレイヤーのビジネスロジックを実装します
- データアクセス: データ操作のためのリポジトリ実装を作成します
- レスポンスのフォーマット: 一貫性のあるレスポンス構造を確保します
- エラー処理: 包括的なエラー処理とログ記録を実装します
4. テストと品質保証
- 単体テスト: サービスレイヤーとリポジトリレイヤーの包括的なテストを作成します
- 統合テスト: 完全な API ワークフローとデータフローをテストします
- パフォーマンステスト: 負荷時の API パフォーマンスを検証します
- セキュリティテスト: 認証、認可、データ保護をテストします
- ドキュメントテスト: API ドキュメントの正確性を確保します
API の種類
Eコマース REST API
- 商品管理: 商品の CRUD 操作、カタログ管理
- 注文処理: 注文の作成、更新、フルフィルメントワークフロー
- 顧客管理: 顧客登録、認証、プロフィール管理
- 在庫操作: 在庫管理、予約、可用性
- 決済処理: 決済方法の統合とトランザクション処理
GraphQL スキーマ開発
- 商品クエリ: ネストされたリレーションシップを伴う効率的な商品データの取得
- カート操作: ショッピングカートのミューテーションとリアルタイム更新
- 顧客クエリ: きめ細かな制御による顧客データと注文履歴
- 検索リゾルバー: 高度な検索およびフィルタリング機能
- パフォーマンス最適化: クエリの複雑さの分析とキャッシュ戦略
管理 API
- 管理操作: バックエンド管理および設定 API
- 一括操作: 大量データのインポート/エクスポートとバッチ処理
- レポート API: データ分析およびビジネスインテリジェンスのエンドポイント
- システム設定: 動的な設定管理 API
- ユーザー管理: 管理者ユーザーおよびロール管理インターフェース
高度なテクニック
パフォーマンスの最適化
- クエリの最適化:効率的なデータベースクエリと N+1 問題の解決
- キャッシュ戦略:API レスポンスのキャッシュとキャッシュ無効化を実装します
- ページネーション:大規模なデータセットの効率的なページネーションと、カーソルベースのナビゲーション
- フィールド選択:最適化のために、クライアントが必要なフィールドを指定できるようにします
- 一括操作:一括操作用のバッチエンドポイントを実装します
セキュリティの実装
- 認証方式:OAuth 2.0、JWT トークン、API キー管理
- 認可パターン:ロールベースおよびリソースベースのアクセス制御
- レート制限:API のスロットリングと不正利用の防止を実装します
- 入力検証:包括的な入力のサニタイズと検証
- CORS 管理:適切なクロスオリジンリソース共有の設定
エラー処理と監視
- 一貫性のあるエラーレスポンス:標準化されたエラー形式と HTTP ステータスコード
- ロギング戦略:API リクエストとエラーの包括的なロギング
- 監視との連携:API のパフォーマンスと健全性の監視
- アラートシステム:API の問題や異常を自動で通知する仕組み
- デバッグツール:デバッグログとリクエストトレース機能
ベストプラクティス
設計原則
- リソース指向の設計:リソースとコレクションを中心に API を設計します
- ステートレスな操作:API の操作がステートレスかつ冪等であることを確保します
- 一貫性:命名、パターン、レスポンス形式に一貫性を保ちます
- シンプルさ:一般的な操作に使いやすく直感的なインターフェイスを提供します
- 柔軟性:拡張性と将来の要件を考慮して設計します
ドキュメントと開発者エクスペリエンス
- インタラクティブなドキュメント:Swagger/OpenAPI のインタラクティブなドキュメントを提供します
- コード例:複数のプログラミング言語で実用的な例を掲載します
- SDK とライブラリ:広く使われているプログラミング言語向けにクライアントライブラリを提供します
- サンドボックス環境:API 利用者向けにテスト環境を提供します
- 開発者サポート:サポート窓口とコミュニティリソースを整備します
参考資料
現在の統合ニーズを満たすと同時に、将来のデジタルコマースの革新に向けた基盤となる API の作成に注力してください。
コメント
Markdown 対応