> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arc.cdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# arc:script

> arc:script を使用して、特定のREST メソッドに応答するスクリプトブロックを作成し、ArcScript でREST のようなサービスを実現します。

export const siteNameShort = "Arc";

`arc:script` キーワードを使用して、REST メソッドに応答するスクリプトブロックを作成します。

## パラメータ

* **method**：スクリプトを呼び出すために使われるHTTP メソッド（GET、POST、PUT/PATCH/MERGE、DELETE）。複数のメソッドをカンマ区切りリストで指定します。これを使用して{siteNameShort}Script でREST のようなサービスを作成できます。
* **language**：スクリプトを記述する際にPython スクリプト言語を使用するかどうか。詳しくは、[Writing Python](../writing-python) を参照してください。

## アトリビュートの制御

None

## 例

次のスクリプトは、`GetTransmissionDetails` サービスを定義します。これは`GetTransmissionDetails` がPOST メソッドを使ってアクセスされた場合のみ実行されます。インプットパラメータは、HTTP リクエストのボディで定義されます。

```xml theme={null}
<arc:script xmlns:arc="http://www.arcesb.com/ns/ArcScript/2">
  
  <arc:restrict user="admin" role="Administrators"/>
  
  <arc:info title="GetTransmissionDetails" description="アプリケーションのトランスミッションの詳細を取得します。">
    <input name="ConnectorId"          desc="コネクタのid。" required="true"/>
    <input name="MessageId"       desc="メッセージId。" required="true"/>
    <input name="Direction"       desc="トランスミッションの方向。" values="Incoming,Outgoing" required="true"/>
    <output name="LogTimeCreated" desc="ログファルが作成された時刻。"/>
    <output name="LogType"        desc="ログファイルの種類。" />
    <output name="LogFile"        desc="ログファイルの名前。" />
    <output name="LogPath"        desc="ログファイルのパス。" />
  </arc:info>

  <arc:script method="POST">
    <arc:push op="portGetTransmissionDetails" />
  </arc:script>
</arc:script>
```
