Adobe Connect Web Services の使用開始

Adobe Connect Web Services API の使用開始にあたり、重要な概念を学び、基本を理解していきます。

Adobe Connect Web Services の使用開始にあたり、3 つの重要な概念を理解する必要があります。

  • ユーザーおよびグループである、プリンシパル

  • 共有可能なコンテンツオブジェクトであり、会議、コースおよび Adobe Connect で作成できるほぼすべてのコンテンツを表す、SCO。SCO(「スノー」と同じ韻を踏む sko と発音)は、業界標準の共有可能なコンテンツオブジェクト参照モデル(SCORM)仕様と互換性があり、学習管理システム(LMS)で使用可能

  • プリンシパルがオブジェクトに対して何ができるかを定義する、権限

この章では、ライセンスを取得している Adobe Connect アプリケーションの種類に関わらず、Web Services で実行できる基本的なタスクについて説明します。多くのタスクは、ブラウザーで実行する方法として説明されています。アプリケーションから呼び出す場合は、XML 要求を使用している言語に翻訳します(Java™ でこれを行う方法の例については「XML 要求の送信」を参照してください)。

プリンシパル ID の検索

プリンシパルとは、サーバー上の SCO と相互作用するための定義済みの権限を持つユーザーまたはグループです。組織にユーザーおよびグループを作成して、権限を変更することができます。

Adobe Connect では、ビルトイングループも準備されています。管理者、制限付き管理者、作成者、トレーニングマネージャー、イベント管理者、学習者、会議主催者およびセミナー主催者です。ユーザーおよびグループをビルトイングループに追加することはできますが、ビルトイングループの権限を変更することはできません。

注意:

利用できるビルトイングループは、アカウントにより異なります。

Adobe Connect のユーザーとグループには、それぞれプリンシパル ID が設定されています。一部の API 呼び出しでは、プリンシパル IDグループ ID またはユーザー ID と呼ばれ、他の値と区別されます。ユーザーやグループを識別する ID の値は、その名前に関わらず常に同じです。

ユーザーやグループのプリンシパル ID の取得

  1. フィルターを使用して principal-list を呼び出します。

     https://example.com/api/xml?action=principal-list&filter-name=jazz doe
     https://example.com/api/xml?action=principal-list&filter-name=jazz doe
     https://example.com/api/xml?action=principal-list&filter-name=jazz doe

    完全一致させるには、filter-namefilter-login または filter-email を指定するのが最適です。サーバーのパフォーマンスに影響する可能性があるため、filter-like-name の使用には注意が必要です。

  2. principal-id の応答から principal 要素を解析します。

    <principal principal-id=&quot;2006282569&quot; account-id=&quot;624520&quot; type=&quot;user&quot;
      has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>
    <name>jazz doe</name>
    <login>jazzdoe@example.com</login>
    <email>jazzdoe@newcompany.com</email>
    </principal>
     <principal principal-id=&quot;2006282569&quot; account-id=&quot;624520&quot; type=&quot;user&quot;   has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>   <name>jazz doe</name>   <login>jazzdoe@example.com</login>   <email>jazzdoe@newcompany.com</email>  </principal>
     <principal principal-id=&quot;2006282569&quot; account-id=&quot;624520&quot; type=&quot;user&quot; 
             has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>jazz doe</name>  
         <login>jazzdoe@example.com</login>  
         <email>jazzdoe@newcompany.com</email>  
     </principal>

現在のユーザーのプリンシパル ID の取得

  1. ユーザーがログインした後、common-info を呼び出します。

     https://example.com/api/xml?action=common-info
     https://example.com/api/xml?action=common-info
     https://example.com/api/xml?action=common-info
  2. user-id の応答から user 要素を解析します。

    <user user-id=&quot;2007124930&quot; type=&quot;user&quot;>
    <name>jazz doe</name>
    <login>jazz@doe.com</login>
    </user>
     <user user-id=&quot;2007124930&quot; type=&quot;user&quot;>   <name>jazz doe</name>   <login>jazz@doe.com</login>  </user>
     <user user-id=&quot;2007124930&quot; type=&quot;user&quot;> 
             <name>jazz doe</name>  
             <login>jazz@doe.com</login>  
     </user>

    ここで、principal-id は Adobe Connect に認証されたユーザーを常に表すため、user-id と呼ばれています。グループがこのサーバーにログインすることはできません。そのため、他のアクションで、user-id 値をprincipal-id として渡すことができます。

プリンシパルやゲストの一覧表示

ユーザータイプを持つプリンシパルは、Adobe Connect ユーザーとして登録されていますが、ゲストタイプを持つユーザーはゲストとして会議室に入ります。サーバーはゲストに関する情報を取得し、ゲストにプリンシパル ID を付与します。

サーバー上の全プリンシパルの一覧表示

  1. パラメーターを指定しないで principal-list を呼び出します。

     https://example.com/api/xml?action=principal-list
     https://example.com/api/xml?action=principal-list
     https://example.com/api/xml?action=principal-list

    この呼び出しによりすべての Adobe Connect ユーザーが返されるため、大きな応答になります。

  2. 求めた値の応答から principal 要素を解析します。

    <principal principal-id=&quot;2006282569&quot; account-id=&quot;624520&quot; type=&quot;user&quot;
      has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>
    <name>jazz doe</name>
    <login>jazzdoe@example.com</login>
    <email>jazzdoe@newcompany.com</email>
    </principal>
     <principal principal-id=&quot;2006282569&quot; account-id=&quot;624520&quot; type=&quot;user&quot;   has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>   <name>jazz doe</name>   <login>jazzdoe@example.com</login>   <email>jazzdoe@newcompany.com</email>  </principal>
     <principal principal-id=&quot;2006282569&quot; account-id=&quot;624520&quot; type=&quot;user&quot; 
             has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>jazz doe</name>  
         <login>jazzdoe@example.com</login>  
         <email>jazzdoe@newcompany.com</email>  
     </principal>

サーバー上の全ゲストの一覧表示

  1. report-bulk-users を呼び出し、ゲストのタイプをフィルタリングします。

     https://example.com/api/xml?action=report-bulk-users&filter-type=guest
     https://example.com/api/xml?action=report-bulk-users&filter-type=guest
     https://example.com/api/xml?action=report-bulk-users&filter-type=guest
  2. 応答から row 要素を解析します。

    <row principal-id=&quot;51157227&quot;>
    <login>joy@acme.com</login>
    <name>joy@acme.com</name>
    <email>joy@acme.com</email>
    <type>guest</type>
    </row>
     <row principal-id=&quot;51157227&quot;>   <login>joy@acme.com</login>   <name>joy@acme.com</name>   <email>joy@acme.com</email>   <type>guest</type>  </row>
     <row principal-id=&quot;51157227&quot;> 
         <login>joy@acme.com</login>  
         <name>joy@acme.com</name>  
         <email>joy@acme.com</email>  
         <type>guest</type>  
     </row>

特定の管理者の下にいるユーザーすべての一覧表示

principal-id を指定して principal-info を呼び出すと、応答には該当するプリンシパルが表示されます。プリンシパルが、Adobe Connect で割り当てられた管理者の下にいる場合、応答には、manager 要素にプリンシパルの管理者に関するデータも表示されます。

<manager account-id=&quot;624520&quot; disabled=&quot;&quot; has-children=&quot;false&quot; is-hidden=&quot;false&quot; is-primary=&quot;false&quot; principal-id=&quot;2006282569&quot; type=&quot;user&quot;>
<ext-login>jazzdoe@example.com</ext-login>
<login>jazzdoe@example.com</login>
<name>jazz doe</name>
<email>joy@example.com</email>
<first-name>jazz</first-name>
<last-name>doe</last-name>
<x-2006293620>23456</x-2006293620>
<x-2007017651>chicago</x-2007017651>
</manager>
 <manager account-id=&quot;624520&quot; disabled=&quot;&quot; has-children=&quot;false&quot; is-hidden=&quot;false&quot; is-primary=&quot;false&quot; principal-id=&quot;2006282569&quot; type=&quot;user&quot;>   <ext-login>jazzdoe@example.com</ext-login>   <login>jazzdoe@example.com</login>   <name>jazz doe</name>   <email>joy@example.com</email>   <first-name>jazz</first-name>   <last-name>doe</last-name>   <x-2006293620>23456</x-2006293620>   <x-2007017651>chicago</x-2007017651>  </manager>
 <manager account-id=&quot;624520&quot; disabled=&quot;&quot; has-children=&quot;false&quot; is-hidden=&quot;false&quot; is-primary=&quot;false&quot; principal-id=&quot;2006282569&quot;        type=&quot;user&quot;> 
     <ext-login>jazzdoe@example.com</ext-login>  
     <login>jazzdoe@example.com</login>  
     <name>jazz doe</name>  
     <email>joy@example.com</email>  
     <first-name>jazz</first-name>  
     <last-name>doe</last-name>  
     <x-2006293620>23456</x-2006293620>  
     <x-2007017651>chicago</x-2007017651>  
 </manager>

管理者の principal-idprincipal-list を使用して、管理者に割り当てられているすべてのユーザーを一覧表示できます。

  1. principal-list を呼び出し、manager-id でフィルタリングします。

     https://example.com/api/xml?action=principal-list &filter-manager-id=2006282569
     https://example.com/api/xml?action=principal-list &filter-manager-id=2006282569
     https://example.com/api/xml?action=principal-list    &filter-manager-id=2006282569
  2. principal 要素の応答を解析します。

    <principal principal-id=&quot;2006258745&quot; account-id=&quot;624520&quot; type=&quot;user&quot; has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot; manager-id=&quot;2006282569&quot;>
    <name>Pat Lee</name>
    <login>plee@mycompany.com</login>
    <email>plee@mycompany.com</email>
    </principal>
     <principal principal-id=&quot;2006258745&quot; account-id=&quot;624520&quot; type=&quot;user&quot; has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot; manager-id=&quot;2006282569&quot;>   <name>Pat Lee</name>   <login>plee@mycompany.com</login>   <email>plee@mycompany.com</email>  </principal>
     <principal principal-id=&quot;2006258745&quot; account-id=&quot;624520&quot; type=&quot;user&quot; has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot; manager-id=&quot;2006282569&quot;> 
         <name>Pat Lee</name>  
         <login>plee@mycompany.com</login>  
         <email>plee@mycompany.com</email>  
     </principal>

ユーザーの作成

新規ユーザーを作成するには、管理者権限が必要です。アドビでは、管理者グループに属するユーザーを作成することをお勧めしています。そうすることで、管理者権限を必要とする API 呼び出しをアプリケーションで使用できるようになります。

新規ユーザーの作成とようこそ電子メールの送信

  1. アプリケーションで、管理者ユーザーとしてログインします。

    ログインの様々な方法については「アプリケーションからのログイン」を参照してください。

  2. いずれかのパラメーターを使用して principal-update を呼び出します。

     https://example.com/api/xml?action=principal-update
      &first-name=jazz&last-name=doe&login=jazz99@doe.com&password=hello
      &type=user&send-email=true&has-children=0&email=jazz99@doe.com
     https://example.com/api/xml?action=principal-update   &first-name=jazz&last-name=doe&login=jazz99@doe.com&password=hello   &type=user&send-email=true&has-children=0&email=jazz99@doe.com
     https://example.com/api/xml?action=principal-update 
             &first-name=jazz&last-name=doe&login=jazz99@doe.com&password=hello 
             &type=user&send-email=true&has-children=0&email=jazz99@doe.com

    typeuserhas-children0 または falsesend-emailtrueemail は有効な電子メールアドレスである必要があります。

    サーバーから、ユーザーの電子メールアドレスに、ログイン情報を含むようこそ電子メールが送信されます。

  3. ユーザーの principal-id の応答から principal 要素を解析します。

    <principal type=&quot;user&quot; principal-id=&quot;2007184341&quot; has-children=&quot;0&quot;
      account-id=&quot;624520&quot;>
    <login>jammdoe@example.com</login>
    <ext-login>jammdoe@example.com</ext-login>
    <name>jamm doe</name>
    </principal>
     <principal type=&quot;user&quot; principal-id=&quot;2007184341&quot; has-children=&quot;0&quot;   account-id=&quot;624520&quot;>   <login>jammdoe@example.com</login>   <ext-login>jammdoe@example.com</ext-login>   <name>jamm doe</name>  </principal>
     <principal type=&quot;user&quot; principal-id=&quot;2007184341&quot; has-children=&quot;0&quot; 
             account-id=&quot;624520&quot;> 
         <login>jammdoe@example.com</login>  
         <ext-login>jammdoe@example.com</ext-login>  
         <name>jamm doe</name>  
     </principal>

ログイン ID として電子メールアドレスを使用しない新規ユーザーの作成

  1. Adobe Connect Central で、管理/ユーザーとグループ/ログインおよびパスワードポリシーを編集に移動します。「ログインに電子メールアドレスを使用」が「いいえ」に設定されていることを確認します。

  2. アプリケーションで、管理者ユーザーとしてログインします。

  3. principal-update を呼び出して、新しいユーザーを作成し、login および email パラメーターの両方を渡します。

     https://example.com/api/xml?action=principal-update&first-name=jazz
      &last-name=doe&login=jazz&email=jazzdoe@company.com
      &password=nothing&type=user&has-children=0
     https://example.com/api/xml?action=principal-update&first-name=jazz   &last-name=doe&login=jazz&email=jazzdoe@company.com   &password=nothing&type=user&has-children=0
     https://example.com/api/xml?action=principal-update&first-name=jazz 
         &last-name=doe&login=jazz&email=jazzdoe@company.com 
         &password=nothing&type=user&has-children=0
  4. 新規ユーザーの principal-id の応答を解析します。

    <principal type=&quot;user&quot; principal-id=&quot;2007184341&quot; has-children=&quot;0&quot;
      account-id=&quot;624520&quot;>
    <login>jazzdoe@example.com</login>
    <ext-login>jazzdoe@example.com</ext-login>
    <name>jazz doe</name>
    </principal>
     <principal type=&quot;user&quot; principal-id=&quot;2007184341&quot; has-children=&quot;0&quot;   account-id=&quot;624520&quot;>   <login>jazzdoe@example.com</login>   <ext-login>jazzdoe@example.com</ext-login>   <name>jazz doe</name>  </principal>
     <principal type=&quot;user&quot; principal-id=&quot;2007184341&quot; has-children=&quot;0&quot; 
                 account-id=&quot;624520&quot;> 
         <login>jazzdoe@example.com</login>  
         <ext-login>jazzdoe@example.com</ext-login>  
         <name>jazz doe</name>  
     </principal>

    デフォルトの応答では、ユーザーが外部認証を使用して正常にログインするまで、ext-loginlogin と同じ値になります(「HTTP ヘッダー認証を使用したログイン」を参照)。

ユーザーの更新

ユーザーを作成した後、多くの場合ユーザーの情報を更新する必要が発生します。ユーザーのプリンシパル ID を指定してプリンシパルの更新を呼び出すことで、Adobe Connect でユーザーに対して定義している標準フィールドを更新することができます。標準フィールドには電子メールログインおよびが含まれます。

プリンシパルのカスタムフィールドを定義している場合、acl-field-update を使用して更新できます。

ユーザーを更新するには管理者権限が必要なので、まずアプリケーションで管理者グループのユーザーとしてログインする必要があります。ユーザーとしてログインした場合、他のユーザーにプロファイルを各自で更新させることができません。

標準ユーザー情報の更新

  1. 管理者ユーザーとしてログインします。

  2. フィルターを使用して principal-list を呼び出し、ユーザーのプリンシパル ID を取得します(「プリンシパル ID の検索」を参照)。

  3. principal-update を呼び出して、ユーザーを更新します。

     https://example.com/api/xml?action=principal-update
      &principal-id=2006282569&email=jazzdoe@newcompany.com
     https://example.com/api/xml?action=principal-update   &principal-id=2006282569&email=jazzdoe@newcompany.com
     https://example.com/api/xml?action=principal-update 
         &principal-id=2006282569&email=jazzdoe@newcompany.com
  4. ステータスコードが ok の応答を解析します。

ユーザーのカスタムフィールドの更新

  1. 管理者ユーザーとしてログインします。

  2. custom-fields を呼び出して、カスタムフィールドのフィールド ID を取得します。

     https://example.com/api/xml?action=custom-fields
     https://example.com/api/xml?action=custom-fields
     https://example.com/api/xml?action=custom-fields
  3. 更新するプリンシパル IDSCO ID またはアカウント ID を取得します。

    この値が、acl-field-update に渡す ACL ID になります。

  4. acl-field-update を呼び出し、カスタムフィールドの値を更新します。

     https://example.com/api/xml?action=acl-field-update&field-id=x-2007396975&acl-id=2006258745&value=44444
     https://example.com/api/xml?action=acl-field-update&field-id=x-2007396975&acl-id=2006258745&value=44444
     https://example.com/api/xml?action=acl-field-update&field-id=x-2007396975&acl-id=2006258745&value=44444

カスタムフィールドの作成

カスタムフィールドは、ユーザーが定義する追加のデータフィールドです。カスタムフィールド更新を使用して、プリンシパルまたは SCO に最大 8 つのカスタムフィールドを定義できます。

デフォルトでは、カスタムフィールドを定義した後、Adobe Connect Central で編集するか、custom-field-update を呼び出すことで値を設定できます。

API を介してのみ値を更新できるように指定するには、object-type=object-type-read-only のパラメーターを指定して custom-field-update を呼び出します。

カスタムフィールドの定義およびユーザーへの設定

  1. まず、custom-field-update を使用してフィールドを作成します。

     https://example.com/api/xml?action=custom-field-update
      &object-type=object-type-principal&permission-id=manage
      &account-id=624520&name=Location&comments=adobe%20location
      &field-type=text&is-required=true&is-primary=false&display-seq=9
     https://example.com/api/xml?action=custom-field-update   &object-type=object-type-principal&permission-id=manage   &account-id=624520&name=Location&comments=adobe%20location   &field-type=text&is-required=true&is-primary=false&display-seq=9
     https://example.com/api/xml?action=custom-field-update 
         &object-type=object-type-principal&permission-id=manage 
         &account-id=624520&name=Location&comments=adobe%20location 
         &field-type=text&is-required=true&is-primary=false&display-seq=9

    name フィールドで、アプリケーションに表示されるフィールド名を定義するため、スペルや大文字小文字の区別が適切になっているようにします。この例では、カスタムフィールドは、すべての Adobe Connect のプリンシパルに定義されています。

  2. field-id の応答から field 要素を解析します。

    <field field-id=&quot;2007184366&quot; object-type=&quot;object-type-principal&quot;
      display-seq=&quot;9&quot; account-id=&quot;624520&quot; is-primary=&quot;false&quot;
      permission-id=&quot;manage&quot; is-required=&quot;true&quot; field-type=&quot;text&quot;>
    <comments>test</comments>
    <name>Country</name>
    </field>
     <field field-id=&quot;2007184366&quot; object-type=&quot;object-type-principal&quot;   display-seq=&quot;9&quot; account-id=&quot;624520&quot; is-primary=&quot;false&quot;   permission-id=&quot;manage&quot; is-required=&quot;true&quot; field-type=&quot;text&quot;>  <comments>test</comments>  <name>Country</name>  </field>
     <field field-id=&quot;2007184366&quot; object-type=&quot;object-type-principal&quot; 
             display-seq=&quot;9&quot; account-id=&quot;624520&quot; is-primary=&quot;false&quot;  
             permission-id=&quot;manage&quot; is-required=&quot;true&quot; field-type=&quot;text&quot;> 
     <comments>test</comments>  
     <name>Country</name>  
     </field>
  3. ユーザーのプリンシパル ID を取得します(「プリンシパル ID の取得」を参照)。

  4. acl-field-update を呼び出してフィールドの値を設定し、field-idacl-id としてのユーザーのプリンシパル ID および値を渡します。

     https://example.com/api/xml?action=acl-field-update
      &acl-id=2006258745&field-id=2007017474&value=San%20Francisco
     https://example.com/api/xml?action=acl-field-update   &acl-id=2006258745&field-id=2007017474&value=San%20Francisco
     https://example.com/api/xml?action=acl-field-update 
         &acl-id=2006258745&field-id=2007017474&value=San%20Francisco
  5. ステータスコードが ok の応答を解析します。

グループの作成

ユーザーをグループに追加するには、アプリケーションの管理者ユーザーとして principal-update を呼び出す必要があります。

グループへのユーザーの追加

  1. アプリケーションの管理者ユーザーとしてログインします。

  2. (オプション)ユーザーがまだ存在しない場合、principal-update を使用してユーザーを作成します。

     https://example.com/api/xml?action=principal-update
      &first-name=jazzwayjazz&last-name=doe&login=jazz@doe.com
      &password=nothing&type=user&has-children=0
     https://example.com/api/xml?action=principal-update   &first-name=jazzwayjazz&last-name=doe&login=jazz@doe.com   &password=nothing&type=user&has-children=0
     https://example.com/api/xml?action=principal-update 
         &first-name=jazzwayjazz&last-name=doe&login=jazz@doe.com 
         &password=nothing&type=user&has-children=0
  3. (オプション)新規ユーザーの principal-id の応答を解析します。

  4. ユーザーが既に存在する場合、principal-list を呼び出して、ユーザーのプリンシパル ID を取得します。

     https://example.com/api/xml?action=principal-list&filter-type=user
     https://example.com/api/xml?action=principal-list&filter-type=user
     https://example.com/api/xml?action=principal-list&filter-type=user
  5. principal-id の応答を解析します。

    <principal principal-id=&quot;5611980&quot; account-id=&quot;624520&quot; type=&quot;user&quot;
      has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>
    <name>Joy Black</name>
    <login>joy@acme.com</login>
    <email>joy@acme.com</email>
    </principal>
     <principal principal-id=&quot;5611980&quot; account-id=&quot;624520&quot; type=&quot;user&quot;   has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>   <name>Joy Black</name>   <login>joy@acme.com</login>   <email>joy@acme.com</email>  </principal>
     <principal principal-id=&quot;5611980&quot; account-id=&quot;624520&quot; type=&quot;user&quot;  
             has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>Joy Black</name>  
         <login>joy@acme.com</login>  
         <email>joy@acme.com</email>  
     </principal>
  6. principal-list を再度呼び出し、グループのプリンシパル ID を取得します。

     https://example.com/api/xml?action=principal-list&filter-type=group
     https://example.com/api/xml?action=principal-list&filter-type=group
     https://example.com/api/xml?action=principal-list&filter-type=group
  7. is-member=true を指定してgroup-membership-update を呼び出し、グループにユーザーを追加します。

     https://example.com/api/xml?action=group-membership-update
      &group-id=4930296&principal-id=2006258745&is-member=true
     https://example.com/api/xml?action=group-membership-update   &group-id=4930296&principal-id=2006258745&is-member=true
     https://example.com/api/xml?action=group-membership-update 
         &group-id=4930296&principal-id=2006258745&is-member=true
    • principal-id は、ユーザーのプリンシパル ID です。

    • group-idは、グループのプリンシパル ID です。

    • is-member のパラメーターは、true である必要があります。

特定のユーザーがグループに属しているかどうかの確認

  1. group-idfilter-is-member およびプリンシパルを識別するフィルターを指定して principal-list を呼び出します。

     https://example.com/api/xml?action=principal-list&group-id=624523
      &filter-is-member=true&filter-like-name=bob
     https://example.com/api/xml?action=principal-list&group-id=624523   &filter-is-member=true&filter-like-name=bob
     https://example.com/api/xml?action=principal-list&group-id=624523 
             &filter-is-member=true&filter-like-name=bob
  2. 応答から principal 要素を解析します。応答が成功すると次のようになります。

    <principal-list>
    <principal principal-id=&quot;624660&quot; account-id=&quot;624520&quot; type=&quot;user&quot;
      has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>
    <name>Bill Jones</name>
    <login>bjones@acme.com</login>
    <email>bjones@acme.com</email>
    <is-member>true</is-member>
    </principal>
    </principal-list>
     <principal-list>   <principal principal-id=&quot;624660&quot; account-id=&quot;624520&quot; type=&quot;user&quot;   has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>   <name>Bill Jones</name>   <login>bjones@acme.com</login>   <email>bjones@acme.com</email>   <is-member>true</is-member>   </principal>  </principal-list>
     <principal-list> 
         <principal principal-id=&quot;624660&quot; account-id=&quot;624520&quot; type=&quot;user&quot;  
                 has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
             <name>Bill Jones</name>  
             <login>bjones@acme.com</login>  
             <email>bjones@acme.com</email>  
             <is-member>true</is-member>  
         </principal> 
     </principal-list>

    ユーザーがグループに属していない場合、principal-list 要素は空になります。

    <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>
    <results>
    <status code=&quot;ok&quot; />
    <principal-list />
    </results>
     <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>  <results>   <status code=&quot;ok&quot; />   <principal-list />  </results>
     <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>  
     <results> 
         <status code=&quot;ok&quot; />  
         <principal-list />  
     </results>

グループに属するユーザーの確認

  1. グループのプリンシパル ID を取得するには、フィルターを指定して principal-list を呼び出します。

     https://example.com/api/xml?action=principal-list&filter-type=group
      &filter-name=developers
     https://example.com/api/xml?action=principal-list&filter-type=group   &filter-name=developers
     https://example.com/api/xml?action=principal-list&filter-type=group 
             &filter-name=developers

    filter-type および filter-name を指定すると、principal-list は一意の一致を返します。

  2. principal-id の応答を解析します。

    <principal principal-id=&quot;2007105030&quot; account-id=&quot;624520&quot;
      type=&quot;group&quot; has-children=&quot;true&quot; is-primary=&quot;false&quot;
      is-hidden=&quot;false&quot;>
    <name>developers</name>
    <login>developers</login>
    <is-member>false</is-member>
    </principal>
     <principal principal-id=&quot;2007105030&quot; account-id=&quot;624520&quot;   type=&quot;group&quot; has-children=&quot;true&quot; is-primary=&quot;false&quot;   is-hidden=&quot;false&quot;>   <name>developers</name>   <login>developers</login>   <is-member>false</is-member>  </principal>
     <principal principal-id=&quot;2007105030&quot; account-id=&quot;624520&quot;  
             type=&quot;group&quot; has-children=&quot;true&quot; is-primary=&quot;false&quot;  
             is-hidden=&quot;false&quot;> 
         <name>developers</name>  
         <login>developers</login>  
         <is-member>false</is-member>  
     </principal>
  3. group-id としてプリンシパル ID および filter-is-member=true を指定して、principal-list を再度呼び出します。

     https://example.com/api/xml?action=principal-list&group-id=2007105030
      &filter-is-member=true
     https://example.com/api/xml?action=principal-list&group-id=2007105030   &filter-is-member=true
     https://example.com/api/xml?action=principal-list&group-id=2007105030 
             &filter-is-member=true
  4. principal 要素の応答を解析します。

    <principal principal-id=&quot;5698354&quot; account-id=&quot;624520&quot; type=&quot;group&quot;
      has-children=&quot;true&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>
    <name>Bob Jones</name>
    <login>bobjones@acme.com</login>
    <is-member>true</is-member>
    </principal>
     <principal principal-id=&quot;5698354&quot; account-id=&quot;624520&quot; type=&quot;group&quot;   has-children=&quot;true&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>   <name>Bob Jones</name>   <login>bobjones@acme.com</login>   <is-member>true</is-member>  </principal>
     <principal principal-id=&quot;5698354&quot; account-id=&quot;624520&quot; type=&quot;group&quot;  
                 has-children=&quot;true&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>Bob Jones</name>  
         <login>bobjones@acme.com</login>  
         <is-member>true</is-member>  
     </principal>

ユーザーが属する全グループの一覧表示

  1. ユーザーの principal-id および filter-is-member=true を指定して、principal-list を呼び出します。

     https://example.com/api/xml?action=principal-list
      &principal-id=2006258745&filter-is-member=true
     https://example.com/api/xml?action=principal-list   &principal-id=2006258745&filter-is-member=true
     https://example.com/api/xml?action=principal-list 
         &principal-id=2006258745&filter-is-member=true
  2. principal 要素の応答を解析します。

    <principal principal-id=&quot;5698354&quot; account-id=&quot;624520&quot; type=&quot;group&quot;
      has-children=&quot;true&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>
    <name>Bob Jones</name>
    <login>bobjones@acme.com</login>
    <is-member>true</is-member>
    </principal>
     <principal principal-id=&quot;5698354&quot; account-id=&quot;624520&quot; type=&quot;group&quot;   has-children=&quot;true&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;>   <name>Bob Jones</name>   <login>bobjones@acme.com</login>   <is-member>true</is-member>  </principal>
     <principal principal-id=&quot;5698354&quot; account-id=&quot;624520&quot; type=&quot;group&quot;  
                 has-children=&quot;true&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>Bob Jones</name>  
         <login>bobjones@acme.com</login>  
         <is-member>true</is-member>  
     </principal>

SOC の検索

Adobe Connect 上のオブジェクトはすべて、共有可能なコンテンツオブジェクト(SCO)です。共有可能という言葉は、コンテンツがコースやカリキュラムに結合され、それらの間で共有される、学習管理システムに由来しています。

サーバー上で、コースやカリキュラムに他のコンテンツオブジェクトを組み合わせて、SCO を任意のコンテンツオブジェクトにすることができます。コース、カリキュラム、プレゼンテーションおよび他のコンテンツタイプが SCO となります。会議、イベント、フォルダー、ツリー、リンク、グラフィックファイルやその他のあらゆるオブジェクトも SCO です。

各 SCO には、SCO ID と呼ばれる一意の整数識別子があります。SCO ID はサーバー全体で一意になっています。また、Adobe Connect がホストするアカウントでは、SCO ID はすべてのアカウント全体で一意になっています。

各 SCO には、コンテンツコースおよび会議などのタイプも設定されています。SCO ID およびタイプの値は、SCO 情報の応答や他のアクションで確認できます。

<sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot; folder-id=&quot;2006258747&quot;
  icon=&quot;producer&quot; lang=&quot;en&quot; max-retries=&quot;&quot; sco-id=&quot;2006334909&quot;
  source-sco-id=&quot;&quot; type=&quot;content&quot; version=&quot;1&quot;>
 <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot; folder-id=&quot;2006258747&quot;   icon=&quot;producer&quot; lang=&quot;en&quot; max-retries=&quot;&quot; sco-id=&quot;2006334909&quot;   source-sco-id=&quot;&quot; type=&quot;content&quot; version=&quot;1&quot;>
 <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot; folder-id=&quot;2006258747&quot; 
         icon=&quot;producer&quot; lang=&quot;en&quot; max-retries=&quot;&quot; sco-id=&quot;2006334909&quot; 
         source-sco-id=&quot;&quot; type=&quot;content&quot; version=&quot;1&quot;>

SCO の特徴

様々な呼び出しの XML 応答に関して、SCO にはとても多くの特徴があります。

  • SCO の識別子は、一部のアクションでは SCO ID と呼ばれますが、他のアクションではフォルダー ID または ACL ID と呼ばれたり、別の名前で呼ばれたりすることもあります。とは言え、それらは同じ一意の ID になります。

  • 各 SCO には、ユーザーやグループの様々なプリンシパルがアクセスできます。アクセスコントロールリスト(ACL)で、SCO にアクセスできる特定のプリンシパルを定義します。

  • 各 SCO には、ドメイン名(http://example.com など)と URL パス(/f2006123456/ など)の 2 つの部分を含む一意の URL があります。これらを連結させて、SCO にアクセスする完全な URL を形成することができます。

  • 各 SCO には、フォルダー階層のどこにあるかを示すナビゲーションパスがあります。

  • 各 SCO には、アクセスできるプリンシパルごとに権限が定義されています。

  • 一部の SCO には、説明フィールドがあり、SCO に関する情報を提供するテキスト文字列を含んでいます。

多くの場合、SCO の ID またはそれに関する情報を探す必要があります。SCO は特定のフォルダー階層に配置され、フォルダーには、上位にあるか、共有コンテンツまたはテンプレートを含むか、ユーザーコンテンツとテンプレートを保持するかをなどを示す名前が付けられます。

sco-shortcuts を呼び出すと、フォルダーのリストが返されます。フォルダーに様々なタイプがあることに注目します。

<?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>
<results>
<status code=&quot;ok&quot; />
<shortcuts>
<sco tree-id=&quot;624530&quot; sco-id=&quot;2006258751&quot; type=&quot;my-meeting-templates&quot;>
<domain-name>http://example.com</domain-name>
</sco>
<sco tree-id=&quot;624530&quot; sco-id=&quot;2006258750&quot; type=&quot;my-meetings&quot;>
<domain-name>http://example.com</domain-name>
</sco>
<sco tree-id=&quot;624529&quot; sco-id=&quot;624529&quot; type=&quot;meetings&quot;>
<domain-name>http://example.com</domain-name>
</sco>
<sco tree-id=&quot;624530&quot; sco-id=&quot;624530&quot; type=&quot;user-meetings&quot;>
<domain-name>http://example.com</domain-name>
</sco>
  ...
</shortcuts>
</results>
 <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>  <results>   <status code=&quot;ok&quot; />   <shortcuts>   <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258751&quot; type=&quot;my-meeting-templates&quot;>   <domain-name>http://example.com</domain-name>   </sco>   <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258750&quot; type=&quot;my-meetings&quot;>   <domain-name>http://example.com</domain-name>   </sco>   <sco tree-id=&quot;624529&quot; sco-id=&quot;624529&quot; type=&quot;meetings&quot;>   <domain-name>http://example.com</domain-name>   </sco>   <sco tree-id=&quot;624530&quot; sco-id=&quot;624530&quot; type=&quot;user-meetings&quot;>   <domain-name>http://example.com</domain-name>   </sco>   ...   </shortcuts>  </results>
 <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>  
 <results> 
     <status code=&quot;ok&quot; />  
     <shortcuts> 
         <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258751&quot; type=&quot;my-meeting-templates&quot;> 
             <domain-name>http://example.com</domain-name>  
         </sco> 
         <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258750&quot; type=&quot;my-meetings&quot;> 
             <domain-name>http://example.com</domain-name>  
         </sco> 
         <sco tree-id=&quot;624529&quot; sco-id=&quot;624529&quot; type=&quot;meetings&quot;> 
             <domain-name>http://example.com</domain-name>  
         </sco> 
         <sco tree-id=&quot;624530&quot; sco-id=&quot;624530&quot; type=&quot;user-meetings&quot;> 
             <domain-name>http://example.com</domain-name>  
         </sco> 
         ... 
     </shortcuts> 
 </results>

この例に示されているフォルダーは、会議用のものですが、他のタイプの SCO 用のフォルダーも同様のパターンになっています。次のように、各フォルダータイプには、特定のアクセス権限を含む、特定のタイプのオブジェクトが格納されます。

コンテンツ、コース、会議、イベント、セミナー

これらは、共有会議、共有トレーニングなど共有フォルダーです。Adobe Connect 管理者はこのフォルダーにアクセスできます。管理者は、管理権限を任意のユーザーに割り当てることができますが、フォルダーに関連付けられたビルトイングループのメンバーのみが、フォルダー内に新しいコンテンツまたは会議を作成できます。

ユーザーコンテンツ、ユーザー会議、ユーザーコース、ユーザーイベント

これらのフォルダーには、それぞれその中でコンテンツを作成できるユーザーごとのフォルダーが含まれています(例えば、会議の主催者またはトレーニング開発者ごとに 1 つのフォルダー)。

マイコース、マイイベント、マイ会議、マイ会議テンプレート、マイコンテンツ

ユーザーは、これらのフォルダーに独自のコンテンツを作成して、コンテンツに対する管理権限を持ちます。例えば、会議の主催者はマイ会議フォルダーで会議を作成し、それらの会議の管理権限を持ちます。

共有会議テンプレート

このフォルダーは、共有会議フォルダー内にあります。会議テンプレートを含み、共有会議の権限を引き継ぎます。

任意のフォルダーのコンテンツを一覧表示して、特定の SCO に関する情報を取得できます。SCO を検索する必要があるが SCO ID がないという場合、SCO ショートカットおよび SCO 拡張コンテンツを指定して、各フォルダーを検索します。SCO 検索は特定の種類の SCO しか返さないので、使用しません。

SCO ID がわからない場合の SCO の検索

  1. sco-shortcuts を呼び出し、Adobe Connect のルートフォルダーのリストを取得します。

     https://example.com/api/xml?action=sco-shortcuts
     https://example.com/api/xml?action=sco-shortcuts
     https://example.com/api/xml?action=sco-shortcuts
  2. SCO を含むと思われるルートフォルダーのタイプの応答を解析します(例えば、ユーザーが作成したコースであればマイコース)。

  3. sco-id の結果の sco 要素を解析します。

    <sco tree-id=&quot;4930295&quot; sco-id=&quot;2006258748&quot; type=&quot;my-courses&quot;>
    <domain-name>http://example.com</domain-name>
    </sco>
     <sco tree-id=&quot;4930295&quot; sco-id=&quot;2006258748&quot; type=&quot;my-courses&quot;>   <domain-name>http://example.com</domain-name>  </sco>
     <sco tree-id=&quot;4930295&quot; sco-id=&quot;2006258748&quot; type=&quot;my-courses&quot;> 
         <domain-name>http://example.com</domain-name>  
     </sco>
  4. sco-expanded-contents を呼び出し、フォルダーのコンテンツを表示して、可能であれば完全一致フィルターを追加します。

     https://example.com/api/xml?action=sco-expanded-contents
      &sco-id=2006258748&filter-name=All About Web Communities
     https://example.com/api/xml?action=sco-expanded-contents   &sco-id=2006258748&filter-name=All About Web Communities
     https://example.com/api/xml?action=sco-expanded-contents 
         &sco-id=2006258748&filter-name=All About Web Communities

    フィルターには複数の選択肢があります。

    • SCO の名前または URL がわかっている場合、name または url-pathfilter-namefilter-url-path など)の完全一致フィルター

    • date-begindate-created または date-modified などが 1 つでもわかっている場合、その日付より前か後かを指定する日付フィルター(filter-gt-datefilter-lt-date

    • 正確な SCO 名がわからない場合、部分的な名前フィルター(filter-like-name など)。ただし、このフィルターの使用には、システムパフォーマンスに影響を与える可能性あり

  5. sco-id の応答を解析します。

    <sco depth=&quot;1&quot; sco-id=&quot;2006745671&quot; folder-id=&quot;2006258748&quot; type=&quot;folder&quot;
      icon=&quot;folder&quot; lang=&quot;en&quot; source-sco-id=&quot;2006745669&quot; display-seq=&quot;0&quot;
      source-sco-type=&quot;14&quot;>
    <name>A Day in the Life Resources</name>
    <url-path>/f28435879/</url-path>
    <date-created>2006-06-12T14:47:59.903-07:00</date-created>
    <date-modified>2006-06-12T14:47:59.903-07:00</date-modified>
    </sco>
     <sco depth=&quot;1&quot; sco-id=&quot;2006745671&quot; folder-id=&quot;2006258748&quot; type=&quot;folder&quot;   icon=&quot;folder&quot; lang=&quot;en&quot; source-sco-id=&quot;2006745669&quot; display-seq=&quot;0&quot;   source-sco-type=&quot;14&quot;>   <name>A Day in the Life Resources</name>   <url-path>/f28435879/</url-path>   <date-created>2006-06-12T14:47:59.903-07:00</date-created>   <date-modified>2006-06-12T14:47:59.903-07:00</date-modified>  </sco>
     <sco depth=&quot;1&quot; sco-id=&quot;2006745671&quot; folder-id=&quot;2006258748&quot; type=&quot;folder&quot; 
             icon=&quot;folder&quot; lang=&quot;en&quot; source-sco-id=&quot;2006745669&quot; display-seq=&quot;0&quot; 
             source-sco-type=&quot;14&quot;> 
         <name>A Day in the Life Resources</name>  
         <url-path>/f28435879/</url-path>  
         <date-created>2006-06-12T14:47:59.903-07:00</date-created>  
         <date-modified>2006-06-12T14:47:59.903-07:00</date-modified>  
     </sco>

SCO に関する情報の取得

  1. sco-id を指定して、sco-infoを呼び出します。

     https://example.com/api/xml?action=sco-info&sco-id=2006745669
     https://example.com/api/xml?action=sco-info&sco-id=2006745669
     https://example.com/api/xml?action=sco-info&sco-id=2006745669
  2. nameurl-path またはその他の値の応答を解析します。

    <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot;
      folder-id=&quot;2006258748&quot; icon=&quot;curriculum&quot; lang=&quot;en&quot; max-retries=&quot;&quot;
      sco-id=&quot;2006745669&quot; source-sco-id=&quot;&quot; type=&quot;curriculum&quot; version=&quot;0&quot;>
    <date-begin>2006-06-12T14:45:00.000-07:00</date-begin>
    <date-created>2006-06-12T14:47:59.903-07:00</date-created>
    <date-modified>2006-06-12T14:47:59.903-07:00</date-modified>
    <name>A Day in the Life</name>
    <url-path>/day/</url-path>
    </sco>
     <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot;   folder-id=&quot;2006258748&quot; icon=&quot;curriculum&quot; lang=&quot;en&quot; max-retries=&quot;&quot;   sco-id=&quot;2006745669&quot; source-sco-id=&quot;&quot; type=&quot;curriculum&quot; version=&quot;0&quot;>   <date-begin>2006-06-12T14:45:00.000-07:00</date-begin>   <date-created>2006-06-12T14:47:59.903-07:00</date-created>   <date-modified>2006-06-12T14:47:59.903-07:00</date-modified>   <name>A Day in the Life</name>   <url-path>/day/</url-path>  </sco>
     <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot;  
             folder-id=&quot;2006258748&quot; icon=&quot;curriculum&quot; lang=&quot;en&quot; max-retries=&quot;&quot; 
             sco-id=&quot;2006745669&quot; source-sco-id=&quot;&quot; type=&quot;curriculum&quot; version=&quot;0&quot;> 
         <date-begin>2006-06-12T14:45:00.000-07:00</date-begin>  
         <date-created>2006-06-12T14:47:59.903-07:00</date-created>  
         <date-modified>2006-06-12T14:47:59.903-07:00</date-modified>  
         <name>A Day in the Life</name>  
         <url-path>/day/</url-path>  
     </sco>

SCO への URL の構築

  1. sco-shortcuts を呼び出します。

     https://example.com/api/xml?action=sco-shortcuts
     https://example.com/api/xml?action=sco-shortcuts
     https://example.com/api/xml?action=sco-shortcuts
  2. 任意の sco 要素の domain-name 値の応答を解析します。

    <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258750&quot; type=&quot;my-meetings&quot;>
    <domain-name>http://example.com</domain-name>
    </sco>
     <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258750&quot; type=&quot;my-meetings&quot;>   <domain-name>http://example.com</domain-name>  </sco>
     <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258750&quot; type=&quot;my-meetings&quot;> 
         <domain-name>http://example.com</domain-name>  
     </sco>
  3. sco-id を指定して、sco-infoを呼び出します。

     https://example.com/api/xml?action=sco-info&sco-id=2006334909
     https://example.com/api/xml?action=sco-info&sco-id=2006334909
     https://example.com/api/xml?action=sco-info&sco-id=2006334909
  4. url-path の応答を解析します。

    <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot;
      folder-id=&quot;2006258747&quot; icon=&quot;producer&quot; lang=&quot;en&quot;
      max-retries=&quot;&quot; sco-id=&quot;2006334909&quot; source-sco-id=&quot;&quot;
      type=&quot;content&quot; version=&quot;1&quot;>
    <date-created>2006-05-11T12:00:02.000-07:00</date-created>
    <date-modified>2006-05-16T15:22:25.703-07:00</date-modified>
    <name>Test Quiz</name>
    <url-path>/quiz/</url-path>
    <passing-score>10</passing-score>
    <duration>15100.0</duration>
    <section-count>6</section-count>
    </sco>
     <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot;   folder-id=&quot;2006258747&quot; icon=&quot;producer&quot; lang=&quot;en&quot;   max-retries=&quot;&quot; sco-id=&quot;2006334909&quot; source-sco-id=&quot;&quot;   type=&quot;content&quot; version=&quot;1&quot;>   <date-created>2006-05-11T12:00:02.000-07:00</date-created>   <date-modified>2006-05-16T15:22:25.703-07:00</date-modified>   <name>Test Quiz</name>   <url-path>/quiz/</url-path>   <passing-score>10</passing-score>   <duration>15100.0</duration>   <section-count>6</section-count>  </sco>
     <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot;  
             folder-id=&quot;2006258747&quot; icon=&quot;producer&quot; lang=&quot;en&quot;  
             max-retries=&quot;&quot; sco-id=&quot;2006334909&quot; source-sco-id=&quot;&quot;  
             type=&quot;content&quot; version=&quot;1&quot;> 
         <date-created>2006-05-11T12:00:02.000-07:00</date-created>  
         <date-modified>2006-05-16T15:22:25.703-07:00</date-modified>  
         <name>Test Quiz</name>  
         <url-path>/quiz/</url-path>  
         <passing-score>10</passing-score>  
         <duration>15100.0</duration>  
         <section-count>6</section-count>  
     </sco>

    url-path には、先頭と末尾の両方にスラッシュがあります。url-path は、report-my-meetingsreport-my-training、またはそれを返す任意の呼び出しから取得できます。

  5. url-pathdomain-name と連結します。

     http://example.com/f2006258748/
     http://example.com/f2006258748/
     http://example.com/f2006258748/

ファイルのダウンロード

Adobe Connect から、ユーザーのローカルコンピューターに zip ファイルをダウンロードできます。zip ファイルは SCO です。ダウンロードするには、次のような zip ファイルへのダウンロード URL を構築する必要があります。

 http://server-domain/url-path/output/url-path.zip?download=zip
 http://server-domain/url-path/output/url-path.zip?download=zip
 http://server-domain/url-path/output/url-path.zip?download=zip

既にサーバーのドメイン名(example.com など)がわかっていればそれを使用します。そうでない場合、sco-shortcuts を呼び出して取得できます。

サーバーからの zip ファイルのダウンロード

  1. sco-shortcuts を呼び出します。

     https://example.com/api/xml?action=sco-shortcuts
     https://example.com/api/xml?action=sco-shortcuts
     https://example.com/api/xml?action=sco-shortcuts
  2. 応答から domain-name 値を抽出します。

     http://example.com
     http://example.com
     http://example.com
  3. zip ファイルの sco-id を指定して、sco-infoを呼び出します。

     https://example.com/api/xml?action=sco-info&sco-id=2006258747
     https://example.com/api/xml?action=sco-info&sco-id=2006258747
     https://example.com/api/xml?action=sco-info&sco-id=2006258747

    SCO は zip ファイル全体です。

  4. url-path 要素の応答を解析します。

    <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot; folder-id=&quot;624522&quot;
      icon=&quot;folder&quot; lang=&quot;en&quot; max-retries=&quot;&quot; sco-id=&quot;2006258747&quot;
      source-sco-id=&quot;&quot; type=&quot;folder&quot; version=&quot;1&quot;>
    <date-created>2006-04-18T10:21:47.020-07:00</date-created>
    <date-modified>2006-04-18T10:21:47.020-07:00</date-modified>
    <name>joy@acme.com</name>
    <url-path>/f124567890/</url-path>
    </sco>
     <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot; folder-id=&quot;624522&quot;   icon=&quot;folder&quot; lang=&quot;en&quot; max-retries=&quot;&quot; sco-id=&quot;2006258747&quot;   source-sco-id=&quot;&quot; type=&quot;folder&quot; version=&quot;1&quot;>   <date-created>2006-04-18T10:21:47.020-07:00</date-created>   <date-modified>2006-04-18T10:21:47.020-07:00</date-modified>   <name>joy@acme.com</name>   <url-path>/f124567890/</url-path>  </sco>
     <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot; folder-id=&quot;624522&quot; 
             icon=&quot;folder&quot; lang=&quot;en&quot; max-retries=&quot;&quot; sco-id=&quot;2006258747&quot;  
             source-sco-id=&quot;&quot; type=&quot;folder&quot; version=&quot;1&quot;> 
         <date-created>2006-04-18T10:21:47.020-07:00</date-created>  
         <date-modified>2006-04-18T10:21:47.020-07:00</date-modified>  
         <name>joy@acme.com</name>  
         <url-path>/f124567890/</url-path>  
     </sco>
  5. 次のような、ダウンロード URL を構築します。

     https://example.com/quiz/output/quiz.zip?download=zip
     https://example.com/quiz/output/quiz.zip?download=zip
     https://example.com/quiz/output/quiz.zip?download=zip

    .zip を追加する前に、必ず url-path 値から末尾のスラッシュを削除します(したがって、/quiz/.zipではなく /quiz.zip のような値になります)。

権限の確認

権限により、プリンシパルが SCO と相互作用できる方法を定義します。

プリンシパルが特定の SCO に対してどのような権限を持っているかを示す権限マッピングは、アクセスコントロールリストまたは ACL と呼ばれます。ACL は、次の 3 つの情報で構成されています。

  • プリンシパルの ID(principal-id

  • 対象となる SCO、アカウントやプリンシパルの ID。権限呼び出しで、acl-id と呼ばれる。他の呼び出しで、ID は sco-idaccount-idprincipal-id と呼ばれる場合もある

  • permission-id の有効な値の 1 つであり、プリンシパルが持つ権限レベルを示すキーワード

プリンシパルが SCO に対して持っている許可の確認

  1. acl-idprincipal-id の両方を指定して、permissions-info を呼び出します。

     https://example.com/api/xml?action=permissions-info&acl-id=2006334909
      &principal-id=2006258745
     https://example.com/api/xml?action=permissions-info&acl-id=2006334909   &principal-id=2006258745
     https://example.com/api/xml?action=permissions-info&acl-id=2006334909 
         &principal-id=2006258745

    SCO に対する権限を確認する際、acl-idsco-id と同じものになります。acl-id は、principal-idaccount-id として使用することもできます。

  2. permission-id の応答を解析します。

    <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>
    <results>
    <status code=&quot;ok&quot; />
    <permission acl-id=&quot;2007035246&quot; permission-id=&quot;view&quot;
      principal-id=&quot;2006258745&quot; />
    </results>
     <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>  <results>   <status code=&quot;ok&quot; />   <permission acl-id=&quot;2007035246&quot; permission-id=&quot;view&quot;   principal-id=&quot;2006258745&quot; />  </results>
     <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>  
     <results> 
         <status code=&quot;ok&quot; />  
         <permission acl-id=&quot;2007035246&quot; permission-id=&quot;view&quot;  
                 principal-id=&quot;2006258745&quot; />  
     </results>

    プリンシパルが SCO に対する明示的な権限を持っていない場合(つまり、permission-id="" の場合)、SCO の親オブジェクトに対するプリンシパルの権限が適用されます。

SCO に対する、全プリンシパルの権限の確認

  1. acl-id を指定し、principal-id は指定しないで、permissions-info を呼び出します。

     https://example.com/api/xml?action=permissions-info&acl-id=2006293572
     https://example.com/api/xml?action=permissions-info&acl-id=2006293572
     https://example.com/api/xml?action=permissions-info&acl-id=2006293572
  2. principal 要素を反復処理し、それらを解析して permission-id 値を探します。

    <principal principal-id=&quot;2596608&quot; is-primary=&quot;false&quot; type=&quot;user&quot;
      has-children=&quot;false&quot; permission-id=&quot;view&quot;>
    <name>Jay Arnold</name>
    <login>jay@example.com</login>
    </principal>
     <principal principal-id=&quot;2596608&quot; is-primary=&quot;false&quot; type=&quot;user&quot;   has-children=&quot;false&quot; permission-id=&quot;view&quot;>   <name>Jay Arnold</name>   <login>jay@example.com</login>  </principal>
     <principal principal-id=&quot;2596608&quot; is-primary=&quot;false&quot; type=&quot;user&quot;  
                     has-children=&quot;false&quot; permission-id=&quot;view&quot;> 
             <name>Jay Arnold</name>  
             <login>jay@example.com</login>  
     </principal>

    有効な権限の値は permission-id に表示されます。

ヘルプをすばやく簡単に入手

新規ユーザーの場合