„ArchiveOverCLI” változatai közötti eltérés

Innen: KIFÜ Wiki
(Fájl műveletek)
 
(7 közbenső módosítás ugyanattól a szerkesztőtől nincs mutatva)
4. sor: 4. sor:
  
 
A használathoz szükséges ''token'' a webes felületen a [https://archiver.niif.hu/hu/archiver/token ''Token''] fül alatt érhető el.
 
A használathoz szükséges ''token'' a webes felületen a [https://archiver.niif.hu/hu/archiver/token ''Token''] fül alatt érhető el.
 +
 +
=Funkcionalitások kivonatolt segédlete:=
 +
 +
==Szalag műveletek==
 +
* útvonal: '''<big>/tape</big>'''
 +
** ''<big>GET</big>'' - lekérdezhető az elérhető szalagok azonosítói
 +
*** paraméterek: -
 +
*** OPCIONÁLIS paraméterek:
 +
**** '''tape_id'''  - amennyiben csak egy szalag adatai szeretnénk lekérdezni
 +
*** válasz:
 +
**** Egy JSON, mely tartalmazza az elérhető szalagok azonosítóit és neveit.<br />
 +
<pre>          [
 +
            { "id" : <szalag id>,
 +
              "name" : "szalag neve"
 +
            },
 +
            ...
 +
          ]
 +
</pre>
 +
::* példa:<br><pre>    curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/tape/'</pre><br>
 +
::<hr /><br />
 +
:* ''<big>POST</big>'' - szalag nevét lehet beállítani
 +
::* paraméterek:
 +
:::* '''tape_id''' - szalag azonosítója
 +
:::* '''name'''    - beállítandó név
 +
::* válasz: -
 +
::* példa:<br><pre>    curl --header "token:<TOKEN>" https://api.archiver.niif.hu/tape/ --data "tape_id=<ID>&name=<NAME>"</pre><br>
 +
::<hr /><br />
 +
:* ''<big>DELETE</big>'' - szalag tartalmának törlése
 +
::* paraméterek:
 +
:::* '''tape_id''' - melyik szalag tartalmát szeretnénk törölni
 +
::* válasz: -
 +
::* példa:<br><pre>    curl --header "token:<TOKEN>" -X DELETE 'https://api.archiver.niif.hu/tape/?tape_id=<ID>'</pre><br>
 +
 +
==Feladatokkal kapcsolatos műveletek==
 +
* útvonal: '''<big>/archive</big>'''
 +
** ''<big>POST</big>'' - új archiválási feladata beküldése
 +
*** paraméterek:
 +
**** '''tape_id''' - szalag azonosító
 +
**** '''url'''    - archiválandó forrás elérhetősége <br /> Amennyiben az url tartalmaz '&'-t, azt '%26'-val kell helyettesíteni.
 +
*** OPCIONÁLIS paraméterek:
 +
**** '''name'''    - átnevezés
 +
**** '''email'''  - értesítendő email címe
 +
**** '''level'''  - értesítési szint<br />                    szintek:
 +
***** 1 - csak a sikeres archiválásról kérek értesítés
 +
***** 2 - sikeres és hibás archiválásról is kérek értesítést
 +
*** válasz:
 +
**** A sikeresen beküldött feladat ID-ja.
 +
*** példa:
 +
<pre>        curl --header "token:<TOKEN>" https://api.archiver.niif.hu/archive/ --data "tape_id=<ID>&url=<URL>"
 +
        curl --header "token:<TOKEN>" https://api.archiver.niif.hu/archive/ --data "tape_id=<ID>&url=<URL>&name=<NAME>"</pre>
 +
::<hr /><br />
 +
:* ''<big>GET</big>'' - lekérdezhető a beküldött feladat állapota
 +
::* paraméterek:
 +
:::* '''job_id''' - lekérdezendő feladat ID-je
 +
::* válasz:
 +
:::* Egy JSON, mely tartalmazza a feladat és az archivált fájl(ok) státuszát.<br>          A "directories" elem csak hibás könyvtár létrehozáskor jelenik meg a JSON-ban.
 +
<pre>          { "state":"feladat állapota",
 +
            "directories" : [
 +
                              { "dir":"könyvtár neve",
 +
                                "state":"error",
 +
                                "error_message":"HTTP error: 500 \"Internal Server Error\""
 +
                              },
 +
                              ...
 +
                            ],
 +
            "files" : [
 +
                        { "file":"fájl neve elérési úttal",
 +
                          "state":"complete",
 +
                          "checksum":"c9b96a05482a91970309f8087b3ac9c6",
 +
                          "ts":"2015-04-14 15:53:01"
 +
                        },
 +
                        ...
 +
                      ]
 +
          } </pre>
 +
::* példa:<br> <pre>        curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/archive/?job_id=<ID>'</pre>
 +
<br />
 +
::<hr /><br />
 +
* útvonal: '''<big>/restore</big>'''
 +
** ''<big>POST</big>'' - új visszaállítási feladata beküldése
 +
*** paraméterek:
 +
**** '''tape_id''' - szalag azonosító
 +
**** '''url'''    - visszaállítás helye<br /> Amennyiben az url tartalmaz '&'-t, azt '%26'-val kell helyettesíteni.
 +
**** '''file'''    - visszaállítandó fájl, több verzió esetén a legutolsó változat kerül visszaállításra
 +
*** OPCIONÁLIS paraméterek:
 +
**** '''name'''    - átnevezés
 +
**** '''email'''  - értesítendő email címe
 +
**** '''level'''  - értesítési szint<br /> szintek:
 +
***** 1 - csak a sikeres visszaállításról kérek értesítés
 +
***** 2 - sikeres és hibás visszaállításról is kérek értesítést
 +
*** válasz:
 +
**** A sikeresen beküldött feladat ID-ja.
 +
*** példa:
 +
<pre>        curl --header "token:<TOKEN>" https://api.archiver.niif.hu/restore/ --data "tape_id=<ID>&url=<URL>&file=<FILE>"
 +
        curl --header "token:<TOKEN>" https://api.archiver.niif.hu/restore/ --data "tape_id=<ID>&url=<URL>&file=<FILE>&name=<NAME>"</pre>
 +
::<hr /><br />
 +
:* ''<big>GET</big>'' - lekérdezhető a beküldött feladat állapota
 +
::* paraméterek:
 +
:::* '''job_id''' - lekérdezendő feladat ID-je
 +
::* válasz:
 +
:::* Egy JSON, mely tartalmazza a feladat és a visszaállított fájl(ok) státuszát.<br />          A "directories" elem csak hibás könyvtár létrehozáskor jelenik meg a JSON-ban.
 +
<pre>          { "state":"feladat állapota",
 +
            "directories" : [
 +
                              { "dir":"könyvtár neve",
 +
                                "state":"error",
 +
                                "error_message":"HTTP error: 500 \"Internal Server Error\""
 +
                              },
 +
                              ...
 +
                            ],
 +
            "files" : [
 +
                        { "file":"fájl neve elérési úttal",
 +
                          "state":"complete",
 +
                          "checksum":"c9b96a05482a91970309f8087b3ac9c6",
 +
                          "ts":"2015-04-14 15:53:01"
 +
                        },
 +
                        ...
 +
                      ]
 +
          }</pre>
 +
::* példa:<br /> <pre>        curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/restore/?job_id=<ID>'</pre>
 +
<br />
 +
 +
==Fájl műveletek==
 +
* útvonal: '''<big>/file</big>'''
 +
** ''<big>GET</big>'' - lekérdezhető a szalagon található fájlok listája
 +
*** paraméterek:
 +
**** '''tape_id''' - szalag azonosító
 +
*** OPCIONÁLIS paraméterek:
 +
**** '''path'''    - megadható, hogy a szalagon milyen path alatt található fájlokat listázzon csak. <br /> Természetesen a lista tartalmazza a path alatt található alkönyvtárakban lévő fájlokat is.
 +
*** válasz:
 +
**** Egy JSON, mely tartalmazza a szalagon elérhető fájlokat és azok méretét.
 +
<pre>          [
 +
            { "file":"fájl neve elérési úttal",
 +
              "size":"méret bájtban"
 +
            },
 +
            ...
 +
          ]
 +
</pre>
 +
::* példa:
 +
<pre>        curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/file/?tape_id=<ID>'
 +
        curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/file/?tape_id=<ID>&path=<PATH>'</pre>

A lap jelenlegi, 2015. május 7., 11:06-kori változata

Lehetőség van az archiválást nem csak a webes felületen keresztül használni. Erre a célra ki lett alakítva egy RESTAPI interfész, amin keresztül elérhetőek a szükséges funkciók.

Az API használatát segédletekkel megtalálhatod https://api.archiver.niif.hu/?help oldalon.

A használathoz szükséges token a webes felületen a Token fül alatt érhető el.

Funkcionalitások kivonatolt segédlete:

Szalag műveletek

  • útvonal: /tape
    • GET - lekérdezhető az elérhető szalagok azonosítói
      • paraméterek: -
      • OPCIONÁLIS paraméterek:
        • tape_id - amennyiben csak egy szalag adatai szeretnénk lekérdezni
      • válasz:
        • Egy JSON, mely tartalmazza az elérhető szalagok azonosítóit és neveit.
          [
            { "id" : <szalag id>,
              "name" : "szalag neve"
            },
            ...
          ]
  • példa:
         curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/tape/'



  • POST - szalag nevét lehet beállítani
  • paraméterek:
  • tape_id - szalag azonosítója
  • name - beállítandó név
  • válasz: -
  • példa:
         curl --header "token:<TOKEN>" https://api.archiver.niif.hu/tape/ --data "tape_id=<ID>&name=<NAME>"



  • DELETE - szalag tartalmának törlése
  • paraméterek:
  • tape_id - melyik szalag tartalmát szeretnénk törölni
  • válasz: -
  • példa:
         curl --header "token:<TOKEN>" -X DELETE 'https://api.archiver.niif.hu/tape/?tape_id=<ID>'

Feladatokkal kapcsolatos műveletek

  • útvonal: /archive
    • POST - új archiválási feladata beküldése
      • paraméterek:
        • tape_id - szalag azonosító
        • url - archiválandó forrás elérhetősége
          Amennyiben az url tartalmaz '&'-t, azt '%26'-val kell helyettesíteni.
      • OPCIONÁLIS paraméterek:
        • name - átnevezés
        • email - értesítendő email címe
        • level - értesítési szint
          szintek:
          • 1 - csak a sikeres archiválásról kérek értesítés
          • 2 - sikeres és hibás archiválásról is kérek értesítést
      • válasz:
        • A sikeresen beküldött feladat ID-ja.
      • példa:
         curl --header "token:<TOKEN>" https://api.archiver.niif.hu/archive/ --data "tape_id=<ID>&url=<URL>"
         curl --header "token:<TOKEN>" https://api.archiver.niif.hu/archive/ --data "tape_id=<ID>&url=<URL>&name=<NAME>"


  • GET - lekérdezhető a beküldött feladat állapota
  • paraméterek:
  • job_id - lekérdezendő feladat ID-je
  • válasz:
  • Egy JSON, mely tartalmazza a feladat és az archivált fájl(ok) státuszát.
    A "directories" elem csak hibás könyvtár létrehozáskor jelenik meg a JSON-ban.
          { "state":"feladat állapota",
            "directories" : [
                              { "dir":"könyvtár neve",
                                "state":"error",
                                "error_message":"HTTP error: 500 \"Internal Server Error\""
                              },
                              ...
                            ],
            "files" : [
                        { "file":"fájl neve elérési úttal",
                          "state":"complete",
                          "checksum":"c9b96a05482a91970309f8087b3ac9c6",
                          "ts":"2015-04-14 15:53:01"
                        },
                        ...
                      ]
          } 
  • példa:
             curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/archive/?job_id=<ID>'




  • útvonal: /restore
    • POST - új visszaállítási feladata beküldése
      • paraméterek:
        • tape_id - szalag azonosító
        • url - visszaállítás helye
          Amennyiben az url tartalmaz '&'-t, azt '%26'-val kell helyettesíteni.
        • file - visszaállítandó fájl, több verzió esetén a legutolsó változat kerül visszaállításra
      • OPCIONÁLIS paraméterek:
        • name - átnevezés
        • email - értesítendő email címe
        • level - értesítési szint
          szintek:
          • 1 - csak a sikeres visszaállításról kérek értesítés
          • 2 - sikeres és hibás visszaállításról is kérek értesítést
      • válasz:
        • A sikeresen beküldött feladat ID-ja.
      • példa:
         curl --header "token:<TOKEN>" https://api.archiver.niif.hu/restore/ --data "tape_id=<ID>&url=<URL>&file=<FILE>"
         curl --header "token:<TOKEN>" https://api.archiver.niif.hu/restore/ --data "tape_id=<ID>&url=<URL>&file=<FILE>&name=<NAME>"


  • GET - lekérdezhető a beküldött feladat állapota
  • paraméterek:
  • job_id - lekérdezendő feladat ID-je
  • válasz:
  • Egy JSON, mely tartalmazza a feladat és a visszaállított fájl(ok) státuszát.
    A "directories" elem csak hibás könyvtár létrehozáskor jelenik meg a JSON-ban.
          { "state":"feladat állapota",
            "directories" : [
                              { "dir":"könyvtár neve",
                                "state":"error",
                                "error_message":"HTTP error: 500 \"Internal Server Error\""
                              },
                              ...
                            ],
            "files" : [
                        { "file":"fájl neve elérési úttal",
                          "state":"complete",
                          "checksum":"c9b96a05482a91970309f8087b3ac9c6",
                          "ts":"2015-04-14 15:53:01"
                        },
                        ...
                      ]
          }
  • példa:
             curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/restore/?job_id=<ID>'


Fájl műveletek

  • útvonal: /file
    • GET - lekérdezhető a szalagon található fájlok listája
      • paraméterek:
        • tape_id - szalag azonosító
      • OPCIONÁLIS paraméterek:
        • path - megadható, hogy a szalagon milyen path alatt található fájlokat listázzon csak.
          Természetesen a lista tartalmazza a path alatt található alkönyvtárakban lévő fájlokat is.
      • válasz:
        • Egy JSON, mely tartalmazza a szalagon elérhető fájlokat és azok méretét.
          [
            { "file":"fájl neve elérési úttal",
              "size":"méret bájtban"
            },
            ...
          ]
  • példa:
         curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/file/?tape_id=<ID>'
         curl --header "token:<TOKEN>" -X GET 'https://api.archiver.niif.hu/file/?tape_id=<ID>&path=<PATH>'