Projet

Général

Profil

Pelle API v10 » Historique » Version 24

Nicolas BERTRAND, 09/09/2016 17:40

1 1 Nicolas BERTRAND
h1. Pelle API v10
2 2 Nicolas BERTRAND
3 22 Nicolas BERTRAND
This document describes the REST API interface to control distribution of DCPs for "Indé-CP":http://www.indecp.org .
4 22 Nicolas BERTRAND
 
5 24 Nicolas BERTRAND
The distribution is managed via the tuco:http://tuco.tdcpb.org
6 24 Nicolas BERTRAND
7 24 Nicolas BERTRAND
Basically this API provides services  
8 22 Nicolas BERTRAND
9 2 Nicolas BERTRAND
h2. API Base URL
10 3 Nicolas BERTRAND
11 23 Nicolas BERTRAND
All URLs in the reference documentation use the following base URL:
12 2 Nicolas BERTRAND
<pre>
13 2 Nicolas BERTRAND
https://tuco.tdcpb.org/pelle/v1.0
14 1 Nicolas BERTRAND
</pre>
15 23 Nicolas BERTRAND
16 2 Nicolas BERTRAND
17 2 Nicolas BERTRAND
h2. Authentication
18 2 Nicolas BERTRAND
19 2 Nicolas BERTRAND
HTTP requests to the REST API are protected with HTTP Basic authentication 
20 2 Nicolas BERTRAND
21 2 Nicolas BERTRAND
Example:
22 2 Nicolas BERTRAND
<pre>
23 2 Nicolas BERTRAND
curl -u <username>:<pass> -H "Content-Type: application/json" -X GET https://tuco.tdcpb.org/pelle/v1.0/exhibitors
24 2 Nicolas BERTRAND
</pre>
25 4 Nicolas BERTRAND
26 9 Nicolas BERTRAND
h2. Exhibitors Resources
27 4 Nicolas BERTRAND
28 6 Nicolas BERTRAND
h3. Exhibitor Properties
29 8 Nicolas BERTRAND
30 8 Nicolas BERTRAND
|_. NAME |_. DESCRIPTION |
31 7 Nicolas BERTRAND
| cncid | Unique exhibitor authorization ID given by CNC |
32 7 Nicolas BERTRAND
| id |  Unique ID given by tuco (internal usage) |
33 7 Nicolas BERTRAND
| name | Theater name |
34 7 Nicolas BERTRAND
| address |  Exhibitor address |
35 7 Nicolas BERTRAND
| city |  Exhibitor city |
36 7 Nicolas BERTRAND
| contact |  Person to contact |
37 1 Nicolas BERTRAND
38 7 Nicolas BERTRAND
 
39 6 Nicolas BERTRAND
40 5 Nicolas BERTRAND
41 4 Nicolas BERTRAND
h3. List all exhibitors
42 4 Nicolas BERTRAND
43 4 Nicolas BERTRAND
<pre>
44 4 Nicolas BERTRAND
GET exhibitors
45 4 Nicolas BERTRAND
</pre>
46 4 Nicolas BERTRAND
47 9 Nicolas BERTRAND
Output sample:
48 1 Nicolas BERTRAND
49 1 Nicolas BERTRAND
<pre>
50 1 Nicolas BERTRAND
{
51 5 Nicolas BERTRAND
  exhibitors:[
52 5 Nicolas BERTRAND
  {
53 1 Nicolas BERTRAND
    'cncid': '123456',
54 9 Nicolas BERTRAND
    'name': 'UN CINEMA'
55 1 Nicolas BERTRAND
    'city' : LA VILLE
56 9 Nicolas BERTRAND
  },
57 9 Nicolas BERTRAND
....
58 1 Nicolas BERTRAND
 ]
59 9 Nicolas BERTRAND
}
60 9 Nicolas BERTRAND
</pre>
61 9 Nicolas BERTRAND
62 9 Nicolas BERTRAND
h3. Retrieve a exhibitor
63 9 Nicolas BERTRAND
64 9 Nicolas BERTRAND
<pre>
65 9 Nicolas BERTRAND
GET exhibitors/<cncid>
66 9 Nicolas BERTRAND
</pre>
67 9 Nicolas BERTRAND
68 9 Nicolas BERTRAND
69 9 Nicolas BERTRAND
Output sample:
70 9 Nicolas BERTRAND
71 9 Nicolas BERTRAND
<pre>
72 9 Nicolas BERTRAND
{
73 9 Nicolas BERTRAND
  exhibitors:
74 9 Nicolas BERTRAND
  {
75 9 Nicolas BERTRAND
    'cncid': '123456',
76 9 Nicolas BERTRAND
    'name': 'UN CINEMA'
77 9 Nicolas BERTRAND
    'city' : LA VILLE
78 9 Nicolas BERTRAND
  },
79 4 Nicolas BERTRAND
}
80 4 Nicolas BERTRAND
</pre>
81 10 Nicolas BERTRAND
82 10 Nicolas BERTRAND
83 10 Nicolas BERTRAND
h3. Retrieve a exhibitor current downloads
84 10 Nicolas BERTRAND
85 10 Nicolas BERTRAND
86 10 Nicolas BERTRAND
<pre>
87 10 Nicolas BERTRAND
GET exhibitors/<cncid>/current_downloads
88 10 Nicolas BERTRAND
</pre>
89 10 Nicolas BERTRAND
90 10 Nicolas BERTRAND
91 10 Nicolas BERTRAND
Output sample:
92 10 Nicolas BERTRAND
<pre>
93 10 Nicolas BERTRAND
</pre>
94 11 Nicolas BERTRAND
95 11 Nicolas BERTRAND
96 11 Nicolas BERTRAND
97 11 Nicolas BERTRAND
h2. Distributor Resources
98 11 Nicolas BERTRAND
99 11 Nicolas BERTRAND
h3. Distributor Properties
100 11 Nicolas BERTRAND
101 11 Nicolas BERTRAND
h3. List all distributors
102 11 Nicolas BERTRAND
103 11 Nicolas BERTRAND
<pre>
104 11 Nicolas BERTRAND
GET distributors
105 11 Nicolas BERTRAND
</pre>
106 11 Nicolas BERTRAND
107 11 Nicolas BERTRAND
Output sample:
108 11 Nicolas BERTRAND
109 11 Nicolas BERTRAND
h3. Retrieve a distributor
110 11 Nicolas BERTRAND
111 11 Nicolas BERTRAND
<pre>
112 11 Nicolas BERTRAND
GET distributors/<cncid>
113 11 Nicolas BERTRAND
</pre>
114 11 Nicolas BERTRAND
115 11 Nicolas BERTRAND
116 11 Nicolas BERTRAND
Output sample:
117 12 Nicolas BERTRAND
118 12 Nicolas BERTRAND
h3. List distributor catalog
119 12 Nicolas BERTRAND
<pre>
120 12 Nicolas BERTRAND
GET distributors/<cncid>/movies
121 12 Nicolas BERTRAND
</pre>
122 12 Nicolas BERTRAND
123 12 Nicolas BERTRAND
124 12 Nicolas BERTRAND
Output sample:
125 12 Nicolas BERTRAND
126 13 Nicolas BERTRAND
127 13 Nicolas BERTRAND
h2. Distribution Resources
128 13 Nicolas BERTRAND
129 17 Nicolas BERTRAND
h3. properties
130 17 Nicolas BERTRAND
131 17 Nicolas BERTRAND
|_. NAME |_. DESCRIPTION |
132 17 Nicolas BERTRAND
| autorisation_date | Date of distribution autorisation |
133 17 Nicolas BERTRAND
| dcp | DCP name on distribution | 
134 17 Nicolas BERTRAND
| dcpid | Id of DCP on distribution |
135 17 Nicolas BERTRAND
| eta | Estimated Time of Accomplishment for DCP download in theater (available when _status_ is _Distribution started_ , _N/A_ else) |
136 18 Nicolas BERTRAND
| exhibitor | Exhibitor name |
137 18 Nicolas BERTRAND
| exhibitor_cncid |  Unique exhibitor authorization ID given by CNC |
138 18 Nicolas BERTRAND
| finished_transfer_date | Finished transfer to theater date |
139 18 Nicolas BERTRAND
| proress | DCP download progress in percent (available when _status_ is _Distribution started_ , _N/A_ else) |
140 18 Nicolas BERTRAND
| started_transfer_date |DCP download start date |
141 19 Nicolas BERTRAND
| status | Distribution status (cf. next table)|
142 17 Nicolas BERTRAND
143 17 Nicolas BERTRAND
144 19 Nicolas BERTRAND
*Distribution status states:*
145 1 Nicolas BERTRAND
146 1 Nicolas BERTRAND
|_. NAME |
147 19 Nicolas BERTRAND
| 'Distribution not allowed' |
148 19 Nicolas BERTRAND
| 'Distribution allowed' |
149 19 Nicolas BERTRAND
| 'Distribution started' |
150 19 Nicolas BERTRAND
| 'Distribution finished' |
151 19 Nicolas BERTRAND
| 'Distribution error' |
152 19 Nicolas BERTRAND
 
153 19 Nicolas BERTRAND
154 17 Nicolas BERTRAND
155 17 Nicolas BERTRAND
156 14 Nicolas BERTRAND
h3. Retrieve distribution status of DCP <dcpid> to exhibitor <cncid>
157 14 Nicolas BERTRAND
158 14 Nicolas BERTRAND
<pre>
159 14 Nicolas BERTRAND
GET distributions/<cncid>/<dcpid>
160 14 Nicolas BERTRAND
</pre>
161 14 Nicolas BERTRAND
162 16 Nicolas BERTRAND
Sample output
163 16 Nicolas BERTRAND
<pre>
164 16 Nicolas BERTRAND
{
165 16 Nicolas BERTRAND
    "distributions": {
166 16 Nicolas BERTRAND
        "autorisation_date": "2016-07-04T07:25:16", 
167 16 Nicolas BERTRAND
        "dcp": "HAUT-ET-COURT_TONI-ERDMANN_2K-F-185_51-DE_ST-FR_DCP-24-IOP-CPT_1606TVS7354", 
168 16 Nicolas BERTRAND
        "dcpid": 1024, 
169 16 Nicolas BERTRAND
        "eta": "N/A", 
170 16 Nicolas BERTRAND
        "exhibitor": "UTOPIA TOURNEFEUILLE", 
171 16 Nicolas BERTRAND
        "exhibitor_cncid": 431352, 
172 16 Nicolas BERTRAND
        "finished_transfer_date": "2016-07-08T11:30:55", 
173 16 Nicolas BERTRAND
        "progress": "N/A", 
174 16 Nicolas BERTRAND
        "started_transfer_date": "2016-07-04T13:29:07", 
175 16 Nicolas BERTRAND
        "status": "Distribution finished", 
176 16 Nicolas BERTRAND
        "statusId": 0
177 16 Nicolas BERTRAND
    }
178 16 Nicolas BERTRAND
}
179 16 Nicolas BERTRAND
</pre>
180 13 Nicolas BERTRAND
181 12 Nicolas BERTRAND
h3. Distribute a DCP to a distributor
182 12 Nicolas BERTRAND
183 12 Nicolas BERTRAND
<pre>
184 15 Nicolas BERTRAND
POST distributions
185 1 Nicolas BERTRAND
</pre>
186 15 Nicolas BERTRAND
187 15 Nicolas BERTRAND
Parameters
188 15 Nicolas BERTRAND
189 15 Nicolas BERTRAND
|_. NAME |_. DESCRIPTION |
190 15 Nicolas BERTRAND
| cncid | Unique exhibitor authorization ID given by CNC |
191 15 Nicolas BERTRAND
| dcpid | Id of DCP to distribute |
192 16 Nicolas BERTRAND
193 16 Nicolas BERTRAND
*Sample*
194 16 Nicolas BERTRAND
Distribute Toni Erdman FTR DCP (dcpid: 1024) to Utopia tournefeuille( cncid: 431352 )
195 21 Nicolas BERTRAND
_Input:_
196 16 Nicolas BERTRAND
<pre>
197 16 Nicolas BERTRAND
curl -H "Content-Type: application/json" \ 
198 16 Nicolas BERTRAND
-u username:password \
199 16 Nicolas BERTRAND
-X POST\
200 16 Nicolas BERTRAND
-d '{"cncid": "431352", "dcpid": "1024" }'\
201 16 Nicolas BERTRAND
-i https://tuco.tdcpb.org/pelle/v1.0/distributions
202 16 Nicolas BERTRAND
</pre>
203 21 Nicolas BERTRAND
_Output:_
204 20 Nicolas BERTRAND
<pre>
205 20 Nicolas BERTRAND
{
206 20 Nicolas BERTRAND
code 201 CREATED
207 20 Nicolas BERTRAND
{
208 20 Nicolas BERTRAND
    "distributions": {
209 20 Nicolas BERTRAND
        "autorisation_date": "2016-07-04T07:25:16", 
210 20 Nicolas BERTRAND
        "dcp": "HAUT-ET-COURT_TONI-ERDMANN_2K-F-185_51-DE_ST-FR_DCP-24-IOP-CPT_1606TVS7354", 
211 20 Nicolas BERTRAND
        "dcpid": 1024, 
212 20 Nicolas BERTRAND
        "eta": "N/A", 
213 20 Nicolas BERTRAND
        "exhibitor": "UTOPIA TOURNEFEUILLE", 
214 20 Nicolas BERTRAND
        "exhibitor_cncid": 431352, 
215 20 Nicolas BERTRAND
        "finished_transfer_date": "2016-07-08T11:30:55", 
216 20 Nicolas BERTRAND
        "progress": "N/A", 
217 20 Nicolas BERTRAND
        "started_transfer_date": "2016-07-04T13:29:07", 
218 20 Nicolas BERTRAND
        "status": "Distribution finished", 
219 20 Nicolas BERTRAND
    }
220 20 Nicolas BERTRAND
}
221 20 Nicolas BERTRAND
</pre>
222 20 Nicolas BERTRAND
223 20 Nicolas BERTRAND
h3. Delete a distribution instance
224 20 Nicolas BERTRAND
225 20 Nicolas BERTRAND
<pre>
226 20 Nicolas BERTRAND
DELETE distributions/<cncid>/<dcpid>
227 20 Nicolas BERTRAND
</pre>
228 20 Nicolas BERTRAND
229 20 Nicolas BERTRAND
*Sample*
230 20 Nicolas BERTRAND
Distribute Toni Erdman FTR DCP (dcpid: 1024) to Utopia tournefeuille( cncid: 431352 )
231 20 Nicolas BERTRAND
_Input_
232 20 Nicolas BERTRAND
<pre>
233 20 Nicolas BERTRAND
curl \ 
234 20 Nicolas BERTRAND
-u username:password \
235 20 Nicolas BERTRAND
-X DELETE\
236 20 Nicolas BERTRAND
-d '{"cncid": "431352", "dcpid": "1024" }'\
237 20 Nicolas BERTRAND
-i https://tuco.tdcpb.org/pelle/v1.0/distributions
238 20 Nicolas BERTRAND
</pre>
239 20 Nicolas BERTRAND
240 20 Nicolas BERTRAND
_Output_
241 20 Nicolas BERTRAND
<pre>
242 20 Nicolas BERTRAND
No output
243 20 Nicolas BERTRAND
code 204 NO CONTENT
244 20 Nicolas BERTRAND
</pre>