Apidog Docs
🇯🇵 日本語
  • 🇺🇸 English
  • 🇯🇵 日本語
HomeLearning CenterSupport CenterAPI References
HomeLearning CenterSupport CenterAPI References
Discord Community
Slack Community
X / Twitter
🇯🇵 日本語
  • 🇺🇸 English
  • 🇯🇵 日本語
  1. API開発 & デバッグ
  • Apidog学習センター
  • はじめに
    • Apidog紹介
    • Apidog基本操作
      • 概要
      • 新しい APIを作成
      • APIにリクエストを送信
      • アサーションを追加
      • テストシナリオを作成
      • APIドキュメントを共有
      • さらなる探究
      • リクエストを送信してAPIとして保存
    • Apidog基本知識
      • Apidog操作方法
      • Apidogの基本概念
    • 移行
      • 概要
      • 手動インポート
      • 定期インポート
      • インポートオプション
      • データのエクスポート
      • Import from...
        • Postman からインポート
        • OpenAPI(Swagger)仕様のインポート
        • cURLのインポート
        • Markdownのインポート
        • Insomniaからのインポート
        • apiDocからのインポート
        • .harファイルのインポート
        • WSDLのインポート
  • API設計
    • 概要
    • コンポーネント
    • 常用フィールド
    • グローバルパラメータ
    • API変更履歴
    • プロジェクトの作成
    • 一括API管理
    • APIの基本
    • 複数のリクエストボディ例の設定
    • Schemas
      • 概要
      • 新規Schemaの作成
      • スキーマを構築する
      • JSONなどからのSchema生成
    • Security schemes
      • 概要
      • Security Schemeの作成
      • Security Schemeの使用
      • オンラインドキュメントにおけるSecurity Scheme
    • 高度な機能
      • APIをテストステップとしてインポート
      • パラメータリストの表示形式
      • APIのカスタムフィールド
      • APIのステータス
      • API固有識別子
  • API開発 & デバッグ
    • 概要
    • リクエストの生成
    • リクエストの送信
    • コード生成機能
    • APIケース
    • 動的な値
    • レスポンス検証
    • 設計優先 & リクエスト優先
    • 環境 & 変数
      • 概要
      • 環境とサービス
      • 変数の使い方
    • Vault secrets
      • 概要
      • AWS Secrets Manager
      • Azure Key Vault
      • HashiCorp Vault
    • 前/後処理
      • 概要
      • Wait
      • 変数の抽出
      • アサーション
      • データベース操作
        • 概要
        • MongoDB
        • Redis
        • Oracle クライアント
      • スクリプト利用
        • 概要
        • 前処理スクリプト
        • 後処理スクリプト
        • Postmanスクリプトリファレンス
        • 共通スクリプト
        • 他のプログラミング言語の呼び出し
        • JSライブラリの使用
        • レスポンスの可視化
        • スクリプトの例
          • その他の例
          • スクリプトを使用したリクエストメッセージの変更
          • スクリプトでの変数の使用
          • アサーションスクリプト
    • 動的値モジュール
  • APIモック
    • 概要
    • スマートMock
    • カスタムMock
    • Mockの優先順位
    • Mockスクリプト
    • クラウドMock
    • セルフホストランナーMock
    • Mock言語 (ロケール)
  • 自動テスト
    • 概要
    • テストレポート
    • テストシナリオ
      • テストシナリオの作成
      • 他のプロジェクトからAPI/APIケースをインポートする
      • リクエスト間でデータを渡す
      • API/APIケースからのデータ同期
      • フロー制御条件
      • テストシナリオのエクスポート
    • テストシナリオ実行
      • データ駆動型テスト
      • スケジュールタスク
      • テストシナリオを一括実行する
      • 他のプロジェクトのAPIの実行環境を管理する
      • テストシナリオを実行する
    • APIテスト
      • 統合テスト
      • 回帰テスト
      • エンドツーエンド(E2E)テスト
      • パフォーマンステスト
    • Apidog CLI
      • 概要
      • Apidog CLIのインストールと実行
      • Apidog CLI オプション
    • CI/CD
      • 概要
      • Jenkinsとの連携
      • Gitlabとの統合
  • APIドキュメント公開
    • 概要
    • Google AnalyticsとDoc Sitesの連携
    • CORS プロキシ
    • クイック共有
    • 可視性設定
    • ドキュメントURLに値を埋め込む
    • APIドキュメントを表示する
    • フォルダツリー設定
    • API SEO設定
    • カスタムレイアウト
    • ドキュメント検索
    • カスタムドメイン
    • ドキュメントサイトの公開
    • APIバージョン
      • 概要
      • APIバージョンの作成
      • APIバージョンの公開
      • APIバージョンごとにAPIの共有
  • リクエスト送信
    • 概要
    • GraphQL
    • gRPC
    • WebSocket
    • SSEデバッグ
    • SOAP/Webサービス
    • デバッグ用のリクエストプロキシエージェントを使用する
    • Socket.IO
    • リクエスト作成
      • リクエストの基本
      • パラメータとボディ
      • リクエストヘッダー
      • リクエスト設定
      • HTTP/2
      • リクエスト履歴
    • 認証と認可
      • 概要
      • CAとクライアント証明書
      • Apidogがサポートする認可タイプ
      • Digest Auth
      • OAuth 1.0
      • OAuth 2.0
      • Hawk Authentication
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • レスポンスとクッキー
      • 概要
      • ApidogのAPIレスポンス
      • Cookieの作成と送信
      • リクエストのデバッグ
      • リクエストをAPIとして保存
  • ブランチ管理
    • 概要
    • 新しいスプリントブランチの作成
    • スプリントブランチの管理
    • ブランチ内でのAPIテスト
    • ブランチでAPIの設計
    • スプリントブランチのマージ
  • Apidog MCP Server
    • 概要
    • Apidogプロジェクト内のAPI仕様をApidog MCPサーバー経由でAIに接続する
    • Apidogが公開したオンラインAPIドキュメントをApidog MCPサーバー経由でAIに接続する
    • Apidog MCPサーバーを介してOpenAPIファイルをAIに接続する
  • ベストプラクティス
    • ガイド:ChatGPT APIのトークンとコスト計算
    • Apidog コラボレーションワークフロー
    • API署名の取り扱い方法
    • Apidogでの認証状態の管理
    • OAuth 2.0で保護されたAPIにアクセスする方法
  • 管理
    • オンボーディングチェックリスト
      • 基本概念
      • Apidogスタートアップガイド
    • チーム管理
      • チーム管理
      • チームメンバーの管理
      • メンバーの役割と権限設定
      • チーム活動
      • チームリソース
        • 一般ランナー
        • チーム変数
        • リクエストプロキシエージェント
        • データベース接続
      • リアルタイムコラボレーション
        • チームコラボレーション
    • プロジェクト管理
      • プロジェクト管理
      • プロジェクトメンバーの管理
      • 通知設定
    • 組織管理
      • シングルサインオン(SSO)
        • 概要
        • Microsoft Entra IDの設定
        • Okta設定
        • 組織のSSOを設定する
        • チームへのグループのマッピング
        • ユーザーアカウントの管理
      • SCIMプロビジョニング
        • SCIMプロビジョニング入門
        • Microsoft Entra ID
        • Okta
      • 組織リソース
        • セルフホストランナー
  • 請求情報
    • 概要
    • プランのアップグレード
    • クレジット
    • クレジットカードが使えない?
    • サブスクリプションの管理
  • データ & セキュリティ
    • Apidogのデータはどこに保存され、データセキュリティはどのように確保されていますか?
    • ユーザーデータはどのように保存されますか?このデータは公開されますか?それともプライベートですか?すべてのデータはクラウドに保存されますか?
    • リクエストを送信する際、Apidogサーバーを経由しますか?データセキュリティは確保されていますか?
  • アドオン
    • API Hub
    • Apidog IntelliJ IDEA プラグイン
    • リクエストプロキシ
      • Apidogウェブでのリクエストプロキシ
      • 共有ドキュメントでのリクエストプロキシ
      • Apidogクライアントでのリクエストプロキシ
    • ブラウザ拡張機能
      • Microsoft Edge
      • Chrome
  • アカウント & 設定
    • アカウント設定
    • 言語設定
    • データバックアップ
    • ネットワークプロキシ設定
    • ホットキー
    • Apidogの更新
    • OpenAPIアクセストークンの生成
    • アカウント削除
  • 参考資料
    • Swagger拡張機能
    • Socket通信:パケットの分断と結合
    • 用語の説明
    • よくある質問
    • API-デザインファーストアプローチ
    • Apidog OpenAPI/Swagger仕様拡張
    • JSONPath
    • XPath
    • 正規表現
    • JSONスキーマ
    • CSVファイルフォーマット
    • Java環境のインストール
    • ランナーのデプロイ環境
    • ApidogフレーバーMarkdown
  1. API開発 & デバッグ

コード生成機能

API仕様に基づいて、ApidogはTypeScript、Java、Go、Swift、ObjectiveC、Kotlin、Dart、C++、C#、Rustなど、130以上のプログラミング言語やフレームワークのビジネスコードを自動生成できます。
Apidogには「サーバースタブとクライアントSDKの生成」「クライアントコードの生成」「データモデルコードの生成」という3つのコード生成機能があります。
サーバースタブとクライアントSDKの生成: サーバースタブはAPI開発者向け、クライアントSDKはAPI利用者向けです。サーバー側とクライアント側の両方のコードを生成します。サーバースタブはAPIのベース実装を提供し、クライアントSDKは様々な言語でAPIを利用するためのライブラリを提供します。
クライアントコードの生成: API利用者向けです。APIと連携するためのクライアントアプリケーションのコードを生成します。
データモデルコード生成: API利用者向けです。APIで使用されるデータ構造のコードを生成します。リクエストやレスポンスのオブジェクトを定義するクラスや構造体を含み、アプリケーション全体の型安全性と一貫性を確保します。

サーバースタブとクライアントSDKの生成#

この機能を使えば、プラットフォームで定義したAPI仕様に基づいて、サーバー側のコードスタブとクライアント側のSDKを自動生成できます。
サーバースタブは、APIの実装のベースとなるコードテンプレートで、APIの処理やレスポンス生成の土台を提供します。一方、クライアントSDKは、様々なアプリケーションからAPIを簡単に利用できるように事前設定されたコードを提供します。

生成手順#

1. コード生成プラグインのインストール
API仕様画面で「コード生成」をクリックし、「サーバースタブとクライアントSDKの生成」を選択します。
ビジネスコード生成ページで「ダウンロードとインストール」ボタンをクリックします。
2. コードの生成
必要なサーバーまたはクライアントコードを選択し、「コード生成」をクリックします。
3. カスタムテンプレートの使用
Custom Code Templates機能を使用して、チームの設計仕様に合わせたコードを生成し、様々な個別のニーズに対応することもできます。

対応言語・フレームワーク#

言語Server/Clientフレームワーク
JavaServerSpring, Inflector, Msf4j, Pkmst, Play Framework, Undertow Server, Vertx, Vertx Web, JAX-RS Cxf, JAX-RS Cxf Cdi, JAX-RS Cxf Extended, JAX-RS Jersey, JAX-RS Resteasy, JAX-RS Resteasy Eap, JAX-RS Spec
JavaClientAndroid, Java
PHPServerLaravel, Lumen, Symfony, Ze Ph, Slim4, Slim (Deprecated), Silex (Deprecated)
PHPClientPHP
SwiftClientSwift5, Swift4, Swift3 (Deprecated), Swift2 (Deprecated)
KotlinServerKotlin Server, Kotlin Spring, Kotlin Vertx
KotlinClientKotlin
JavaScriptClientApollo, Flowtyped, Closure Angular
Node.jsServerExpress, GraphQL Express
TypeScriptClientAxios, Fetch, Redux Query, Angular, Angularjs, Jquery, Rxjs, Node, Aurelia, Inversify
C++ServerPistache Server, Qt5 Qhttpengine Server, Restbed Server
C++ClientQt5 Client, Restsdk, Tizen
C#ServerC# Nancyfx
C#ClientC#, C# Netcore, C# Dotnet2
ASP.NETServerASP.NET Core
DartClientDart, Dart Dio, Dart Jaguar
GoServerGo Server, Go Gin Server
GoClientGo, Go (Experimental)
CClientC
Objective-CClientObjective-C
ScalaServerScala Akka Http Server, Scala Finch, Scala Lagom Server, Scala Play Server
ScalaClientScala Akka, Scala Gatling, Scala Sttp, Scalaz, Scala Httpclient (Deprecated)
ClojureClientClojure
GroovyClientGroovy
PythonServerPython Aiohttp, Python Blueplanet, Python Flask
PythonClientPython, Python (Experimental)
RustServerRust Server
RustClientRust
RubyServerRuby On Rails, Ruby Sinatra
RubyClientRuby
RClientR
PerlClientPerl
PowerShellClientPowerShell
JMeterClientJMeter
BashClientBash
LuaClientLua
F#ServerF# Functions, F# Giraffe Server
OCamlClientOCaml
ErlangServerErlang Server
ErlangClientErlang Client, Erlang Proper
FlashClientFlash
ElixirClientElixir
HaskellServerHaskell
HaskellClientHaskell Http Client
ElmClientElm
NimClientNim
AdaServerAda Server
AdaClientAda
ApexClientApex
EiffelClientEiffel
Apidogのコードテンプレート機能は、OpenAPI Generatorをベースに簡略化されています。OpenAPI generatorテンプレートのルールについて詳しくは、このYoutube動画を参照してください。

クライアントコードの生成#

クライアントコードは、様々な開発環境でAPIリクエストを行うために使用します。APIのドキュメントタブの右側にある「クライアントコード生成」ボタンをクリックして生成できます。
また、APIの実行タブにあるコードアイコン「</>」をクリックしても生成できます。
注意:上記の方法で生成されるクライアントコードには、API仕様のみが含まれ、リクエストパラメータの値は含まれません。パラメータ値を含むクライアントコードを生成したい場合は、まずリクエストを送信し、「実際のリクエスト」タブに切り替えてください。スクロールすると、パラメータ値を含むクライアントコードが表示されます。

対応言語#

言語バリエーション
ShellcURL, cURL-Windows, Httpie, wget, PowerShell
JavaScriptFetch, Axios, jQuery, XHR, Native, Request , Unirest
JavaUnirest, OkHttp
SwiftURLSession
GoNative
PHPcURL, Guzzle, pecl_http, HTTP_Request2
Pythonhttp.client, Requests
HTTPHTTP
Clibcurl
C#RestSharp
Objective-CNSURLSession
RubyNet::HTTP
OCamlCohttp
Darthttp
Rhttr, RCurl

データモデルコードの生成#

データモデルコードは、スキーマを定義するために使用され、APIでのデータ送信時のシリアル化や受信時のデシリアル化処理によく使用されます。SQLコードタイプを生成すると、データベースのテーブル作成シナリオでテーブル作成文を定義し、データベースにテーブルを作成することもできます。
データモデルにアクセスするには、Schema Editorの「コード生成」ボタンをクリックします。
その後、生成したいプログラミング言語を選択し、具体的なコードスタイルの設定ができます。

対応言語#

C#
C++
Crystal
Dart
Elm
Flow
Go
Haskell
Java
JavaScript
Kotlin
Objective-C
Pike
Python
Ruby
Rust
SQL
Swift
TypeScript

APIドキュメントでのコード生成#

Apidogで生成されたAPIドキュメントでは、簡単に「クライアントコード」と「データモデルコード」を生成できます。詳しくはAPIドキュメントでのコード生成についてをご覧ください。
image.png
Previous
リクエストの送信
Next
APIケース
Built with