Garoon SOAP APIの共通仕様

目次

Garoon SOAP API の概要

Garoon SOAP APIでは、SOAPを使用してGaroonと他システムの連携します。
Garoon SOAP APIの定義は、WSDL(Web Service Definition Language)によって記述されています。

Garoon SOAP APIの定義は、次のURLで確認できます。
環境に合わせてそれぞれ以下を置き換えてください。

  • IP_ADDRESS_OR_HOST_NAME:Garoonのインストール先のIPアドレスまたはホスト名

  • INSTALL_IDENTIFER:Garoonのインストール識別子

  • クラウド版Garoon:
    https://sample.cybozu.com/g/index.csp?WSDL

  • パッケージ版:
    以下は、ヘルプに記載しているディレクトリー構成( Windows (External link) Linux (External link) )でインストールしたときの例です。
    インストールするディレクトリーを変更している場合は、パスを読み替えてください。

    • Windows環境:http://IP_ADDRESS_OR_HOST_NAME/scripts/INSTALL_IDENTIFER/grn.exe?WSDL
    • Linux環境:http://IP_ADDRESS_OR_HOST_NAME/cgi-bin/INSTALL_IDENTIFER/grn.cgi?WSDL

Garoon SOAP APIでは、SOAPとWSDLの次のバージョンを使用します。

  • SOAP:1.2
  • WSDL:1.1

SOAPでは、XMLに基づいたメッセージを通信します。 Garoon SOAP APIでのリクエストとレスポンスの例を次に示します。
なお、リクエストやレスポンスにおける文字列のエスケープについては、 XML の仕様 (External link) を参照してください。

リクエスト例

1
2
3
POST /g/cbpapi/base/api.csp HTTP/1.1
Host: sample.cybozu.com
Content-Type: text/xml; charset=UTF-8
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
  <soap:Header>
    <Action>
      BaseGetApplicationStatus
    </Action>
    <Security>
      <UsernameToken>
        <Username>xxxxxxxxxx</Username>
        <Password>xxxxxxx</Password>
      </UsernameToken>
    </Security>
    <Timestamp>
      <Created>2010-08-12T14:45:00Z</Created>
      <Expires>2037-08-12T14:45:00Z</Expires>
    </Timestamp>
    <Locale>ja</Locale>
  </soap:Header>
  <soap:Body>
    <BaseGetApplicationStatus>
      <parameters></parameters>
    </BaseGetApplicationStatus>
  </soap:Body>
</soap:Envelope>

レスポンス例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
HTTP/1.1 200 OK
Date: Tue, 03 Sep 2013 05:44:26 GMT
Server: Apache
Strict-Transport-Security: max-age=315360000
X-Content-Type-Options: nosniff
X-Cybozu-Forward: 1
X-Cybozu-Product-Id: 00
X-Cybozu-Reminder-Whatsnew: https://sample.cybozu.com/g/reminder/whatsnew_notifier.csp?
X-Cybozu-Reminder-Schedule: https://sample.cybozu.com/g/reminder/schedule_notifier.csp?
X-Cybozu-Reminder-Mail: https://sample.cybozu.com/g/reminder/mail_notifier.csp?
X-Cybozu-User: 10
Content-Type: application/soap+xml; charset="utf-8"
Set-Cookie: CBSESSID=841s3liopdjo47vib0ddc08u3al7r6vl; path=/; secure; HttpOnly
Set-Cookie: GRN_Account=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/; secure; httponly
Vary: Accept-Encoding,User-Agent
X-UA-Compatible: IE=Edge,chrome=IE7
Transfer-Encoding: chunked
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 xmlns:base="http://wsdl.cybozu.co.jp/base/2008">
  <soap:Header>
    <vendor>Cybozu</vendor>
    <product>Garoon</product>
    <product_type>2</product_type>
    <version>3.8.0</version>
    <apiversion>1.3.0</apiversion>
  </soap:Header>
  <soap:Body>
    <base:BaseGetApplicationStatusResponse>
      <returns>
        <application code="portal" status="active"/>
        <application code="space" status="active"/>
        <application code="link" status="active"/>
        <application code="schedule" status="active"/>
        <application code="message" status="active"/>
        <application code="bulletin" status="active"/>
        <application code="cabinet" status="active"/>
        <application code="memo" status="active"/>
        <application code="phonemessage" status="active"/>
        <application code="timecard" status="active"/>
        <application code="todo" status="active"/>
        <application code="address" status="active"/>
        <application code="mail" status="active"/>
        <application code="workflow" status="active"/>
        <application code="report" status="active"/>
        <application code="cbwebsrv" status="active"/>
        <application code="rss" status="active"/>
        <application code="cbdnet" status="active"/>
        <application code="presence" status="active"/>
        <application code="star" status="active"/>
        <application code="notification" status="active"/>
        <application code="kunai" status="active"/>
        <application code="favour" status="deactive"/>
      </returns>
    </base:BaseGetApplicationStatusResponse>
  </soap:Body>
</soap:Envelope>

認証

Garoon SOAP APIを使用するには、Garoonに登録したユーザーで認証する必要があります。認証には、Cookieを使用した方式と、WebServicesSecurity(WS-Security)を使用した方式があります。
APIを高頻度で実行する場合は「Cookieを用いた認証方式」を利用してください。

セッションIDをCookieとしてリクエストに含めることで、認証します。
セッションIDの取得には次の2つの方法があります。

  1. Util APIの UtilLoginでログインし、セッションIDを取得する。
  2. ブラウザーでGaroonにログインし、セッションIDを取得する。

次に、UtilLoginでセッションIDを取得する際のリクエスト例とレスポンス例を示します。
UtilLoginの詳細については、 連携APIを参照してください。

1
2
3
POST /g/util_api/util/api.csp HTTP/1.1
Host: sample.cybozu.com
Content-Type: text/xml; charset=UTF-8
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
  <soap:Header>
    <Action>UtilLogin</Action>
    <Security></Security>
    <Timestamp>
      <Created>2010-08-12T14:45:00Z</Created>
      <Expires>2037-08-12T14:45:00Z</Expires>
    </Timestamp>
    <Locale>ja</Locale>
  </soap:Header>
  <soap:Body>
    <UtilLogin>
      <parameters>
        <login_name>xxxxxxxxxx</login_name>
        <password>xxxxxxx</password>
      </parameters>
    </UtilLogin>
  </soap:Body>
</soap:Envelope>
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
HTTP/1.1 200 OK
Date: Tue, 03 Sep 2013 08:10:54 GMT
Server: Apache
Strict-Transport-Security: max-age=315360000
X-Content-Type-Options: nosniff
X-Cybozu-Forward: 1
X-Cybozu-Product-Id: 00
X-Cybozu-Reminder-Whatsnew: https://sample.cybozu.com/g/reminder/whatsnew_notifier.csp?
X-Cybozu-Reminder-Schedule: https://sample.cybozu.com/g/reminder/schedule_notifier.csp?
X-Cybozu-Reminder-Mail: https://sample.cybozu.com/g/reminder/mail_notifier.csp?
X-Cybozu-User: 10
Content-Type: application/soap+xml; charset="utf-8"
Set-Cookie: CBSESSID=bmun236bhoifeu2cov6badrh0cs0s1af; path=/; secure; HttpOnly
Set-Cookie: GRN_Account=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/; secure; httponly
Vary: Accept-Encoding,User-Agent
X-UA-Compatible: IE=Edge,chrome=IE7
Transfer-Encoding: chunked
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 xmlns:admin="http://wsdl.cybozu.co.jp/admin/2008">
  <soap:Header>
    <vendor>Cybozu</vendor>
    <product>Garoon</product>
    <version>3.8.0</version>
    <apiversion>1.3.0</apiversion>
  </soap:Header>
  <soap:Body>
    <admin:LoginResponse>
      <returns>
        <login_name>xxxxxxxxxx</login_name>
        <status>Login</status>
        <cookie>CBSESSID=bmun236bhoifeu2cov6badrh0cs0s1af; path=/</cookie>
      </returns>
    </admin:LoginResponse>
  </soap:Body>
</soap:Envelope>

レスポンス内の「CBSESSID」がCookie名、および「bmun236bhoifeu2cov6badrh0cs0s1af」がCookie値です。
Garoon SOAP APIのリクエストにCookieを含めることで、WS-Securityによる認証は不要になり、リクエストからログイン名とパスワードを省けます。

Garoon SOAP APIリクエストにCookieを含める場合、Cookie名は以下です。

  • クラウド版Garoon:JSESSIONID |
  • パッケージ版Garoon 3.0以降:CBSESSID

また、Garoon SOAP APIのリクエストにCookieを含める場合は、次のようにリクエストヘッダーに含めます。

例:クラウド版 Garoonで、「UtilGetREquestToken」を実行した場合の例

1
2
3
4
POST /g/util_api/util/api.csp HTTP/1.1
Host: sample.cybozu.com
Content-Type: text/xml; charset=UTF-8 
Cookie: JSESSIONID=smbrfjktphvuc9a1c0er2dpk3e76psj2; 
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="UTF-8"?> 
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"> 
  <soap:Header> 
    <Action>UtilGetRequestToken</Action> 
    <Security> 
      <UsernameToken> 
        <Username></Username>  
        <Password></Password> 
      </UsernameToken> 
    </Security> 
    <Timestamp> 
      <Created>2010-08-12T14:45:00Z</Created> 
      <Expires>2037-08-12T14:45:00Z</Expires> 
    </Timestamp> 
    <Locale>ja</Locale> 
  </soap:Header> 
  <soap:Body> 
    <UtilGetRequestToken> 
      <parameters></parameters> 
    </UtilGetRequestToken> 
  </soap:Body> 
</soap:Envelope> 

WS-Security を用いた認証方式

ログイン名とパスワードをSOAPヘッダーに含めることによって認証します。 この認証方式では、リクエストごとに認証する必要があります。下記例の「Security」要素が該当の箇所です。
2要素認証を設定したcybozu.comユーザーアカウントでは、WS-Securityを用いた認証方式でSOAP APIを利用できません。

リクエスト例
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
<soap:Header> 
  <Action>BaseGetUserVersions</Action>
  <Security> 
    <UsernameToken> 
      <Username>sato</Username> 
      <Password>PASSWORD</Password> 
    </UsernameToken> 
  </Security> 
  <Timestamp> 
    <Created>2009-06-08T16:08:00Z</Created> 
    <Expires>2016-06-09T16:08:00Z</Expires> 
  </Timestamp> 
</soap:Header>

SAML 認証を設定している場合

SAML認証を設定している環境でも、この記事で案内している認証方式を使ってGaroon SOAP APIを利用できます。
ただし、WS-Securityを用いた認証方式の場合には、cybozu.comのログイン名とパスワードを指定してください。
ログイン時にSAML認証だけを使うように制限する (External link) 」を有効にした場合には、WS-Securityを用いた認証方式で実行できるユーザーは、cybozu.com共通管理者だけに制限されます。

Basic 認証

Basic 認証 (External link) を設定している場合、リクエストヘッダーに「Authorization」ヘッダーを指定します。
ヘッダーの値は「Basic 」と「Basic 認証のユーザー名:Basic 認証のパスワードをBase64エンコードした値」を結合した値です。
たとえば、ログイン名が「cybozu」でパスワードが「password」の場合、リクエストヘッダーには次の値を指定します。

1
2
3
{
  "Authorization": "Basic Y3lib3p1OnBhc3N3b3Jk"
}

タイムゾーン

Garoon SOAP APIでは、時刻にISO-8601規格のUTC表記を使用します。
例:2010-01-11T01:00:00Z
UTC以外のタイムゾーンを指定した場合も、UTCとして扱われます。
たとえば、「2010-01-11T01:00:00+09:00」を指定した場合は、「2010-01-11T01:00:00Z」を指定した時と同じ結果になります。

ローカライズ

受け取るエラーメッセージの言語をSOAPヘッダーで指定できます。
指定できる言語は、日本語(ja)、英語(en)、中国語(簡体字)(zh)、中国語(繁体字)(zh-tw)のいずれかです。
ただし、Language Pack未適応のパッケージ版3.0, 3.1のGaroonでは中国語を使用できません。下記例の「Locale」要素が該当の箇所です。

リクエストトークンが必要なAPIではLocaleに設定された値よりも「ユーザーが設定している言語」が優先されます。(パッケージ版Garoon3.5以降、クラウド版Garoon)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
<soap:Header> 
  <Action>BaseGetUserVersions</Action>
  <Security> 
    <UsernameToken> 
      <Username>sato</Username> 
      <Password>PASSWORD</Password> 
    </UsernameToken> 
  </Security> 
  <Timestamp> 
    <Created>2009-06-08T16:08:00Z</Created> 
    <Expires>2016-06-09T16:08:00Z</Expires> 
  </Timestamp> 
  <Locale>ja</Locale> 
</soap:Header>

データのバージョン

Garoon SOAP APIのパラメーターで使用する「version」とは、更新日時のUNIXタイムスタンプです。 APIによっては、versionを使用することによって特定のとき刻からの更新状況を取得できます。

リクエスト例

1
2
3
4
5
<parameters> 
  <user_item id="1" version="1245375234" />
  <user_item id="2" version="1245323905" />
  <user_item id="3" version="1245315235" />
</parameters>

レスポンス例

1
2
3
4
5
6
7
<returns> 
  <user_item id="1" version="1245376338" operation="modify" />
  <user_item id="2" version="1245327097" operation="modify" />
  <user_item id="3" version="1245327110" operation="modify" />
  <user_item id="4" version="1245715417" operation="add" />
  <user_item id="5" version="1245715429" operation="add" />
</returns>

更新情報取得 API

予定やメッセージ、ユーザー情報などの、Garoon内で扱う各データの更新情報を、APIで取得できます。
たとえば、ユーザーの更新情報を取得したい場合、「BaseGetUserVersions」というAPIで取得します。

これらの更新情報を取得するAPIを利用する際、ユーザーがアクセスできるデータすべての更新情報を返す点に注意してください。
たとえば、BaseGetUserVersionsではGaroon内の全ユーザーの更新情報を取得します。

場合によっては、レスポンスの受信に時間がかかることがあります。

エラー処理

Garoon SOAP APIでは、エラーが発生したときにエラーの内容を含んだXMLが返ります。
ネットワークなど、Garoon以外で障害が発生したときは、XMLレスポンスを取得できません。

エラーレスポンスの例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
 xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
 xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
  <soap:Header>
    <vendor>Cybozu</vendor>
    <product>Garoon</product>
    <product_type>2</product_type>
    <version>3.8.0</version>
    <apiversion>1.3.0</apiversion>
  </soap:Header>
  <soap:Body>
    <soap:Fault>
      <soap:Code>
        <soap:Value>soap:Receiver</soap:Value>
      </soap:Code>
      <soap:Reason>
        <soap:Text>リクエストパラメータが不足しています。</soap:Text>
      </soap:Reason>
      <soap:Detail>
        <code>GRN_CBPAPI_63004</code>
        <diagnosis>リクエストパラメータが不足しています。</diagnosis>
        <cause>&quot;user_id&quot;パラメータが必要です。</cause>
        <counter_measure>サイボウズオフィシャルパートナー、または販売元にお問い合わせください。</counter_measure>
              </soap:Detail>
    </soap:Fault>
  </soap:Body>
</soap:Envelope>

エラーメッセージ

すべてのAPIに共通して発生するエラーメッセージについて記述します。各API固有のエラーメッセージについては、各APIの詳細を確認してください。

エラー番号 説明
GRN_CBPAPI_63004 必要なリクエストパラメーターが不足している場合
GRN_CBPAPI_63006 必要なライセンスの期限が切れている場合
GRN_CMMN_00005 API実行ユーザーが実行権限のない処理を実行した場合

アクセス権

連携APIにおけるGaroonとの連携機能では、Garoon本体に準拠したアクセス権を判定しています。
APIを実行するユーザーがアクセス権を与えられていない処理を行った場合、Garoon本体と同様のアクセス権違反エラーが発生します。

リクエストトークン

セッションで認証してAPIを使用する場合は、リクエストトークンを取得する必要があります。これは、CSRF(クロスサイトリクエストフォージェリ)対策のためです。リクエストトークンはUtilAPIの「UtilGetRequestToken」で取得できます。 このAPIで取得できるトークンは固定トークンで、同一セッション内において使い回すことが可能です。セッションもしくはトークンが不正な場合、「FW00007」エラーが返されます。本エラーが出力された場合は、リクエストトークンを取得し直し、最新のトークンを利用してください。
パッケージ版Garoon 3.5より前のパッケージ版Garoonではリクエストトークンは不要です。

API のバージョン

Garoon SOAP APIのバージョンは、レスポンスヘッダーのapiversionで確認できます。
GaroonのバージョンによってAPIバージョンが異なります。

クラウド版

プロダクトの内部バージョン番号と同じです。
内部バージョン番号は、レスポンスヘッダーのversionで確認できます。

パッケージ版

  • パッケージ版3.0:1.0.0
  • パッケージ版3.1:1.1.0
  • パッケージ版3.5:1.2.0
  • パッケージ版3.7.0 〜 3.7.2:1.3.0
  • パッケージ版3.7.3 〜 3.7.5:1.3.1
  • パッケージ版4.0:1.4.0
  • パッケージ版4.2:1.6.0
  • パッケージ版4.6:1.11.0
  • パッケージ版4.10:1.12.0
  • パッケージ版5.0以降:プロダクトの内部バージョン番号と同じです。 内部バージョン番号は、レスポンスヘッダーのversionで確認できます。

API を実行できるユーザーの指定(パッケージ版のみ)

パッケージ版のGaroonでは、設定ファイルを編集して、APIの実行を許可するロールを指定できます。
初期設定では、ユーザーのロールによって実行できるAPIが異なります。

  • Administratorsロールをもつユーザー:すべてのAPI
  • その他のユーザー:システム管理系のAPIを除くAPI

クラウド版Garoonでは、ロールの指定は不要です。
すべてのユーザーがすべてのAPI(Admin APIの一部を除く)を使用できます。
実行権限を持たないユーザーでAPIを実行したとき、APIはエラー(GRN_CMMN_00005)が返ります。

設定ファイル

CGI_DIRECTORY_PATH/INSTALL_IDENTIFER/common.ini

CGI_DIRECTORY_PATHは環境に応じて置き換えてください。

  • Windows環境の場合: C:¥Inetpub¥scripts¥cbgrn¥common.ini
  • Linux環境の場合:/var/www/cgi-bin/cbgrn/common.ini

設定内容

実行権限をもつロールは、次のように設定します。

  • 「admin」で始まるAPI(システム管理者用のAPI):「sysapi_roles」
  • 「util」で始まるAPIを除く(通常ユーザー用のAPI):「papi_roles」
1
2
3
[API roles]
sysapi_roles = "roleA"
papi_roles = "roleA, roleB"

パラメーター名、リクエスト、およびレスポンスの説明の見方

各アプリケーションのAPIの説明における、パラメーター名、リクエスト、およびレスポンスの説明の見方を説明します。

パラメーター名

APIのリクエストとレスポンスで使用されるパラメーターの説明では、パラメーター名を「XML Path Language(XPath)」で記述しています。 リクエストの場合、parameters要素からのXPathを、レスポンスの場合、returns要素からのXPathでパラメーター名を記述しています。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 xmlns:base="http://wsdl.cybozu.co.jp/base/2008">
  <soap:Header>
    <vendor>Cybozu</vendor>
    <product>Garoon</product>
    <product_type>2</product_type>
    <version>3.8.0</version>
    <apiversion>1.3.0</apiversion>
  </soap:Header>
  <soap:Body>
    <base:BaseGetUserVersionsResponse>
      <returns>
        <user_item id="1" version="1363009269" operation="add"/>
        <user_item id="2" version="1377680211" operation="add"/>
        <user_item id="3" version="1359593131" operation="add"/>
      </returns>
    </base:BaseGetUserVersionsResponse>
  </soap:Body>
</soap:Envelope>

上記例はBase APIの「BaseGetUserVersions」APIのレスポンスです。
この場合、returns要素(リクエストの場合、parameters要素)の子ノード「user_item」の「id」という名前の属性ノードをXPath表現で記述すると、「user_item/@id」となります。

リクエストとレスポンス

APIのリクエストとレスポンスの例を示すときは、リクエストの場合parameters部分、レスポンスの場合はreturns部分のみを抜き出して記述します。

例:リクエスト

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"> 
  <soap:Header> 
    <Action>BaseGetUserVersions</Action>  
    <Security> 
      <UsernameToken> 
        <Username>Administrator</Username>  
        <Password>123456</Password>  
      </UsernameToken> 
    </Security> 
    <Timestamp> 
      <Created xmlns="">2009-06-08T16:00:00Z</Created>  
      <Expires xmlns="">2016-06-09T16:00:00Z</Expires>  
    </Timestamp> 
  </soap:Header> 
  <soap:Body> 
    <BaseGetUserVersions> 
      <parameters> 
        <user_item id="1" version="11" />  
      </parameters> 
    </BaseGetUserVersions> 
  </soap:Body> 
</soap:Envelope>

例:レスポンス

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"  
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"  
 xmlns:base="http://wsdl.cybozu.co.jp/base/2008"> 
  <soap:Body> 
    <base:BaseGetUserVersionsResponse> 
      <returns> 
        <user_item id="1" version="1245376338" operation="modify" />  
        <user_item id="2" version="1245327097" operation="add" />  
      </returns> 
    </base:BaseGetUserVersionsResponse> 
  </soap:Body> 
</soap:Envelope>

ファイルアップロード制限

Garoon SOAP APIを利用して添付ファイルをアップロードする場合、アップロード可能なファイルサイズの上限は、Base64エンコード後の状態で300MBです。
Garoonのシステム設定で、ファイルサイズの上限値を「無制限」に設定している場合も同様です。

ファイルダウンロード制限

Garoon SOAP APIを利用して添付ファイルをダウンロードするときのファイルサイズの上限は、Base64エンコード後のファイルサイズが200MB程度まです。

Garoon SOAP API の注意事項

  • Garoonのユーザ、組織、ロールのIDは、他のcybozu.comサービスのIDとは値が異なります。
  • リクエストにxmlns:soap="http://www.w3.org/2003/05/soap-envelope/"以外のnamespaceが設定されているとエラー(GRN_UTIL_API_65001)が返されます。