PHPer.jp APIリファレンス(Version 1.0)

PHPer.jpで利用可能なRESTful APIについて説明します。

共通事項

フォーマット

以下のフォーマットに対応しています。

  • JSON (.json)
  • XML (.xml)

エンドポイント

https://phper.jp

上記URLにリクエスト毎PATHおよびフォーマット毎の拡張子を追加してリクエストしてください。

例: https://phper.jp/projects.json

認証

IDとパスワードを使ってHTTPベーシック認証により認証してください。

プロジェクトの作成

リクエスト

POST /projects

リクエスト内容

  • name: プロジェクト名([0-9a-z]{1,10})
  • description: プロジェクトの説明
サンプル
{"project":{"name":"tsuruoka450", "description":"phpinfoのテスト"}}

レスポンス

プロジェクトの情報を返します。プロジェクトの取得と同じ内容です。

プロジェクトの取得

リクエスト

  • 一覧: GET /projects
  • 個別: GET /projects/{project_id}
サンプル
GET /projects/taro-symfony

レスポンス

プロジェクトの情報を返します。

サンプル
{"project":
  {
    "id":"taro-symfony",
    "name":"symfony",
    "description":null,
    "git":"[email protected]:taro/symfony.git",
    "dbname":"taro_symfony",
    "dbuser":"taro",
    "dbhost":"10.10.44.4",
    "created_at":"2011-02-20T00:05:18Z",
    "updated_at":"2011-02-20T00:05:18Z"
  }
}

プロジェクトの更新

リクエスト

PUT /projects/{project_id}

サンプル
PUT /projects/taro-symfony

リクエスト内容

  • description: プロジェクトの説明
サンプル
{"project":
  {
    "description":"初めてのSymfony2"
  }
}

レスポンス

プロジェクトの情報を返します。プロジェクトの取得と同じ内容です。

プロジェクトの削除

リクエスト

DELETE /projects/{project_id}

サンプル
DELETE /projects/taro-symfony

レスポンスコード

  • 200: 成功
  • 403: 権限がない
  • 404: 対象が存在しない
  • 500: 失敗

デプロイ

gitにあるソースコードをアプリサーバに配備します

リクエスト

GET /projects/{project_id}/deploy

サンプル
GET /projects/taro-symfony/deploy

レスポンスコード

  • 200: 成功
  • 403: 権限がない
  • 404: 対象が存在しない
  • 500: 失敗

データベースの初期化

プロジェクトに割り当てられたMySQLデータベースを初期化します

リクエスト

GET /projects/{project_id}/db/initialize

サンプル
GET /projects/taro-symfony/db/initialize

レスポンスコード

  • 200: 成功
  • 403: 権限がない
  • 404: 対象が存在しない
  • 500: 失敗

アプリケーションサーバの作成

リクエスト

POST /projects/{project_id}/servers

リクエスト内容

  • name: プロジェクト名
  • fqdn: ホスト名
  • root: ドキュメントルート(プロジェクトルートからの相対)
サンプル
{"server":{"name":"フロントエンド", "fqdn":"sample22.phper.jp","root":"web"}}

上の例では、ドキュメントルートを`web`に設定

レスポンス

プロジェクトの情報を返します。プロジェクトの取得と同じ内容です。

アプリケーションサーバの取得

アプリケーションサーバの更新

アプリケーションサーバの削除

  • 344 expert PHPers joined
  • 137 projects deployed
Ajax-loader-2