Pelle API v10 » Historique » Version 34
« Précédent -
Version 34/45
(diff) -
Suivant » -
Version actuelle
Nicolas BERTRAND, 06/03/2017 15:58
Pelle API v10¶
This document describes the REST API interface to control distribution of DCPs for Indé-CP .
The distribution is managed via the tuco:http://tuco.tdcpb.org
Basically this API provides services
API Base URL¶
All URLs in the reference documentation use the following base URL:
https://tuco.tdcpb.org/pelle/v1.0
Authentication¶
HTTP requests to the REST API are protected with HTTP Basic authentication and token.
To get the token URL is
http://tuco.tdcpb.org/api/token
Example:
curl -u <username>:<pass> -H "Content-Type: application/json" -X GET http://tuco.tdcpb.org/api/token
Response:
{ "token": "eyJhbGciOiJIUzI1NiIsImV4cCI6MTQ4ODgxMjc3NSwiaWF0IjoxNDg4ODEyMTc1fQ.eyJpZCI6MTk4fQ._EOcOx5gE311nbwPsstdEaoz1o3_KzUc9AY_yNewY6Q" } Use token: <pre> curl -u eyJhbGciOiJIUzI1NiIsImV4cCI6MTQ4ODgxMjc3NSwiaWF0IjoxNDg4ODEyMTc1fQ.eyJpZCI6MTk4fQ._EOcOx5gE311nbwPsstdEaoz1o3_KzUc9AY_yNewY6Q:unused -H "Content-Type: application/json" -X GET https://tuco.tdcpb.org/pelle/v1.0/exhibitors </pre> h2. Exhibitors Resources h3. Exhibitor Properties |_. NAME |_. DESCRIPTION | | cncid | Unique exhibitor authorization ID given by CNC | | id | Unique ID given by tuco (internal usage) | | name | Theater name | | address | Exhibitor address | | city | Exhibitor city | | contact | Person to contact | h3. List all exhibitors <pre> GET exhibitors </pre> Output sample: <pre> { exhibitors:[ { 'cncid': '123456', 'name': 'UN CINEMA' 'city' : LA VILLE }, .... ] } </pre> h3. Retrieve a exhibitor <pre> GET exhibitors/<cncid> </pre> Output sample: <pre> { exhibitors: { 'cncid': '123456', 'name': 'UN CINEMA' 'city' : LA VILLE }, } </pre> h3. Retrieve a exhibitor current downloads <pre> GET exhibitors/<cncid>/current_downloads </pre> Output sample: <pre> </pre> h2. Distributor Resources h3. Distributor Properties |_. NAME |_. DESCRIPTION | | cncid | Unique ID given by CNC | | id | Unique ID given by tuco (internal usage) | | name | Distributor name | h3. List all distributors <pre> GET distributors </pre> Output sample: <pre> { "distributors": [ { "cncid": 1261, "distributorid": 47, "name": "LES FILMS DU LOSANGE" }, { "cncid": 3133, "distributorid": 41, "name": "URBAN DISTRIBUTION" }, ... ] } </pre> h3. Retrieve a distributor <pre> GET distributors/<cncid> </pre> Output sample <pre> { "distributor": { "cncid": 1261, "distributorid": 47, "name": "LES FILMS DU LOSANGE" } } </pre> h3. List distributor catalog *movies properties* |_. NAME |_. DESCRIPTION | | movieid | Unique ID given to a movie in tuco | | original_title | Orginal movie title name (optional) | | releasedate | First movie release date | | title | Movie title | | dcps | list of DCPs properties (cf DCP properties table) | *DCP properties* |_. NAME |_. DESCRIPTION | | dcpid | Unique ID given to a dcp in tuco | | contentkind | Type of content( FTR, TLR, SHR) | | name | DCP name | | size | Size of DCP (in bytes) | *command* <pre> GET distributors/<cncid>/movies </pre> Output sample: <pre> { "movies": [ { "dcps": [ { "contentkind": "FTR", "dcpid": 512, "name": "LeFilsDeJoseph_FTR_F_FR-FR_FR_51_2K_LOS_20160219_DGM_IOP_OV", "size": "207208283635" } ], "movieid": 330, "original_title": "", "releasedate": "2016-04-20", "title": "LE FILS DE JOSEPH" }, { "dcps": [ { "contentkind": "FTR", "dcpid": 541, "name": "LAvenir_FTR_F_FR-FR_FR_51_2K_FDL_20160229_ECL_IOP_OV", "size": "186571642897" }, { "contentkind": "TLR", "dcpid": 543, "name": "LAvenir_TLR-P-Date_F_FR-XX_FR_51_2K_FDL_20160308_ECL_IOP_OV", "size": "3100055161" } ], "movieid": 343, "original_title": "", "releasedate": "2016-04-06", "title": "L'AVENIR" }, { "dcps": [ { "contentkind": "TLR", "dcpid": 1049, "name": "ResterVertical_TLR_F_FR-XX_FR_51_2K_LOS_20160704_TST_IOP_OV", "size": "1438180164" } ], "movieid": 430, "original_title": "", "releasedate": "2016-08-24", "title": "RESTER VERTICAL" } ] } </pre> h2. Distribution Resources h3. properties |_. NAME |_. DESCRIPTION | | autorisation_date | Date of distribution autorisation | | dcp | DCP name on distribution | | dcpid | Id of DCP on distribution | | eta | Estimated Time of Accomplishment for DCP download in theater (available when _status_ is _Distribution started_ , _N/A_ else) | | exhibitor | Exhibitor name | | exhibitor_cncid | Unique exhibitor authorization ID given by CNC | | finished_transfer_date | Finished transfer to theater date | | proress | DCP download progress in percent (available when _status_ is _Distribution started_ , _N/A_ else) | | started_transfer_date |DCP download start date | | status | Distribution status (cf. next table)| *Distribution status states:* |_. NAME | | 'Distribution not allowed' | | 'Distribution allowed' | | 'Distribution started' | | 'Distribution finished' | | 'Distribution error' | h3. Retrieve distribution status of DCP <dcpid> to exhibitor <cncid> <pre> GET distributions/<cncid>/<dcpid> </pre> Sample output <pre> { "distributions": { "autorisation_date": "2016-07-04T07:25:16", "dcp": "HAUT-ET-COURT_TONI-ERDMANN_2K-F-185_51-DE_ST-FR_DCP-24-IOP-CPT_1606TVS7354", "dcpid": 1024, "eta": "N/A", "exhibitor": "UTOPIA TOURNEFEUILLE", "exhibitor_cncid": 431352, "finished_transfer_date": "2016-07-08T11:30:55", "progress": "N/A", "started_transfer_date": "2016-07-04T13:29:07", "status": "Distribution finished", "statusId": 0 } } </pre> h3. Distribute a DCP to a distributor <pre> POST distributions </pre> Parameters |_. NAME |_. DESCRIPTION | | cncid | Unique exhibitor authorization ID given by CNC | | dcpid | Id of DCP to distribute | *Sample* Distribute Toni Erdman FTR DCP (dcpid: 1024) to Utopia tournefeuille( cncid: 431352 ) _Input:_ <pre> curl -H "Content-Type: application/json" \ -u username:password \ -X POST\ -d '{"cncid": "431352", "dcpid": "1024" }'\ -i https://tuco.tdcpb.org/pelle/v1.0/distributions </pre> _Output:_ <pre> { code 201 CREATED { "distributions": { "autorisation_date": "2016-07-04T07:25:16", "dcp": "HAUT-ET-COURT_TONI-ERDMANN_2K-F-185_51-DE_ST-FR_DCP-24-IOP-CPT_1606TVS7354", "dcpid": 1024, "eta": "N/A", "exhibitor": "UTOPIA TOURNEFEUILLE", "exhibitor_cncid": 431352, "finished_transfer_date": "2016-07-08T11:30:55", "progress": "N/A", "started_transfer_date": "2016-07-04T13:29:07", "status": "Distribution finished", } } </pre> h3. Delete a distribution instance <pre> DELETE distributions/<cncid>/<dcpid> </pre> *Sample* Distribute Toni Erdman FTR DCP (dcpid: 1024) to Utopia tournefeuille( cncid: 431352 ) _Input_ <pre> curl \ -u username:password \ -X DELETE\ -d '{"cncid": "431352", "dcpid": "1024" }'\ -i https://tuco.tdcpb.org/pelle/v1.0/distributions </pre> _Output_ <pre> No output code 204 NO CONTENT </pre>