Orbitvu Public Support Site

ダウンロードのリスト

Updated on

Downloads API は特定のアカウントのユーザーの作成したダウンロードファイルのリストを返します:

URL: https://orbitvu.co/api/v1/downloads [.json|.xml]

メソッド: GET

{
    "count": 2,
    "next": null,
    "previous": null,
    "results": [
        {
            "created_at": "2018-08-08T14:54:57",
            "file_name": "kNYSKJPWkwqmyx66Dug3PU.zip",
            "complete": true,
            "viewer": "ORBITVU VIEWER My360",
            "presentations": [
                "xyzxyzxyzxyzxyzXYZ1233"
            ],
            "url": "https://orbitvu.co/api/v1/downloads/1",
            "download_url": "https://orbitvu.co/api/v1/downloads/1/download",
            "user_email": "[email protected]",
            "user_url": "https://orbitvu.co/api/v1/account/users/1"
        },
        {
            "created_at": "2018-08-08T11:44:30",
            "file_name": "jqYpnFNsjKuok22XGrFx4G.zip",
            "complete": true,
            "viewer": "ORBITVU VIEWER Free360",
            "presentations": [
                "xyzxyzxyzxyzxyzXYZ1234",
                "xyzxyzxyzxyzxyzXYZ1235",
                "xyzxyzxyzxyzxyzXYZ1236",
                "xyzxyzxyzxyzxyzXYZ1237"
            ],
            "url": "https://orbitvu.co/api/v1/downloads/2",
            "download_url": "https://orbitvu.co/api/v1/downloads/2/download",
            "user_email": "[email protected]",
            "user_url": "https://orbitvu.co/api/v1/account/users/2"
        }]
}
Click to copy

検索(完全一致)
完了ステータスあるいはプレゼンテーションのUIDで検索 :complete, uid

# match downloads that are completed
https://orbitvu.co/api/v1/downloads.json?complete=true

# match downloads that are not yet completed
https://orbitvu.co/api/v1/downloads.json?complete=false

# match downloads containing presentation with uid xyzxyzxyzxyzxyzXYZ1235
https://orbitvu.co/api/v1/downloads.json?uid=xyzxyzxyzxyzxyzXYZ1235
Click to copy

並び替え
作成日時、完了ステータスによる並び替え:created_at, complete

# ascending
https://orbitvu.co/api/v1/downloads/?ordering=created_at
https://orbitvu.co/api/v1/downloads/?ordering=complete

# descending
https://orbitvu.co/api/v1/downoads/?ordering=-created_at
https://orbitvu.co/api/v1/downloads/?ordering=-complete
Click to copy

ダウンロードの新規作成

新しいダウンロードオブジェクトの初期化処理を行います。ダウンロードオブジェクトはプレゼンテーションファイル(複数)、Orbitvu Viewer、そしてHTMLファイルで構成されております。

URL: https://orbitvu.co/api/v1/downloads [.json|.xml]

メソッド:POST

パラメーター:

  • viewer_license_id - 必須:プレゼンテーション(複数)と共にダウンロードされるOrbitvu Viewerのid(viewers API エンドポイントから取得可能)
  • presentation_ids -  必須: ダウンロードされるプレゼンテーションのid(複数)
  • format_flat - 1 もしくは 0:アーカイブ方式
  • extra_emails - ダウンロードリンクを受け取るメールアドレスのリスト(カンマ区切り)

返される値:

id - ダウンロードid

message - メッセージ内容

status - OK | ERROR


サンプルコード(Python):

import requests
requests.post(
    'https://orbitvu.co/api/v1/downloads.json',
    data={'viewer_license_id': 1, 'presentation_ids': [1, 2]},
    headers={'Authorization': 'token xxxxxxxxxxxxxxxxxxxx'}
)
Click to copy

サンプルコード(PHP):

<?php
define("API_KEY", "YOUR API KEY"); 
function callApi($request, $params = [], $method = 'get', $data = "") {
    $request = $request.".json"; //set the json mode always
    
    /* Set the access token */
    $header = array();
    $header[] = "Authorization: Token ".API_KEY;
    if (is_array($params) && $params) {
        $request .= "?".http_build_query($params);
    }
    $c = curl_init();
    curl_setopt($c, CURLOPT_SSL_VERIFYPEER, true);
    curl_setopt($c, CURLOPT_URL, $request);
    curl_setopt($c, CURLOPT_HTTPHEADER, $header);
    curl_setopt($c, CURLOPT_CONNECTTIMEOUT, 10);
    curl_setopt($c, CURLOPT_TIMEOUT, 20);
    curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
    if ('post' == strtolower($method)) {
        curl_setopt($c, CURLOPT_POST, strlen($data));
        curl_setopt($c, CURLOPT_POSTFIELDS, $data);
    }
    $response = curl_exec($c);
    return json_decode($response, true); 
}


/******************************/ 
/* SAMPLE REQUESTS TO THE API */
/******************************/
// GET PRESENTATIONS LIST AND LIMIT RESULT TO THE 5 AND SORT THEM BY SKU ASCENDING 
$presentations = callApi("https://orbitvu.co/api/v1/presentations", ['page_size' => 5, 'ordering' => 'sku']); 

// GET VIEWER LICENSES
$viewerLicenses = callApi("https://orbitvu.co/api/v1/account/viewers");
if ($viewerLicenses &amp;&amp; $presentations['results']) {
    // choose first presentation to download
    $prToDownload = $presentations['results'][1]; 
    // choose another presentation to download
    $prToDownload2 = $presentations['results'][4]; 
    // choose some viewer license
    $vLicense = $viewerLicenses[0];  
    // set request data
    $data =  "viewer_license_id=".$vLicense['id']."&amp;presentation_ids=".$prToDownload['id']."&amp;presentation_ids=".$prToDownload2['id'];

    // generate downloads
    $download = callApi("https://orbitvu.co/api/v1/downloads", [], 'post', $data); 
}
Click to copy

ダウンロードの詳細

特定のダウンロードに関する詳細を返します

URL: https://orbitvu.co/api/v1/downloads/<id>/ [.json|.xml]

メソッド:GET

結果の例:

{
    "created_at": "2018-08-08T11:44:30",
    "file_name": "jqYpnFNsjKuok22XGrFx4G.zip",
    "complete": true,
    "viewer": "ORBITVU VIEWER Free360",
    "presentations": [
        "xyzxyzxyzxyzxyzXYZ1234",
        "xyzxyzxyzxyzxyzXYZ1235",
        "xyzxyzxyzxyzxyzXYZ1236",
        "xyzxyzxyzxyzxyzXYZ1237"
    ],
    "url": "https://orbitvu.co/api/v1/downloads/2",
    "download_url": "https://orbitvu.co/api/v1/downloads/2/download",
    "user_email": "[email protected]",
    "user_url": "https://orbitvu.co/api/v1/account/users/2"
}
Click to copy

ダウンロードの削除

idによって指定された特定のダウンロードオブジェクトを削除します

URL: https://orbitvu.co/api/v1/downloads/<id>/ [.json|.xml]

メソッド:DELETE

返却コード:204 (no content)

サンプルコード(Python):

import requests
requests.delete('https://orbitvu.co/api/v1/downloads/1/.json', headers={'Authorization': 'token xxxxxxxxxxxxxxxxxxxxxx'})
Click to copy
Previous Article アカウントの詳細
Still Need Help? Contact Us