PlanningPME API - カスタム統合

PlanningPMEは、PlanningPMEデータを層アプリケーションと同期するためのカスタム統合APIを提供します。

この文書は、次の質問に答えます:

「カスタム」統合APIを推奨する理由は?
カスタム統合APIはどのように機能しますか?
すぐに使用できる統合の種類は何ですか?
非常に具体的な統合にどのように役立てることができますか?
統合リクエストを行う方法は?

「カスタム」統合APIを推奨する理由は?

最近では、サービス間でデータを同期することが一般的になっています。異なるサービスが同じデータを必要とする場合がありますが、このデータを2回管理することは誰も望んでいません。
PlanningPMEは、他の情報システムとデータを交換するためのツールを提供します。

実際には、データエクスポートを、それらを使用するシステムの制約に適合させることが常に可能であるとは限りません。また、データを新しいモデルに適合させて別のアプリケーションと共有したくない場合もあります。
PlanningPMEは、カスタム統合APIを使用したデータ取得と表示に向けたこの柔軟性を提供します。

この柔軟性は、独自のアプリケーションだけでなく、CRM(SalesForce、Microsoft Dynamics ...)やERP(SAP、Oracle ...)などの最も普及しているアプリケーションにも適用されます。
PlanningPMEは、市場で最も使用度の高いアプリケーションに固有の交換モデルの継続的な実装に取り組んでいます。

要約すると、カスタム統合APIには、 従来のAPI に比べて2つの大きな利点があります:
  • ・独自のデータモデルに完全に適合したテンプレートで動作します。
  • ・単一のクエリで一括同期できるため、クォータの制限を回避できます。

カスタム統合APIはどのように機能しますか?

モデル定義により、データの取得と表示に必要なすべての柔軟性が得られます。
テンプレートには、PlanningPMEにデータをインポートするためのインポートテンプレートと、PlanningPMEデータをエクスポートするためのエクスポートテンプレートの2種類があります。
インポートテンプレートは、受信したフィールドとPlanningPMEフィールド間の一致を定義し、エクスポートテンプレートは、PlanningPMEのエクスポートされたフィールドとターゲットアプリケーションのフィールド間の対応を定義します。
テンプレートは、データのフォーマットまたは結合、およびデフォルト値と処理も定義します。

サンプルインポートテンプレート

<In>
	<Type Name="Customer" ShouldInsert="true" ShouldUpdate="true">
		<Default Field="Type" Value="1026" />
	</Type>
	<Property Name="Nom usage" Type="Customer" Field="LastName" />
	<Property Name="Téléphone mobile" Type="Customer" Field="Mobile" />
	<Property Name="Email" Type="Customer" Field="Email" />
	<Property Name="ID_DOSSIER" Type="Customer" Field="_IDDOSSIER" />
</In>

このテンプレートでは、データを挿入または更新できる顧客インポートを定義します。
顧客のタイプにはデフォルト値が定義されています(すべてのクライアントは個人です)。
最後に、受け取ったフィールドとPlanningPMEフィールドの間の対応を定義します(カスタムフィールドまたは汎用フィールド)。

APIに実装されるとすぐに、このモデルを使用すると、PlanningPMEスキーマを気にすることなくデータをインポートできます。

すぐに使用できる統合テンプレート

これらのすぐに使用できるテンプレートは、各APIインストールでデフォルトで使用できます。

このリストは、既知のサードパーティアプリケーションの要求、または一般的なニーズの要求に応じて増えると予想されます。

特定のケースの実装

特定のリクエストをサポートに公表して、サポートがそれを調査し、ケースに完全に適合した新しいテンプレートを生成します(開発コストは統合の複雑さに応じて確立できます)。

カスタマイズされたテンプレートは、APIの使用クォータ制限に達するリスクなしに一括同期を実行したいお客様のために頻繁に実装されます。

ほとんどの場合、お客様は独自のデータモデルを使用してPlanningPMEと対話することも望んでいます。これは、元のモデルの複雑さのレベルに関係なく、カスタム統合APIが可能にするものです。
たとえば、元のモデルの同じエンティティが、PlanningPMEモデルの異なるエンティティに対応している場合があります。カスタム統合により、同じ行を複数のエンティティに分割できるため、この種の同期が大幅に容易になります。

統合がどのようなものであっても、お客様のニーズと環境に合ったご提案を致します。
その開発にご協力させていただきます。

詳細や統合の指定については、ご遠慮なくお問い合わせください。

APIカスタム統合リクエストの例

カスタム統合APIはPlanningPME APIの一部です。APIとの対話の基本について説明している開発者向けドキュメントを参照してください。

統合テンプレート

APIにインストールされているカスタム統合テンプレートは、次の呼び出しを使用して取得できます。

GET /your_brand/api/integration/templates HTTP/1.1
Host: api.planningpme.com
X-APPKEY: your_key
Authorization: your_token

このメソッドは、インストールされたデータのインポートおよびエクスポートテンプレートとその詳細な説明を返します。

特定のテンプレートに基づいてエクスポート

エクスポートテンプレートは、PlanningPMEデータベースで見つかったデータを返します。

GET /votre_marque/api/integration/your_template?since=20181231045803 HTTP/1.1
Host: api.planningpme.com
X-APPKEY: your_key
Authorization: your_token

パラメータ「since」(オプション)を使用すると、この日付以降に作成および変更されたエレメント(形式yyyyMMddHHmmss)のみをエクスポートする必要があることをテンプレートに示すことができます。
パラメータがない場合、要求されたモデルに対応するすべてのエレメントが返されます。

特定のモデルに基づいてインポート

インポートテンプレート(「in」とマークされている)は、PlanningPMEデータベースにデータが挿入または変更されることを想定しています。

POST /your_brand/api/integration/your_template HTTP/1.1
Host: api.planningpme.com
X-APPKEY: your_key
Authorization: your_token

{
	simulate: false,
	verbose: false,
	stopOnError: false,
	model: {
		...
	}
}

本番データで実行する場合、インポートの実行パラメーター(モデルで事前定義されたマッピングに加えて)は以下のとおりです:

  • 処理された操作のシミュレーション(ブール値、デフォルトはfalse):インポートのシミュレーションを許可します、trueの場合、応答は、ベースで適用されたであろうすべての挿入と変更のレポートになります。これにより、本番データで実行する前にインポートモデルを検証できます、
  • verbose(boolean、デフォルトはfalse):メソッドがレポートを返すかどうかを示します、
  • stopOnError(boolean、デフォルトはfalse):trueの場合、エラーが発生するとすぐにインポートが停止し、falseの場合、インポートは次のエレメントで続行されます、verbose(boolean、デフォルトはfalse):メソッドがレポートを返すかどうかを示します、 処理された操作のシミュレーション(ブール値、デフォルトはfalse):インポートのシミュレーションを許可します。trueの場合、応答はベースで適用されたすべての挿入と変更のレポートになり、以前にインポートモデルを検証できます。 本番データで実行する場合、インポートの実行パラメーター(モデルで事前定義されたマッピングに加えて)は以下のとおりです:
  • モデル:定義された特定のモデルに従って構造化された、JSONオブジェクトとしてインポートされたデータ。

カスタマ―をインポート

POST /your_brand/api/integration/client-import HTTP/1.1
Host: api.planningpme.com
X-APPKEY: your_key
Authorization: your_token

{
	simulate: false,
	verbose: false,
	stopOnError: false,
	model: {
		...
	}
}

プロジェクトのインポート

POST /your_brand/api/integration/project-import HTTP/1.1
Host: api.planningpme.com
X-APPKEY: your_key
Authorization: your_token

{
	simulate: false,
	verbose: false,
	stopOnError: false,
	model: {
		...
	}
}