omniauth-marvin 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d2fc45be7a35ffd63d0a14ee18fff9667819c26c7118e7ad1f31ad03631e9f1e
4
- data.tar.gz: 1c3bc8637ee3682ee6848d0ca20d0bca5d594e62857b8783cd89bcbcca7b1dd5
3
+ metadata.gz: 65de9357214b6a56a74b9763b114bba01458ccda2e48bc982b5116baa884f685
4
+ data.tar.gz: d90795240a5783c1c030a46119c493eb522908993e30fcb300fee80bf6d774a5
5
5
  SHA512:
6
- metadata.gz: 1dd8566e0d5c3bad143989e21df70e83c1a32b126b3c7be469d5b5797498f9aae2f8a71d3ba55a24dbc281b90b7f2ba890b63187425e7337e36bce368e44ea00
7
- data.tar.gz: 72a7994eee29aebabf84adf566455aeea9acb31aea96dcc86a05ca0312c89855fe3e16f1f8ccea6a944d4feeca49cb1c7705f5bfa2d03ed64e250ca75a2c726e
6
+ metadata.gz: 53ef70a6c0327c644d77def4fdc3d9e524043b9246bd316c836a5153d1ac4cf166105dd2e15a62d9c1fd4175dd6dd500095fb44096dc71a4b209b1249330bae4
7
+ data.tar.gz: ec84e2205da9c1b6eefd37d078e165c5e5e40af2cd6cf67d0ea60fa52e15ba4f7777b72d74a079f589781b44c1373fe0210e9fedd9447edfd21bc1c9fc05d632
data/README.md CHANGED
@@ -9,7 +9,7 @@ OmniAuth OAuth2 strategy for 42 School.
9
9
  Add this line to your application's Gemfile:
10
10
 
11
11
  ```ruby
12
- gem 'omniauth-marvin', '~> 1.0.2'
12
+ gem 'omniauth-marvin', '~> 1.2.0'
13
13
  ```
14
14
 
15
15
  Or, install it yourself like below:
@@ -55,9 +55,31 @@ run `bundle install`
55
55
  ```
56
56
  rails g devise:install
57
57
  rails g devise user
58
- rails g migration AddNicknameToUsers nickname:string
58
+ rails g devise:controllers users -c=omniauth_callbacks
59
+ rails g migration AddLoginToUsers login:string
59
60
  rails g migration AddOmniauthToUsers provider:index uid:index
60
- rake db:migrate
61
+ ```
62
+
63
+ Before migrating, for this example since we are not going to use trackable, and all the devise module. Then please edit the file created into `db/*_devise_create_users`, to only keep:
64
+
65
+ ```
66
+ # frozen_string_literal: true
67
+
68
+ class DeviseCreateUsers < ActiveRecord::Migration[6.1]
69
+ def change
70
+ create_table :users do |t|
71
+ t.string :email, null: false, default: ""
72
+ t.timestamps null: false
73
+ end
74
+ add_index :users, :email, unique: true
75
+ end
76
+ end
77
+ ```
78
+
79
+ now you can migrate:
80
+
81
+ ```
82
+ rails db:migrate
61
83
  ```
62
84
 
63
85
  You can add any additional migration you want. For instance, phone, level, wallet...etc.
@@ -84,9 +106,7 @@ In this case, `app/models/user.rb`
84
106
 
85
107
  ```ruby
86
108
  class User < ActiveRecord::Base
87
- devise :database_authenticatable, :registerable,
88
- :recoverable, :rememberable, :trackable, :validatable,
89
- :omniauthable, omniauth_providers: [:marvin]
109
+ devise :omniauthable, omniauth_providers: [:marvin]
90
110
  end
91
111
  ```
92
112
 
@@ -100,8 +120,7 @@ Example:
100
120
  def self.from_omniauth(auth)
101
121
  where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
102
122
  user.email = auth.info.email
103
- user.password = Devise.friendly_token[0,20]
104
- user.nickname = auth.info.nickname
123
+ user.login = auth.info.login
105
124
  end
106
125
  end
107
126
  ```
@@ -114,26 +133,34 @@ Example:
114
133
  devise_for :users, controllers: { omniauth_callbacks: "users/omniauth_callbacks" }
115
134
  ```
116
135
 
117
- #### Create the callbacks controller
136
+ #### Edit the callbacks controller
118
137
 
119
138
  `app/controllers/users/omniauth_callbacks_controller.rb`
120
139
 
121
140
  Example:
122
141
 
123
142
  ```ruby
143
+ # frozen_string_literal: true
144
+
124
145
  class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
125
146
  def marvin
126
147
  @user = User.from_omniauth(request.env["omniauth.auth"])
127
148
 
128
149
  if @user.persisted?
129
- sign_in_and_redirect @user, :event => :authentication
130
- set_flash_message(:notice, :success, :kind => "42") if is_navigational_format?
150
+ sign_in_and_redirect @user, event: :authentication
151
+ set_flash_message(:notice, :success, kind: "42") if is_navigational_format?
131
152
  else
132
153
  session["devise.marvin_data"] = request.env["omniauth.auth"]
133
154
  redirect_to new_user_registration_url
134
155
  end
135
156
  end
157
+
158
+ def after_omniauth_failure_path_for scope
159
+ # instead of root_path you can add sign_in_path if you end up to have your own sign_in page.
160
+ root_path
161
+ end
136
162
  end
163
+
137
164
  ```
138
165
 
139
166
  #### Add the Sign Out route
@@ -142,7 +169,7 @@ end
142
169
 
143
170
  ```ruby
144
171
  devise_scope :user do
145
- delete 'sign_out', :to => 'devise/sessions#destroy', :as => :destroy_user_session_path
172
+ delete 'sign_out', to: 'devise/sessions#destroy', as: :destroy_user_session
146
173
  end
147
174
  ```
148
175
 
@@ -151,11 +178,8 @@ end
151
178
  Here's a (very) basic example for login/logout links in the views
152
179
 
153
180
  ```
154
- <%= link_to "Sign in with 42", user_omniauth_authorize_path(:marvin) %>
155
- ```
156
-
157
- ```
158
- <%= link_to "Sign out", destroy_user_session_path, :method => :delete %>
181
+ <%= link_to "Sign in with 42", user_marvin_omniauth_authorize_path unless current_user %>
182
+ <%= link_to "Sign out", destroy_user_session_path, method: :delete if current_user %>
159
183
  ```
160
184
 
161
185
 
@@ -170,671 +194,3602 @@ Here's an example of the auth hash available in request.env['omniauth.auth']:
170
194
 
171
195
  ```json
172
196
  {
173
- "provider": "marvin",
174
- "uid": 12345,
175
- "info": {
176
- "name": "Samy KACIMI",
177
- "email": "skacimi@student.42.fr",
178
- "nickname": "skacimi",
179
- "location": null,
180
- "image": "https://cdn.42.fr/userprofil/profilview/skacimi.jpg",
181
- "phone": null,
182
- "urls": {
183
- "Profile": "https://api.intrav2.42.fr/v2/users/skacimi"
184
- }
185
- },
186
- "credentials": {
187
- "token": "a1b2c3d4e5f6...",
188
- "expires_at": 1443035254,
189
- "expires": true
190
- },
191
- "extra": {
192
- "raw_info": {
193
- "id": 12345,
194
- "alias": [
195
- "samy.kacimi@student.42.fr",
196
- "kacimi.samy@student.42.fr",
197
- "skacimi@student.42.fr"
198
- ],
199
- "email": "skacimi@student.42.fr",
200
- "login": "skacimi",
201
- "url": "https://api.intrav2.42.fr/v2/users/skacimi",
202
- "mobile": null,
203
- "displayname": "Samy KACIMI",
204
- "image_url": "https://cdn.42.fr/userprofil/profilview/skacimi.jpg",
205
- "staff?": false,
206
- "correction_point": 7,
207
- "location": null,
208
- "campus": {
209
- "id": 1,
210
- "name": "Paris",
211
- "created_at": "2015-05-19T12:53:31.459+02:00",
212
- "updated_at": "2015-07-20T19:28:05.730+02:00",
213
- "time_zone": "Paris",
214
- "language_id": 1,
215
- "slug": "paris"
216
- },
217
- "wallet": 70,
218
- "groups": [
219
-
220
- ],
221
- "cursus": {
222
- "cursus": {
223
- "id": 1,
224
- "name": "42",
225
- "created_at": "2014-11-02T17:43:38.480+01:00",
226
- "updated_at": "2015-07-21T14:31:01.625+02:00",
227
- "slug": "42"
228
- },
229
- "end_at": null,
230
- "level": 7.15,
231
- "grade": "Midshipman",
232
- "projects": [
233
- {
234
- "name": "Introduction to Wordpress",
235
- "id": 14,
236
- "slug": "rushes-introduction-to-wordpress",
237
- "final_mark": 84,
238
- "occurrence": 0,
239
- "retriable_at": null,
240
- "teams_ids": [
241
- 4017
242
- ]
243
- },
244
- {
245
- "name": "Push_swap",
246
- "id": 27,
247
- "slug": "push_swap",
248
- "final_mark": 84,
249
- "occurrence": 1,
250
- "retriable_at": "2015-03-24T20:13:00.000+01:00",
251
- "teams_ids": [
252
- 55646,
253
- 60613
254
- ]
255
- },
256
- {
257
- "name": "Piscine PHP",
258
- "id": 48,
259
- "slug": "piscine-php",
260
- "final_mark": 81,
261
- "occurrence": 0,
262
- "retriable_at": "2015-03-30T17:40:57.000+02:00",
263
- "teams_ids": [
264
- 64600
265
- ]
266
- },
267
- {
268
- "name": "D06",
269
- "id": 55,
270
- "slug": "piscine-php-d06",
271
- "final_mark": 13,
272
- "occurrence": 0,
273
- "retriable_at": "2015-03-30T17:41:30.000+02:00",
274
- "teams_ids": [
275
- 64607
276
- ]
277
- },
278
- {
279
- "name": "Wolf3d",
280
- "id": 8,
281
- "slug": "wolf3d",
282
- "final_mark": 91,
283
- "occurrence": 0,
284
- "retriable_at": "2015-04-04T11:57:10.000+02:00",
285
- "teams_ids": [
286
- 53923
287
- ]
288
- },
289
- {
290
- "name": "D09",
291
- "id": 58,
292
- "slug": "piscine-php-d09",
293
- "final_mark": 58,
294
- "occurrence": 0,
295
- "retriable_at": "2015-03-30T17:42:10.000+02:00",
296
- "teams_ids": [
297
- 64610
298
- ]
299
- },
300
- {
301
- "name": "Libft",
302
- "id": 1,
303
- "slug": "libft",
304
- "final_mark": 103,
305
- "occurrence": 2,
306
- "retriable_at": "2015-01-29T14:55:48.000+01:00",
307
- "teams_ids": [
308
- 117,
309
- 6157,
310
- 54350
311
- ]
312
- },
313
- {
314
- "name": "Fract'ol",
315
- "id": 15,
316
- "slug": "fract-ol",
317
- "final_mark": 102,
318
- "occurrence": 0,
319
- "retriable_at": "2015-04-02T14:11:59.000+02:00",
320
- "teams_ids": [
321
- 60569
322
- ]
323
- },
324
- {
325
- "name": "First Internship",
326
- "id": 118,
327
- "slug": "first-internship",
328
- "final_mark": null,
329
- "occurrence": 0,
330
- "retriable_at": null,
331
- "teams_ids": [
332
- 84976
333
- ]
334
- },
335
- {
336
- "name": "LibftASM",
337
- "id": 79,
338
- "slug": "libftasm",
339
- "final_mark": 100,
340
- "occurrence": 0,
341
- "retriable_at": "2015-03-06T17:03:47.000+01:00",
342
- "teams_ids": [
343
- 57132
344
- ]
345
- },
346
- {
347
- "name": "C Exam - Beginner",
348
- "id": 11,
349
- "slug": "c-exam-beginner",
350
- "final_mark": 80,
351
- "occurrence": 13,
352
- "retriable_at": "2015-05-27T18:33:17.000+02:00",
353
- "teams_ids": [
354
- 3107,
355
- 5187,
356
- 56010,
357
- 59778,
358
- 60718,
359
- 61716,
360
- 62922,
361
- 63373,
362
- 75451,
363
- 78206,
364
- 78665,
365
- 83011,
366
- 83635,
367
- 84658
368
- ]
369
- },
370
- {
371
- "name": "Duration",
372
- "id": 140,
373
- "slug": "first-internship-duration",
374
- "final_mark": null,
375
- "occurrence": 0,
376
- "retriable_at": null,
377
- "teams_ids": [
378
- 95077
379
- ]
380
- },
381
- {
382
- "name": "Introduction to iOS",
383
- "id": 18,
384
- "slug": "rushes-introduction-to-ios",
385
- "final_mark": 84,
386
- "occurrence": 0,
387
- "retriable_at": "2014-12-28T23:09:51.910+01:00",
388
- "teams_ids": [
389
- 4669
390
- ]
391
- },
392
- {
393
- "name": "FdF",
394
- "id": 4,
395
- "slug": "fdf",
396
- "final_mark": 103,
397
- "occurrence": 0,
398
- "retriable_at": "2015-01-05T18:32:46.764+01:00",
399
- "teams_ids": [
400
- 2960
401
- ]
402
- },
403
- {
404
- "name": "Contract Upload",
405
- "id": 119,
406
- "slug": "first-internship-contract-upload",
407
- "final_mark": 100,
408
- "occurrence": 0,
409
- "retriable_at": "2015-05-30T13:28:06.000+02:00",
410
- "teams_ids": [
411
- 85014
412
- ]
413
- },
414
- {
415
- "name": "Rush00",
416
- "id": 59,
417
- "slug": "piscine-php-rush00",
418
- "final_mark": 69,
419
- "occurrence": 0,
420
- "retriable_at": "2015-04-10T18:55:10.000+02:00",
421
- "teams_ids": [
422
- 76109
423
- ]
424
- },
425
- {
426
- "name": "Rush01",
427
- "id": 60,
428
- "slug": "piscine-php-rush01",
429
- "final_mark": 0,
430
- "occurrence": 0,
431
- "retriable_at": "2015-04-16T16:49:32.000+02:00",
432
- "teams_ids": [
433
- 77242
434
- ]
435
- },
436
- {
437
- "name": "D01",
438
- "id": 50,
439
- "slug": "piscine-php-d01",
440
- "final_mark": 45,
441
- "occurrence": 0,
442
- "retriable_at": null,
443
- "teams_ids": [
444
- 64602
445
- ]
446
- },
447
- {
448
- "name": "D07",
449
- "id": 56,
450
- "slug": "piscine-php-d07",
451
- "final_mark": 75,
452
- "occurrence": 0,
453
- "retriable_at": "2015-03-30T17:42:00.000+02:00",
454
- "teams_ids": [
455
- 64608
456
- ]
457
- },
458
- {
459
- "name": "D04",
460
- "id": 53,
461
- "slug": "piscine-php-d04",
462
- "final_mark": 100,
463
- "occurrence": 0,
464
- "retriable_at": null,
465
- "teams_ids": [
466
- 64605
467
- ]
468
- },
469
- {
470
- "name": "D05",
471
- "id": 54,
472
- "slug": "piscine-php-d05",
473
- "final_mark": 70,
474
- "occurrence": 0,
475
- "retriable_at": "2015-03-30T17:41:55.000+02:00",
476
- "teams_ids": [
477
- 64606
478
- ]
479
- },
480
- {
481
- "name": "wong_kar_wai",
482
- "id": 93,
483
- "slug": "rushes-wong_kar_wai",
484
- "final_mark": 0,
485
- "occurrence": 0,
486
- "retriable_at": null,
487
- "teams_ids": [
488
- 58895
489
- ]
490
- },
491
- {
492
- "name": "Get_Next_Line",
493
- "id": 2,
494
- "slug": "get_next_line",
495
- "final_mark": 102,
496
- "occurrence": 0,
497
- "retriable_at": "2014-11-22T18:29:02.195+01:00",
498
- "teams_ids": [
499
- 1241
500
- ]
501
- },
502
- {
503
- "name": "D08",
504
- "id": 57,
505
- "slug": "piscine-php-d08",
506
- "final_mark": 0,
507
- "occurrence": 0,
508
- "retriable_at": "2015-03-30T17:41:36.000+02:00",
509
- "teams_ids": [
510
- 64609
511
- ]
512
- },
513
- {
514
- "name": "ft_ls",
515
- "id": 3,
516
- "slug": "ft_ls",
517
- "final_mark": 0,
518
- "occurrence": 0,
519
- "retriable_at": "2015-01-17T19:13:33.000+01:00",
520
- "teams_ids": [
521
- 1971
522
- ]
523
- },
524
- {
525
- "name": "D02",
526
- "id": 51,
527
- "slug": "piscine-php-d02",
528
- "final_mark": 13,
529
- "occurrence": 0,
530
- "retriable_at": "2015-03-30T17:41:17.000+02:00",
531
- "teams_ids": [
532
- 64603
533
- ]
534
- },
535
- {
536
- "name": "Rushes",
537
- "id": 61,
538
- "slug": "rushes",
539
- "final_mark": null,
540
- "occurrence": 0,
541
- "retriable_at": null,
542
- "teams_ids": [
543
-
544
- ]
545
- },
546
- {
547
- "name": "D03",
548
- "id": 52,
549
- "slug": "piscine-php-d03",
550
- "final_mark": 100,
551
- "occurrence": 0,
552
- "retriable_at": null,
553
- "teams_ids": [
554
- 64604
555
- ]
556
- },
557
- {
558
- "name": "Savoir Relier",
559
- "id": 96,
560
- "slug": "savoir-relier",
561
- "final_mark": 100,
562
- "occurrence": 0,
563
- "retriable_at": null,
564
- "teams_ids": [
565
- 62145
566
- ]
567
- },
568
- {
569
- "name": "Arkanoid",
570
- "id": 141,
571
- "slug": "rushes-arkanoid",
572
- "final_mark": 0,
573
- "occurrence": 0,
574
- "retriable_at": null,
575
- "teams_ids": [
576
- 79069
577
- ]
578
- },
579
- {
580
- "name": "D00",
581
- "id": 49,
582
- "slug": "piscine-php-d00",
583
- "final_mark": 118,
584
- "occurrence": 0,
585
- "retriable_at": null,
586
- "teams_ids": [
587
- 64601
588
- ]
589
- },
590
- {
591
- "name": "ft_sh1",
592
- "id": 7,
593
- "slug": "ft_sh1",
594
- "final_mark": 97,
595
- "occurrence": 0,
596
- "retriable_at": "2015-02-10T16:24:33.000+01:00",
597
- "teams_ids": [
598
- 4776
599
- ]
600
- }
601
- ],
602
- "skills": [
603
- {
604
- "id": 2,
605
- "name": "Imperative programming",
606
- "level": 6.39
607
- },
608
- {
609
- "id": 1,
610
- "name": "Algorithms & AI",
611
- "level": 6.2
612
- },
613
- {
614
- "id": 5,
615
- "name": "Graphics",
616
- "level": 4.06
617
- },
618
- {
619
- "id": 3,
620
- "name": "Rigor",
621
- "level": 3.95
622
- },
623
- {
624
- "id": 4,
625
- "name": "Unix",
626
- "level": 1.8
627
- },
628
- {
629
- "id": 6,
630
- "name": "Web",
631
- "level": 1.35
632
- },
633
- {
634
- "id": 17,
635
- "name": "Object-oriented programming",
636
- "level": 0.63
637
- },
638
- {
639
- "id": 14,
640
- "name": "Adaptation & creativity",
641
- "level": 0.34
642
- },
643
- {
644
- "id": 12,
645
- "name": "DB & Data",
646
- "level": 0.21
647
- },
648
- {
649
- "id": 10,
650
- "name": "Network & system administration",
651
- "level": 0.21
652
- },
653
- {
654
- "id": 15,
655
- "name": "Technology integration",
656
- "level": 0.1
657
- }
658
- ]
659
- },
660
- "achievements": [
661
- {
662
- "id": 96,
663
- "name": "Love me, I'm famous",
664
- "description": "Avoir été upvoté 100 fois sur le forum.",
665
- "users_url": "https://api.intrav2.42.fr/v2/achievements/96/users"
666
- },
667
- {
668
- "id": 95,
669
- "name": "Love me, I'm famous",
670
- "description": "Avoir été upvoté 42 fois sur le forum.",
671
- "users_url": "https://api.intrav2.42.fr/v2/achievements/95/users"
672
- },
673
- {
674
- "id": 94,
675
- "name": "Love me, I'm famous",
676
- "description": "Avoir été upvoté 10 fois sur le forum.",
677
- "users_url": "https://api.intrav2.42.fr/v2/achievements/94/users"
678
- },
679
- {
680
- "id": 45,
681
- "name": "Home is where the code is",
682
- "description": "S'être logué dans le même cluster un mois de suite.",
683
- "users_url": "https://api.intrav2.42.fr/v2/achievements/45/users"
684
- },
685
- {
686
- "id": 41,
687
- "name": "In the name of Nicolas",
688
- "description": "Etre logué 90h sur une semaine. (à bosser, comme Nicolas vous l'a conseillé !)",
689
- "users_url": "https://api.intrav2.42.fr/v2/achievements/41/users"
690
- },
691
- {
692
- "id": 90,
693
- "name": "I post, therefore I am",
694
- "description": "Poster 10 messages sur le forum.",
695
- "users_url": "https://api.intrav2.42.fr/v2/achievements/90/users"
696
- },
697
- {
698
- "id": 1,
699
- "name": "Welcome, Cadet !",
700
- "description": "Tu as réussi ta piscine C. Bienvenue à 42 !",
701
- "users_url": "https://api.intrav2.42.fr/v2/achievements/1/users"
702
- },
703
- {
704
- "id": 57,
705
- "name": "Attendee",
706
- "description": "Assister à 21 conférences.",
707
- "users_url": "https://api.intrav2.42.fr/v2/achievements/57/users"
708
- },
709
- {
710
- "id": 56,
711
- "name": "Attendee",
712
- "description": "Assister à 10 conférences.",
713
- "users_url": "https://api.intrav2.42.fr/v2/achievements/56/users"
714
- },
715
- {
716
- "id": 55,
717
- "name": "Attendee",
718
- "description": "Assister à 3 conférences.",
719
- "users_url": "https://api.intrav2.42.fr/v2/achievements/55/users"
720
- },
721
- {
722
- "id": 54,
723
- "name": "Attendee",
724
- "description": "Assister à une conférence.",
725
- "users_url": "https://api.intrav2.42.fr/v2/achievements/54/users"
726
- },
727
- {
728
- "id": 84,
729
- "name": "I'm reliable !",
730
- "description": "Participer à 21 soutenances d'affilée sans en manquer aucune.",
731
- "users_url": "https://api.intrav2.42.fr/v2/achievements/84/users"
732
- },
733
- {
734
- "id": 91,
735
- "name": "I post, therefore I am",
736
- "description": "Poster 42 messages sur le forum.",
737
- "users_url": "https://api.intrav2.42.fr/v2/achievements/91/users"
738
- },
739
- {
740
- "id": 4,
741
- "name": "Code Explorer",
742
- "description": "Valider son premier projet.",
743
- "users_url": "https://api.intrav2.42.fr/v2/achievements/4/users"
744
- },
745
- {
746
- "id": 6,
747
- "name": "Code Explorer",
748
- "description": "Valider 10 projets.",
749
- "users_url": "https://api.intrav2.42.fr/v2/achievements/6/users"
750
- },
751
- {
752
- "id": 5,
753
- "name": "Code Explorer",
754
- "description": "Valider 3 projets.",
755
- "users_url": "https://api.intrav2.42.fr/v2/achievements/5/users"
756
- },
757
- {
758
- "id": 17,
759
- "name": "Bonus Hunter",
760
- "description": "Valider 1 projet avec le maximum de bonus.",
761
- "users_url": "https://api.intrav2.42.fr/v2/achievements/17/users"
762
- },
763
- {
764
- "id": 25,
765
- "name": "Rigorous Basterd",
766
- "description": "Valider 3 projets d'affilée (journées de piscines comprises).",
767
- "users_url": "https://api.intrav2.42.fr/v2/achievements/25/users"
768
- },
769
- {
770
- "id": 48,
771
- "name": "Film buff",
772
- "description": "Regarder 10 videos sur l'e-learning.",
773
- "users_url": "https://api.intrav2.42.fr/v2/achievements/48/users"
774
- },
775
- {
776
- "id": 82,
777
- "name": "I have no idea what I'm doing",
778
- "description": "Faire une soutenance sans avoir validé le projet.",
779
- "users_url": "https://api.intrav2.42.fr/v2/achievements/82/users"
780
- },
781
- {
782
- "id": 47,
783
- "name": "Film buff",
784
- "description": "Regarder 3 videos sur l'e-learning.",
785
- "users_url": "https://api.intrav2.42.fr/v2/achievements/47/users"
786
- },
787
- {
788
- "id": 87,
789
- "name": "I post, therefore I am",
790
- "description": "Poster 1 message sur le forum.",
791
- "users_url": "https://api.intrav2.42.fr/v2/achievements/87/users"
792
- },
793
- {
794
- "id": 79,
795
- "name": "Perfect examiner",
796
- "description": "Avoir un feedback correcteur à 100% sur 10 soutenances d'affilée.",
797
- "users_url": "https://api.intrav2.42.fr/v2/achievements/79/users"
798
- },
799
- {
800
- "id": 88,
801
- "name": "Love me, I'm famous",
802
- "description": "Avoir été upvoté 1 fois sur le forum.",
803
- "users_url": "https://api.intrav2.42.fr/v2/achievements/88/users"
804
- },
805
- {
806
- "id": 50,
807
- "name": "Film buff",
808
- "description": "Regarder 42 videos sur l'e-learning.",
809
- "users_url": "https://api.intrav2.42.fr/v2/achievements/50/users"
810
- },
811
- {
812
- "id": 49,
813
- "name": "Film buff",
814
- "description": "Regarder 21 videos sur l'e-learning.",
815
- "users_url": "https://api.intrav2.42.fr/v2/achievements/49/users"
816
- },
817
- {
818
- "id": 78,
819
- "name": "Perfect examiner",
820
- "description": "Avoir un feedback correcteur à 100% sur 3 soutenances d'affilée.",
821
- "users_url": "https://api.intrav2.42.fr/v2/achievements/78/users"
822
- },
823
- {
824
- "id": 46,
825
- "name": "Film buff",
826
- "description": "Regarder 1 video sur l'e-learning.",
827
- "users_url": "https://api.intrav2.42.fr/v2/achievements/46/users"
828
- }
829
- ],
830
- "titles": [
831
-
832
- ]
833
- }
834
- }
197
+ "provider":"marvin",
198
+ "uid":19265,
199
+ "info":{
200
+ "first_name":"Jordane",
201
+ "last_name":"Gengo",
202
+ "name":"Jordane Angelo Gengo",
203
+ "email":"jgengo@student.42.fr",
204
+ "login":"jgengo",
205
+ "image":"https://cdn.intra.42.fr/users/jgengo.jpg",
206
+ "urls":{
207
+ "profile":"https://api.intra.42.fr/v2/users/jgengo"
208
+ }
209
+ },
210
+ "credentials":{
211
+ "token":"",
212
+ "refresh_token":"",
213
+ "expires_at":1618602578,
214
+ "expires":true
215
+ },
216
+ "extra":{
217
+ "raw_info":{
218
+ "id":19265,
219
+ "email":"jgengo@student.42.fr",
220
+ "login":"jgengo",
221
+ "first_name":"Jordane",
222
+ "last_name":"Gengo",
223
+ "usual_first_name":"Jordane angelo",
224
+ "url":"https://api.intra.42.fr/v2/users/jgengo",
225
+ "phone":"hidden",
226
+ "displayname":"Jordane Gengo",
227
+ "usual_full_name":"Jordane Angelo Gengo",
228
+ "image_url":"https://cdn.intra.42.fr/users/jgengo.jpg",
229
+ "staff?":false,
230
+ "correction_point":28,
231
+ "pool_month":"july",
232
+ "pool_year":"2016",
233
+ "location":null,
234
+ "wallet":125,
235
+ "anonymize_date":"2022-04-16T00:00:00.000+02:00",
236
+ "groups":[
237
+
238
+ ],
239
+ "cursus_users":[
240
+ {
241
+ "grade":"Admiral",
242
+ "level":21.0,
243
+ "skills":[
244
+ {
245
+ "id":16,
246
+ "name":"Company experience",
247
+ "level":21.24
248
+ },
249
+ {
250
+ "id":7,
251
+ "name":"Group \u0026 interpersonal",
252
+ "level":17.39
253
+ },
254
+ {
255
+ "id":6,
256
+ "name":"Web",
257
+ "level":13.36
258
+ },
259
+ {
260
+ "id":10,
261
+ "name":"Network \u0026 system administration",
262
+ "level":11.66
263
+ },
264
+ {
265
+ "id":14,
266
+ "name":"Adaptation \u0026 creativity",
267
+ "level":11.54
268
+ },
269
+ {
270
+ "id":12,
271
+ "name":"DB \u0026 Data",
272
+ "level":8.39
273
+ },
274
+ {
275
+ "id":1,
276
+ "name":"Algorithms \u0026 AI",
277
+ "level":5.9
278
+ },
279
+ {
280
+ "id":2,
281
+ "name":"Imperative programming",
282
+ "level":4.5600000000000005
283
+ },
284
+ {
285
+ "id":4,
286
+ "name":"Unix",
287
+ "level":4.53
288
+ },
289
+ {
290
+ "id":11,
291
+ "name":"Security",
292
+ "level":4.26
293
+ },
294
+ {
295
+ "id":3,
296
+ "name":"Rigor",
297
+ "level":3.2
298
+ },
299
+ {
300
+ "id":15,
301
+ "name":"Technology integration",
302
+ "level":2.73
303
+ },
304
+ {
305
+ "id":17,
306
+ "name":"Object-oriented programming",
307
+ "level":1.71
308
+ },
309
+ {
310
+ "id":5,
311
+ "name":"Graphics",
312
+ "level":1.28
313
+ }
314
+ ],
315
+ "blackholed_at":null,
316
+ "id":16191,
317
+ "begin_at":"2016-11-02T08:00:00.000Z",
318
+ "end_at":"2019-12-01T00:00:00.000Z",
319
+ "cursus_id":1,
320
+ "has_coalition":true,
321
+ "user":{
322
+ "id":19265,
323
+ "login":"jgengo",
324
+ "url":"https://api.intra.42.fr/v2/users/jgengo"
325
+ },
326
+ "cursus":{
327
+ "id":1,
328
+ "created_at":"2014-11-02T16:43:38.480Z",
329
+ "name":"42",
330
+ "slug":"42"
331
+ }
332
+ },
333
+ {
334
+ "grade":null,
335
+ "level":4.0,
336
+ "skills":[
337
+ {
338
+ "id":4,
339
+ "name":"Unix",
340
+ "level":4.13
341
+ },
342
+ {
343
+ "id":3,
344
+ "name":"Rigor",
345
+ "level":3.73
346
+ },
347
+ {
348
+ "id":1,
349
+ "name":"Algorithms \u0026 AI",
350
+ "level":3.66
351
+ },
352
+ {
353
+ "id":7,
354
+ "name":"Group \u0026 interpersonal",
355
+ "level":0.69
356
+ }
357
+ ],
358
+ "blackholed_at":null,
359
+ "id":10033,
360
+ "begin_at":"2016-06-30T21:42:00.000Z",
361
+ "end_at":"2016-07-31T21:42:00.000Z",
362
+ "cursus_id":4,
363
+ "has_coalition":true,
364
+ "user":{
365
+ "id":19265,
366
+ "login":"jgengo",
367
+ "url":"https://api.intra.42.fr/v2/users/jgengo"
368
+ },
369
+ "cursus":{
370
+ "id":4,
371
+ "created_at":"2015-05-01T17:46:08.433Z",
372
+ "name":"Piscine C",
373
+ "slug":"piscine-c"
374
+ }
375
+ },
376
+ {
377
+ "grade":"Member",
378
+ "level":21.01,
379
+ "skills":[
380
+ {
381
+ "id":16,
382
+ "name":"Company experience",
383
+ "level":21.25
384
+ },
385
+ {
386
+ "id":7,
387
+ "name":"Group \u0026 interpersonal",
388
+ "level":17.39
389
+ },
390
+ {
391
+ "id":6,
392
+ "name":"Web",
393
+ "level":13.36
394
+ },
395
+ {
396
+ "id":10,
397
+ "name":"Network \u0026 system administration",
398
+ "level":11.66
399
+ },
400
+ {
401
+ "id":14,
402
+ "name":"Adaptation \u0026 creativity",
403
+ "level":11.54
404
+ },
405
+ {
406
+ "id":12,
407
+ "name":"DB \u0026 Data",
408
+ "level":8.39
409
+ },
410
+ {
411
+ "id":1,
412
+ "name":"Algorithms \u0026 AI",
413
+ "level":5.52
414
+ },
415
+ {
416
+ "id":2,
417
+ "name":"Imperative programming",
418
+ "level":5.03
419
+ },
420
+ {
421
+ "id":4,
422
+ "name":"Unix",
423
+ "level":5.02
424
+ },
425
+ {
426
+ "id":11,
427
+ "name":"Security",
428
+ "level":4.87
429
+ },
430
+ {
431
+ "id":3,
432
+ "name":"Rigor",
433
+ "level":4.29
434
+ },
435
+ {
436
+ "id":15,
437
+ "name":"Technology integration",
438
+ "level":4.06
439
+ },
440
+ {
441
+ "id":17,
442
+ "name":"Object-oriented programming",
443
+ "level":2.92
444
+ },
445
+ {
446
+ "id":5,
447
+ "name":"Graphics",
448
+ "level":2.56
449
+ }
450
+ ],
451
+ "blackholed_at":"2018-05-16T07:00:00.000Z",
452
+ "id":83052,
453
+ "begin_at":"2016-11-02T08:00:00.000Z",
454
+ "end_at":null,
455
+ "cursus_id":21,
456
+ "has_coalition":true,
457
+ "user":{
458
+ "id":19265,
459
+ "login":"jgengo",
460
+ "url":"https://api.intra.42.fr/v2/users/jgengo"
461
+ },
462
+ "cursus":{
463
+ "id":21,
464
+ "created_at":"2019-07-29T08:45:17.896Z",
465
+ "name":"42cursus",
466
+ "slug":"42cursus"
467
+ }
468
+ }
469
+ ],
470
+ "projects_users":[
471
+ {
472
+ "id":1024960,
473
+ "occurrence":0,
474
+ "final_mark":100,
475
+ "status":"finished",
476
+ "validated?":true,
477
+ "current_team_id":2173586,
478
+ "project":{
479
+ "id":211,
480
+ "name":"Peer Video",
481
+ "slug":"final-internship-peer-video",
482
+ "parent_id":212
483
+ },
484
+ "cursus_ids":[
485
+ 1
486
+ ],
487
+ "marked_at":"2018-08-28T13:21:42.412Z",
488
+ "marked":true,
489
+ "retriable_at":"2018-08-28T13:21:46.156Z"
490
+ },
491
+ {
492
+ "id":745865,
493
+ "occurrence":0,
494
+ "final_mark":125,
495
+ "status":"finished",
496
+ "validated?":true,
497
+ "current_team_id":1844273,
498
+ "project":{
499
+ "id":604,
500
+ "name":"Darkly",
501
+ "slug":"darkly",
502
+ "parent_id":null
503
+ },
504
+ "cursus_ids":[
505
+ 1
506
+ ],
507
+ "marked_at":"2017-11-28T18:03:50.501Z",
508
+ "marked":true,
509
+ "retriable_at":"2017-12-05T18:03:48.389Z"
510
+ },
511
+ {
512
+ "id":726705,
513
+ "occurrence":0,
514
+ "final_mark":125,
515
+ "status":"finished",
516
+ "validated?":true,
517
+ "current_team_id":1838773,
518
+ "project":{
519
+ "id":597,
520
+ "name":"Hypertube",
521
+ "slug":"hypertube",
522
+ "parent_id":null
523
+ },
524
+ "cursus_ids":[
525
+ 1
526
+ ],
527
+ "marked_at":"2017-11-11T13:00:09.534Z",
528
+ "marked":true,
529
+ "retriable_at":"2017-11-18T13:00:06.065Z"
530
+ },
531
+ {
532
+ "id":689963,
533
+ "occurrence":0,
534
+ "final_mark":100,
535
+ "status":"finished",
536
+ "validated?":true,
537
+ "current_team_id":1780157,
538
+ "project":{
539
+ "id":847,
540
+ "name":"docker-1",
541
+ "slug":"docker-1",
542
+ "parent_id":null
543
+ },
544
+ "cursus_ids":[
545
+ 1
546
+ ],
547
+ "marked_at":"2017-11-20T21:19:12.735Z",
548
+ "marked":true,
549
+ "retriable_at":"2017-11-23T21:19:10.824Z"
550
+ },
551
+ {
552
+ "id":689964,
553
+ "occurrence":0,
554
+ "final_mark":100,
555
+ "status":"finished",
556
+ "validated?":true,
557
+ "current_team_id":1780158,
558
+ "project":{
559
+ "id":687,
560
+ "name":"init",
561
+ "slug":"init",
562
+ "parent_id":null
563
+ },
564
+ "cursus_ids":[
565
+ 1
566
+ ],
567
+ "marked_at":"2017-11-23T10:48:16.000Z",
568
+ "marked":true,
569
+ "retriable_at":"2017-11-24T10:48:13.584Z"
570
+ },
571
+ {
572
+ "id":689434,
573
+ "occurrence":0,
574
+ "final_mark":125,
575
+ "status":"finished",
576
+ "validated?":true,
577
+ "current_team_id":1779578,
578
+ "project":{
579
+ "id":700,
580
+ "name":"Dr Quine",
581
+ "slug":"dr-quine",
582
+ "parent_id":null
583
+ },
584
+ "cursus_ids":[
585
+ 1
586
+ ],
587
+ "marked_at":"2017-09-25T09:06:43.558Z",
588
+ "marked":true,
589
+ "retriable_at":"2017-10-02T09:06:41.075Z"
590
+ },
591
+ {
592
+ "id":647141,
593
+ "occurrence":0,
594
+ "final_mark":100,
595
+ "status":"finished",
596
+ "validated?":true,
597
+ "current_team_id":1728650,
598
+ "project":{
599
+ "id":60,
600
+ "name":"Rush01",
601
+ "slug":"piscine-php-rush01",
602
+ "parent_id":48
603
+ },
604
+ "cursus_ids":[
605
+ 1
606
+ ],
607
+ "marked_at":"2017-10-30T09:46:22.689Z",
608
+ "marked":true,
609
+ "retriable_at":"2017-10-30T09:46:22.674Z"
610
+ },
611
+ {
612
+ "id":647136,
613
+ "occurrence":0,
614
+ "final_mark":100,
615
+ "status":"finished",
616
+ "validated?":true,
617
+ "current_team_id":1728642,
618
+ "project":{
619
+ "id":54,
620
+ "name":"Day 05",
621
+ "slug":"42-piscine-c-formation-piscine-php-day-05",
622
+ "parent_id":48
623
+ },
624
+ "cursus_ids":[
625
+ 1
626
+ ],
627
+ "marked_at":"2017-10-30T09:46:15.463Z",
628
+ "marked":true,
629
+ "retriable_at":"2017-10-21T13:56:59.293Z"
630
+ },
631
+ {
632
+ "id":647131,
633
+ "occurrence":0,
634
+ "final_mark":100,
635
+ "status":"finished",
636
+ "validated?":true,
637
+ "current_team_id":1728648,
638
+ "project":{
639
+ "id":50,
640
+ "name":"Day 01",
641
+ "slug":"42-piscine-c-formation-piscine-php-day-01",
642
+ "parent_id":48
643
+ },
644
+ "cursus_ids":[
645
+ 1
646
+ ],
647
+ "marked_at":"2017-10-30T09:46:10.441Z",
648
+ "marked":true,
649
+ "retriable_at":"2017-10-30T09:46:10.413Z"
650
+ },
651
+ {
652
+ "id":647135,
653
+ "occurrence":0,
654
+ "final_mark":100,
655
+ "status":"finished",
656
+ "validated?":true,
657
+ "current_team_id":1728649,
658
+ "project":{
659
+ "id":59,
660
+ "name":"Rush00",
661
+ "slug":"piscine-php-rush00",
662
+ "parent_id":48
663
+ },
664
+ "cursus_ids":[
665
+ 1
666
+ ],
667
+ "marked_at":"2017-10-30T09:46:15.392Z",
668
+ "marked":true,
669
+ "retriable_at":"2017-10-30T09:46:15.379Z"
670
+ },
671
+ {
672
+ "id":647139,
673
+ "occurrence":0,
674
+ "final_mark":100,
675
+ "status":"finished",
676
+ "validated?":true,
677
+ "current_team_id":1728645,
678
+ "project":{
679
+ "id":57,
680
+ "name":"Day 08",
681
+ "slug":"42-piscine-c-formation-piscine-php-day-08",
682
+ "parent_id":48
683
+ },
684
+ "cursus_ids":[
685
+ 1
686
+ ],
687
+ "marked_at":"2017-10-30T09:46:20.024Z",
688
+ "marked":true,
689
+ "retriable_at":"2017-10-30T09:46:19.997Z"
690
+ },
691
+ {
692
+ "id":647137,
693
+ "occurrence":0,
694
+ "final_mark":100,
695
+ "status":"finished",
696
+ "validated?":true,
697
+ "current_team_id":1728643,
698
+ "project":{
699
+ "id":55,
700
+ "name":"Day 06",
701
+ "slug":"42-piscine-c-formation-piscine-php-day-06",
702
+ "parent_id":48
703
+ },
704
+ "cursus_ids":[
705
+ 1
706
+ ],
707
+ "marked_at":"2017-10-30T09:46:16.640Z",
708
+ "marked":true,
709
+ "retriable_at":"2017-10-30T09:46:16.615Z"
710
+ },
711
+ {
712
+ "id":647130,
713
+ "occurrence":0,
714
+ "final_mark":100,
715
+ "status":"finished",
716
+ "validated?":true,
717
+ "current_team_id":1728647,
718
+ "project":{
719
+ "id":49,
720
+ "name":"Day 00",
721
+ "slug":"42-piscine-c-formation-piscine-php-day-00",
722
+ "parent_id":48
723
+ },
724
+ "cursus_ids":[
725
+ 1
726
+ ],
727
+ "marked_at":"2017-10-30T09:56:23.449Z",
728
+ "marked":true,
729
+ "retriable_at":"2017-10-30T09:56:23.426Z"
730
+ },
731
+ {
732
+ "id":647140,
733
+ "occurrence":0,
734
+ "final_mark":100,
735
+ "status":"finished",
736
+ "validated?":true,
737
+ "current_team_id":1728646,
738
+ "project":{
739
+ "id":58,
740
+ "name":"Day 09",
741
+ "slug":"42-piscine-c-formation-piscine-php-day-09",
742
+ "parent_id":48
743
+ },
744
+ "cursus_ids":[
745
+ 1
746
+ ],
747
+ "marked_at":"2017-10-30T09:46:21.440Z",
748
+ "marked":true,
749
+ "retriable_at":"2017-10-30T09:46:21.426Z"
750
+ },
751
+ {
752
+ "id":647138,
753
+ "occurrence":0,
754
+ "final_mark":100,
755
+ "status":"finished",
756
+ "validated?":true,
757
+ "current_team_id":1728644,
758
+ "project":{
759
+ "id":56,
760
+ "name":"Day 07",
761
+ "slug":"42-piscine-c-formation-piscine-php-day-07",
762
+ "parent_id":48
763
+ },
764
+ "cursus_ids":[
765
+ 1
766
+ ],
767
+ "marked_at":"2017-10-30T09:46:18.297Z",
768
+ "marked":true,
769
+ "retriable_at":"2017-10-30T09:46:18.272Z"
770
+ },
771
+ {
772
+ "id":647132,
773
+ "occurrence":0,
774
+ "final_mark":100,
775
+ "status":"finished",
776
+ "validated?":true,
777
+ "current_team_id":1728639,
778
+ "project":{
779
+ "id":51,
780
+ "name":"Day 02",
781
+ "slug":"42-piscine-c-formation-piscine-php-day-02",
782
+ "parent_id":48
783
+ },
784
+ "cursus_ids":[
785
+ 1
786
+ ],
787
+ "marked_at":"2017-10-30T09:46:11.788Z",
788
+ "marked":true,
789
+ "retriable_at":"2017-10-30T09:46:11.775Z"
790
+ },
791
+ {
792
+ "id":647133,
793
+ "occurrence":0,
794
+ "final_mark":100,
795
+ "status":"finished",
796
+ "validated?":true,
797
+ "current_team_id":1728640,
798
+ "project":{
799
+ "id":52,
800
+ "name":"Day 03",
801
+ "slug":"42-piscine-c-formation-piscine-php-day-03",
802
+ "parent_id":48
803
+ },
804
+ "cursus_ids":[
805
+ 1
806
+ ],
807
+ "marked_at":"2017-10-30T09:46:12.574Z",
808
+ "marked":true,
809
+ "retriable_at":"2017-10-30T09:46:12.553Z"
810
+ },
811
+ {
812
+ "id":647134,
813
+ "occurrence":0,
814
+ "final_mark":100,
815
+ "status":"finished",
816
+ "validated?":true,
817
+ "current_team_id":1728641,
818
+ "project":{
819
+ "id":53,
820
+ "name":"Day 04",
821
+ "slug":"42-piscine-c-formation-piscine-php-day-04",
822
+ "parent_id":48
823
+ },
824
+ "cursus_ids":[
825
+ 1
826
+ ],
827
+ "marked_at":"2017-10-30T09:46:13.729Z",
828
+ "marked":true,
829
+ "retriable_at":"2017-10-30T09:46:13.707Z"
830
+ },
831
+ {
832
+ "id":510252,
833
+ "occurrence":0,
834
+ "final_mark":118,
835
+ "status":"finished",
836
+ "validated?":true,
837
+ "current_team_id":1647106,
838
+ "project":{
839
+ "id":596,
840
+ "name":"Matcha",
841
+ "slug":"matcha",
842
+ "parent_id":null
843
+ },
844
+ "cursus_ids":[
845
+ 1
846
+ ],
847
+ "marked_at":"2017-10-21T13:54:23.662Z",
848
+ "marked":true,
849
+ "retriable_at":"2017-10-28T13:54:21.000Z"
850
+ },
851
+ {
852
+ "id":557311,
853
+ "occurrence":0,
854
+ "final_mark":100,
855
+ "status":"finished",
856
+ "validated?":true,
857
+ "current_team_id":1619659,
858
+ "project":{
859
+ "id":121,
860
+ "name":"Peer Video",
861
+ "slug":"first-internship-peer-video",
862
+ "parent_id":118
863
+ },
864
+ "cursus_ids":[
865
+ 1
866
+ ],
867
+ "marked_at":"2018-01-10T11:55:46.173Z",
868
+ "marked":true,
869
+ "retriable_at":"2018-01-10T11:55:43.877Z"
870
+ },
871
+ {
872
+ "id":557310,
873
+ "occurrence":0,
874
+ "final_mark":111,
875
+ "status":"finished",
876
+ "validated?":true,
877
+ "current_team_id":1619658,
878
+ "project":{
879
+ "id":120,
880
+ "name":"Company final evaluation",
881
+ "slug":"first-internship-company-final-evaluation",
882
+ "parent_id":118
883
+ },
884
+ "cursus_ids":[
885
+ 1
886
+ ],
887
+ "marked_at":"2018-04-17T08:39:55.911Z",
888
+ "marked":true,
889
+ "retriable_at":null
890
+ },
891
+ {
892
+ "id":557309,
893
+ "occurrence":0,
894
+ "final_mark":103,
895
+ "status":"finished",
896
+ "validated?":true,
897
+ "current_team_id":1619657,
898
+ "project":{
899
+ "id":826,
900
+ "name":"Company mid evaluation",
901
+ "slug":"first-internship-company-mid-evaluation",
902
+ "parent_id":118
903
+ },
904
+ "cursus_ids":[
905
+ 1
906
+ ],
907
+ "marked_at":"2017-10-30T17:30:25.545Z",
908
+ "marked":true,
909
+ "retriable_at":null
910
+ },
911
+ {
912
+ "id":557308,
913
+ "occurrence":0,
914
+ "final_mark":125,
915
+ "status":"finished",
916
+ "validated?":true,
917
+ "current_team_id":1619656,
918
+ "project":{
919
+ "id":140,
920
+ "name":"Duration",
921
+ "slug":"first-internship-duration",
922
+ "parent_id":118
923
+ },
924
+ "cursus_ids":[
925
+ 1
926
+ ],
927
+ "marked_at":"2017-07-13T15:24:05.314Z",
928
+ "marked":true,
929
+ "retriable_at":null
930
+ },
931
+ {
932
+ "id":557307,
933
+ "occurrence":0,
934
+ "final_mark":100,
935
+ "status":"finished",
936
+ "validated?":true,
937
+ "current_team_id":1619655,
938
+ "project":{
939
+ "id":119,
940
+ "name":"Contract Upload",
941
+ "slug":"first-internship-contract-upload",
942
+ "parent_id":118
943
+ },
944
+ "cursus_ids":[
945
+ 1
946
+ ],
947
+ "marked_at":"2017-07-13T15:24:06.188Z",
948
+ "marked":true,
949
+ "retriable_at":"2017-07-13T15:22:35.355Z"
950
+ },
951
+ {
952
+ "id":490349,
953
+ "occurrence":0,
954
+ "final_mark":100,
955
+ "status":"finished",
956
+ "validated?":true,
957
+ "current_team_id":1539043,
958
+ "project":{
959
+ "id":537,
960
+ "name":"Camagru",
961
+ "slug":"camagru",
962
+ "parent_id":null
963
+ },
964
+ "cursus_ids":[
965
+ 1
966
+ ],
967
+ "marked_at":"2017-06-26T21:53:01.617Z",
968
+ "marked":true,
969
+ "retriable_at":"2017-06-30T21:53:01.595Z"
970
+ },
971
+ {
972
+ "id":445223,
973
+ "occurrence":0,
974
+ "final_mark":0,
975
+ "status":"finished",
976
+ "validated?":false,
977
+ "current_team_id":1483034,
978
+ "project":{
979
+ "id":803,
980
+ "name":"Rush01",
981
+ "slug":"piscine-ruby-on-rails-rush01",
982
+ "parent_id":791
983
+ },
984
+ "cursus_ids":[
985
+ 1
986
+ ],
987
+ "marked_at":"2018-04-24T12:17:53.476Z",
988
+ "marked":true,
989
+ "retriable_at":"2018-04-24T12:17:53.464Z"
990
+ },
991
+ {
992
+ "id":445417,
993
+ "occurrence":0,
994
+ "final_mark":0,
995
+ "status":"finished",
996
+ "validated?":false,
997
+ "current_team_id":1482625,
998
+ "project":{
999
+ "id":802,
1000
+ "name":"Day 09",
1001
+ "slug":"piscine-ruby-on-rails-day-09",
1002
+ "parent_id":791
1003
+ },
1004
+ "cursus_ids":[
1005
+ 1
1006
+ ],
1007
+ "marked_at":"2016-12-19T08:51:36.563Z",
1008
+ "marked":true,
1009
+ "retriable_at":"2016-12-19T08:51:36.542Z"
1010
+ },
1011
+ {
1012
+ "id":445398,
1013
+ "occurrence":0,
1014
+ "final_mark":60,
1015
+ "status":"finished",
1016
+ "validated?":true,
1017
+ "current_team_id":1482605,
1018
+ "project":{
1019
+ "id":801,
1020
+ "name":"Day 08",
1021
+ "slug":"piscine-ruby-on-rails-day-08",
1022
+ "parent_id":791
1023
+ },
1024
+ "cursus_ids":[
1025
+ 1
1026
+ ],
1027
+ "marked_at":"2016-12-18T10:28:33.716Z",
1028
+ "marked":true,
1029
+ "retriable_at":null
1030
+ },
1031
+ {
1032
+ "id":445249,
1033
+ "occurrence":0,
1034
+ "final_mark":0,
1035
+ "status":"finished",
1036
+ "validated?":false,
1037
+ "current_team_id":1482406,
1038
+ "project":{
1039
+ "id":800,
1040
+ "name":"Day 07",
1041
+ "slug":"piscine-ruby-on-rails-day-07",
1042
+ "parent_id":791
1043
+ },
1044
+ "cursus_ids":[
1045
+ 1
1046
+ ],
1047
+ "marked_at":"2016-12-19T08:51:44.969Z",
1048
+ "marked":true,
1049
+ "retriable_at":null
1050
+ },
1051
+ {
1052
+ "id":444700,
1053
+ "occurrence":0,
1054
+ "final_mark":0,
1055
+ "status":"finished",
1056
+ "validated?":false,
1057
+ "current_team_id":1481444,
1058
+ "project":{
1059
+ "id":799,
1060
+ "name":"Day 06",
1061
+ "slug":"piscine-ruby-on-rails-day-06",
1062
+ "parent_id":791
1063
+ },
1064
+ "cursus_ids":[
1065
+ 1
1066
+ ],
1067
+ "marked_at":"2017-09-02T13:22:49.622Z",
1068
+ "marked":true,
1069
+ "retriable_at":null
1070
+ },
1071
+ {
1072
+ "id":444265,
1073
+ "occurrence":0,
1074
+ "final_mark":67,
1075
+ "status":"finished",
1076
+ "validated?":true,
1077
+ "current_team_id":1481293,
1078
+ "project":{
1079
+ "id":797,
1080
+ "name":"Rush00",
1081
+ "slug":"piscine-ruby-on-rails-rush00",
1082
+ "parent_id":791
1083
+ },
1084
+ "cursus_ids":[
1085
+ 1
1086
+ ],
1087
+ "marked_at":"2016-12-12T11:14:22.358Z",
1088
+ "marked":true,
1089
+ "retriable_at":null
1090
+ },
1091
+ {
1092
+ "id":444563,
1093
+ "occurrence":0,
1094
+ "final_mark":0,
1095
+ "status":"finished",
1096
+ "validated?":false,
1097
+ "current_team_id":1481155,
1098
+ "project":{
1099
+ "id":798,
1100
+ "name":"Day 05",
1101
+ "slug":"piscine-ruby-on-rails-day-05",
1102
+ "parent_id":791
1103
+ },
1104
+ "cursus_ids":[
1105
+ 1
1106
+ ],
1107
+ "marked_at":"2017-01-23T15:45:59.963Z",
1108
+ "marked":true,
1109
+ "retriable_at":null
1110
+ },
1111
+ {
1112
+ "id":444246,
1113
+ "occurrence":0,
1114
+ "final_mark":57,
1115
+ "status":"finished",
1116
+ "validated?":true,
1117
+ "current_team_id":1480669,
1118
+ "project":{
1119
+ "id":795,
1120
+ "name":"Day 03",
1121
+ "slug":"piscine-ruby-on-rails-day-03",
1122
+ "parent_id":791
1123
+ },
1124
+ "cursus_ids":[
1125
+ 1
1126
+ ],
1127
+ "marked_at":"2017-09-02T13:21:15.772Z",
1128
+ "marked":true,
1129
+ "retriable_at":"2016-12-10T08:32:11.097Z"
1130
+ },
1131
+ {
1132
+ "id":444017,
1133
+ "occurrence":0,
1134
+ "final_mark":52,
1135
+ "status":"finished",
1136
+ "validated?":true,
1137
+ "current_team_id":1480110,
1138
+ "project":{
1139
+ "id":796,
1140
+ "name":"Day 04",
1141
+ "slug":"piscine-ruby-on-rails-day-04",
1142
+ "parent_id":791
1143
+ },
1144
+ "cursus_ids":[
1145
+ 1
1146
+ ],
1147
+ "marked_at":"2017-09-02T13:21:45.061Z",
1148
+ "marked":true,
1149
+ "retriable_at":null
1150
+ },
1151
+ {
1152
+ "id":443840,
1153
+ "occurrence":0,
1154
+ "final_mark":79,
1155
+ "status":"finished",
1156
+ "validated?":true,
1157
+ "current_team_id":1479803,
1158
+ "project":{
1159
+ "id":793,
1160
+ "name":"Day 01",
1161
+ "slug":"piscine-ruby-on-rails-day-01",
1162
+ "parent_id":791
1163
+ },
1164
+ "cursus_ids":[
1165
+ 1
1166
+ ],
1167
+ "marked_at":"2017-04-14T12:09:05.529Z",
1168
+ "marked":true,
1169
+ "retriable_at":"2016-12-08T09:31:57.882Z"
1170
+ },
1171
+ {
1172
+ "id":443734,
1173
+ "occurrence":0,
1174
+ "final_mark":54,
1175
+ "status":"finished",
1176
+ "validated?":true,
1177
+ "current_team_id":1479633,
1178
+ "project":{
1179
+ "id":794,
1180
+ "name":"Day 02",
1181
+ "slug":"piscine-ruby-on-rails-day-02",
1182
+ "parent_id":791
1183
+ },
1184
+ "cursus_ids":[
1185
+ 1
1186
+ ],
1187
+ "marked_at":"2017-09-02T13:20:48.671Z",
1188
+ "marked":true,
1189
+ "retriable_at":"2016-12-09T08:31:34.860Z"
1190
+ },
1191
+ {
1192
+ "id":443507,
1193
+ "occurrence":0,
1194
+ "final_mark":100,
1195
+ "status":"finished",
1196
+ "validated?":true,
1197
+ "current_team_id":1479238,
1198
+ "project":{
1199
+ "id":792,
1200
+ "name":"Day 00",
1201
+ "slug":"piscine-ruby-on-rails-day-00",
1202
+ "parent_id":791
1203
+ },
1204
+ "cursus_ids":[
1205
+ 1
1206
+ ],
1207
+ "marked_at":"2017-09-02T13:20:20.725Z",
1208
+ "marked":true,
1209
+ "retriable_at":"2016-12-07T11:54:49.168Z"
1210
+ },
1211
+ {
1212
+ "id":441655,
1213
+ "occurrence":0,
1214
+ "final_mark":125,
1215
+ "status":"finished",
1216
+ "validated?":true,
1217
+ "current_team_id":1476768,
1218
+ "project":{
1219
+ "id":4,
1220
+ "name":"FdF",
1221
+ "slug":"fdf",
1222
+ "parent_id":null
1223
+ },
1224
+ "cursus_ids":[
1225
+ 1
1226
+ ],
1227
+ "marked_at":"2017-01-19T13:14:05.528Z",
1228
+ "marked":true,
1229
+ "retriable_at":"2017-01-23T13:14:03.928Z"
1230
+ },
1231
+ {
1232
+ "id":441081,
1233
+ "occurrence":0,
1234
+ "final_mark":120,
1235
+ "status":"finished",
1236
+ "validated?":true,
1237
+ "current_team_id":1475754,
1238
+ "project":{
1239
+ "id":2,
1240
+ "name":"GET_Next_Line",
1241
+ "slug":"get_next_line",
1242
+ "parent_id":null
1243
+ },
1244
+ "cursus_ids":[
1245
+ 1
1246
+ ],
1247
+ "marked_at":"2016-11-23T13:53:08.519Z",
1248
+ "marked":true,
1249
+ "retriable_at":"2016-11-24T13:53:08.498Z"
1250
+ },
1251
+ {
1252
+ "id":438787,
1253
+ "occurrence":0,
1254
+ "final_mark":100,
1255
+ "status":"finished",
1256
+ "validated?":true,
1257
+ "current_team_id":1472240,
1258
+ "project":{
1259
+ "id":540,
1260
+ "name":"Fillit",
1261
+ "slug":"fillit",
1262
+ "parent_id":null
1263
+ },
1264
+ "cursus_ids":[
1265
+ 1
1266
+ ],
1267
+ "marked_at":"2016-11-21T10:15:08.258Z",
1268
+ "marked":true,
1269
+ "retriable_at":"2016-11-23T10:15:08.142Z"
1270
+ },
1271
+ {
1272
+ "id":433800,
1273
+ "occurrence":0,
1274
+ "final_mark":125,
1275
+ "status":"finished",
1276
+ "validated?":true,
1277
+ "current_team_id":1465152,
1278
+ "project":{
1279
+ "id":1,
1280
+ "name":"Libft",
1281
+ "slug":"libft",
1282
+ "parent_id":null
1283
+ },
1284
+ "cursus_ids":[
1285
+ 1
1286
+ ],
1287
+ "marked_at":"2017-11-11T12:20:50.167Z",
1288
+ "marked":true,
1289
+ "retriable_at":"2017-11-12T12:20:50.145Z"
1290
+ },
1291
+ {
1292
+ "id":428286,
1293
+ "occurrence":7,
1294
+ "final_mark":100,
1295
+ "status":"finished",
1296
+ "validated?":true,
1297
+ "current_team_id":1465141,
1298
+ "project":{
1299
+ "id":756,
1300
+ "name":"Piscine Reloaded",
1301
+ "slug":"piscine-reloaded",
1302
+ "parent_id":null
1303
+ },
1304
+ "cursus_ids":[
1305
+ 1
1306
+ ],
1307
+ "marked_at":"2016-11-04T11:05:10.867Z",
1308
+ "marked":true,
1309
+ "retriable_at":"2016-11-04T11:05:10.842Z"
1310
+ },
1311
+ {
1312
+ "id":428058,
1313
+ "occurrence":0,
1314
+ "final_mark":100,
1315
+ "status":"finished",
1316
+ "validated?":true,
1317
+ "current_team_id":1458252,
1318
+ "project":{
1319
+ "id":817,
1320
+ "name":"42 Commandements",
1321
+ "slug":"42-formation-pole-emploi-42-commandements",
1322
+ "parent_id":null
1323
+ },
1324
+ "cursus_ids":[
1325
+ 1
1326
+ ],
1327
+ "marked_at":"2016-11-02T09:34:42.896Z",
1328
+ "marked":true,
1329
+ "retriable_at":"2016-11-02T09:34:42.868Z"
1330
+ },
1331
+ {
1332
+ "id":305685,
1333
+ "occurrence":0,
1334
+ "final_mark":100,
1335
+ "status":"finished",
1336
+ "validated?":true,
1337
+ "current_team_id":1331518,
1338
+ "project":{
1339
+ "id":170,
1340
+ "name":"Rush 02",
1341
+ "slug":"piscine-c-rush-02",
1342
+ "parent_id":null
1343
+ },
1344
+ "cursus_ids":[
1345
+ 4
1346
+ ],
1347
+ "marked_at":"2016-08-08T22:12:05.820Z",
1348
+ "marked":true,
1349
+ "retriable_at":"2016-07-28T13:03:50.789Z"
1350
+ },
1351
+ {
1352
+ "id":305684,
1353
+ "occurrence":0,
1354
+ "final_mark":0,
1355
+ "status":"finished",
1356
+ "validated?":false,
1357
+ "current_team_id":1327458,
1358
+ "project":{
1359
+ "id":173,
1360
+ "name":"EvalExpr",
1361
+ "slug":"piscine-c-evalexpr",
1362
+ "parent_id":null
1363
+ },
1364
+ "cursus_ids":[
1365
+ 4
1366
+ ],
1367
+ "marked_at":"2016-07-25T21:51:31.751Z",
1368
+ "marked":true,
1369
+ "retriable_at":"2016-07-25T21:51:31.721Z"
1370
+ },
1371
+ {
1372
+ "id":302832,
1373
+ "occurrence":0,
1374
+ "final_mark":0,
1375
+ "status":"finished",
1376
+ "validated?":false,
1377
+ "current_team_id":1325029,
1378
+ "project":{
1379
+ "id":174,
1380
+ "name":"BSQ",
1381
+ "slug":"bsq",
1382
+ "parent_id":null
1383
+ },
1384
+ "cursus_ids":[
1385
+ 4
1386
+ ],
1387
+ "marked_at":"2017-08-26T08:52:14.651Z",
1388
+ "marked":true,
1389
+ "retriable_at":"2016-07-28T11:30:57.306Z"
1390
+ },
1391
+ {
1392
+ "id":302233,
1393
+ "occurrence":0,
1394
+ "final_mark":0,
1395
+ "status":"finished",
1396
+ "validated?":false,
1397
+ "current_team_id":1324427,
1398
+ "project":{
1399
+ "id":166,
1400
+ "name":"Day 13",
1401
+ "slug":"piscine-c-day-13",
1402
+ "parent_id":null
1403
+ },
1404
+ "cursus_ids":[
1405
+ 4
1406
+ ],
1407
+ "marked_at":"2016-07-23T22:08:20.470Z",
1408
+ "marked":true,
1409
+ "retriable_at":"2016-07-23T22:08:20.448Z"
1410
+ },
1411
+ {
1412
+ "id":301506,
1413
+ "occurrence":0,
1414
+ "final_mark":25,
1415
+ "status":"finished",
1416
+ "validated?":true,
1417
+ "current_team_id":1323691,
1418
+ "project":{
1419
+ "id":165,
1420
+ "name":"Day 12",
1421
+ "slug":"piscine-c-day-12",
1422
+ "parent_id":null
1423
+ },
1424
+ "cursus_ids":[
1425
+ 4
1426
+ ],
1427
+ "marked_at":"2016-07-23T17:53:08.135Z",
1428
+ "marked":true,
1429
+ "retriable_at":"2016-07-22T12:13:34.491Z"
1430
+ },
1431
+ {
1432
+ "id":300265,
1433
+ "occurrence":0,
1434
+ "final_mark":5,
1435
+ "status":"finished",
1436
+ "validated?":false,
1437
+ "current_team_id":1322428,
1438
+ "project":{
1439
+ "id":164,
1440
+ "name":"Day 11",
1441
+ "slug":"piscine-c-day-11",
1442
+ "parent_id":null
1443
+ },
1444
+ "cursus_ids":[
1445
+ 4
1446
+ ],
1447
+ "marked_at":"2016-07-23T18:02:57.536Z",
1448
+ "marked":true,
1449
+ "retriable_at":"2016-07-21T09:06:03.906Z"
1450
+ },
1451
+ {
1452
+ "id":300264,
1453
+ "occurrence":0,
1454
+ "final_mark":25,
1455
+ "status":"finished",
1456
+ "validated?":true,
1457
+ "current_team_id":1322427,
1458
+ "project":{
1459
+ "id":163,
1460
+ "name":"Day 10",
1461
+ "slug":"piscine-c-day-10",
1462
+ "parent_id":null
1463
+ },
1464
+ "cursus_ids":[
1465
+ 4
1466
+ ],
1467
+ "marked_at":"2017-07-19T12:14:42.803Z",
1468
+ "marked":true,
1469
+ "retriable_at":"2016-07-20T07:33:55.004Z"
1470
+ },
1471
+ {
1472
+ "id":280586,
1473
+ "occurrence":0,
1474
+ "final_mark":0,
1475
+ "status":"finished",
1476
+ "validated?":false,
1477
+ "current_team_id":1321552,
1478
+ "project":{
1479
+ "id":169,
1480
+ "name":"Rush 01",
1481
+ "slug":"piscine-c-rush-01",
1482
+ "parent_id":null
1483
+ },
1484
+ "cursus_ids":[
1485
+ 4
1486
+ ],
1487
+ "marked_at":"2016-08-08T22:11:01.108Z",
1488
+ "marked":true,
1489
+ "retriable_at":"2016-07-19T11:28:14.003Z"
1490
+ },
1491
+ {
1492
+ "id":280348,
1493
+ "occurrence":0,
1494
+ "final_mark":0,
1495
+ "status":"finished",
1496
+ "validated?":false,
1497
+ "current_team_id":1302466,
1498
+ "project":{
1499
+ "id":172,
1500
+ "name":"Match-N-Match",
1501
+ "slug":"piscine-c-match-n-match",
1502
+ "parent_id":null
1503
+ },
1504
+ "cursus_ids":[
1505
+ 4
1506
+ ],
1507
+ "marked_at":"2017-08-14T07:41:32.464Z",
1508
+ "marked":true,
1509
+ "retriable_at":"2016-07-20T16:21:09.214Z"
1510
+ },
1511
+ {
1512
+ "id":270808,
1513
+ "occurrence":0,
1514
+ "final_mark":0,
1515
+ "status":"finished",
1516
+ "validated?":false,
1517
+ "current_team_id":1292967,
1518
+ "project":{
1519
+ "id":162,
1520
+ "name":"Day 08",
1521
+ "slug":"piscine-c-day-08",
1522
+ "parent_id":null
1523
+ },
1524
+ "cursus_ids":[
1525
+ 4
1526
+ ],
1527
+ "marked_at":"2016-07-17T08:58:20.205Z",
1528
+ "marked":true,
1529
+ "retriable_at":"2016-07-17T08:58:20.183Z"
1530
+ },
1531
+ {
1532
+ "id":269669,
1533
+ "occurrence":0,
1534
+ "final_mark":16,
1535
+ "status":"finished",
1536
+ "validated?":false,
1537
+ "current_team_id":1291599,
1538
+ "project":{
1539
+ "id":161,
1540
+ "name":"Day 07",
1541
+ "slug":"piscine-c-day-07",
1542
+ "parent_id":null
1543
+ },
1544
+ "cursus_ids":[
1545
+ 4
1546
+ ],
1547
+ "marked_at":"2016-07-15T21:45:38.366Z",
1548
+ "marked":true,
1549
+ "retriable_at":"2016-07-15T21:45:38.355Z"
1550
+ },
1551
+ {
1552
+ "id":269341,
1553
+ "occurrence":0,
1554
+ "final_mark":70,
1555
+ "status":"finished",
1556
+ "validated?":true,
1557
+ "current_team_id":1291266,
1558
+ "project":{
1559
+ "id":160,
1560
+ "name":"Day 06",
1561
+ "slug":"piscine-c-day-06",
1562
+ "parent_id":null
1563
+ },
1564
+ "cursus_ids":[
1565
+ 4
1566
+ ],
1567
+ "marked_at":"2016-07-14T10:30:47.314Z",
1568
+ "marked":true,
1569
+ "retriable_at":"2016-07-14T10:30:47.290Z"
1570
+ },
1571
+ {
1572
+ "id":267718,
1573
+ "occurrence":0,
1574
+ "final_mark":100,
1575
+ "status":"finished",
1576
+ "validated?":true,
1577
+ "current_team_id":1290709,
1578
+ "project":{
1579
+ "id":168,
1580
+ "name":"Rush 00",
1581
+ "slug":"piscine-c-rush-00",
1582
+ "parent_id":null
1583
+ },
1584
+ "cursus_ids":[
1585
+ 4
1586
+ ],
1587
+ "marked_at":"2017-09-16T11:52:20.454Z",
1588
+ "marked":true,
1589
+ "retriable_at":"2016-07-13T14:39:17.628Z"
1590
+ },
1591
+ {
1592
+ "id":268069,
1593
+ "occurrence":0,
1594
+ "final_mark":20,
1595
+ "status":"finished",
1596
+ "validated?":false,
1597
+ "current_team_id":1289816,
1598
+ "project":{
1599
+ "id":159,
1600
+ "name":"Day 05",
1601
+ "slug":"piscine-c-day-05",
1602
+ "parent_id":null
1603
+ },
1604
+ "cursus_ids":[
1605
+ 4
1606
+ ],
1607
+ "marked_at":"2016-07-23T03:10:40.577Z",
1608
+ "marked":true,
1609
+ "retriable_at":"2016-07-13T12:15:30.702Z"
1610
+ },
1611
+ {
1612
+ "id":267717,
1613
+ "occurrence":0,
1614
+ "final_mark":0,
1615
+ "status":"finished",
1616
+ "validated?":false,
1617
+ "current_team_id":1289561,
1618
+ "project":{
1619
+ "id":171,
1620
+ "name":"Sastantua",
1621
+ "slug":"piscine-c-sastantua",
1622
+ "parent_id":null
1623
+ },
1624
+ "cursus_ids":[
1625
+ 4
1626
+ ],
1627
+ "marked_at":"2017-09-08T14:55:07.132Z",
1628
+ "marked":true,
1629
+ "retriable_at":"2016-07-15T20:15:17.665Z"
1630
+ },
1631
+ {
1632
+ "id":264171,
1633
+ "occurrence":0,
1634
+ "final_mark":20,
1635
+ "status":"finished",
1636
+ "validated?":false,
1637
+ "current_team_id":1286582,
1638
+ "project":{
1639
+ "id":158,
1640
+ "name":"Day 04",
1641
+ "slug":"piscine-c-day-04",
1642
+ "parent_id":null
1643
+ },
1644
+ "cursus_ids":[
1645
+ 4
1646
+ ],
1647
+ "marked_at":"2016-08-06T10:07:36.923Z",
1648
+ "marked":true,
1649
+ "retriable_at":"2016-07-10T16:20:58.775Z"
1650
+ },
1651
+ {
1652
+ "id":262516,
1653
+ "occurrence":0,
1654
+ "final_mark":65,
1655
+ "status":"finished",
1656
+ "validated?":true,
1657
+ "current_team_id":1284884,
1658
+ "project":{
1659
+ "id":157,
1660
+ "name":"Day 03",
1661
+ "slug":"piscine-c-day-03",
1662
+ "parent_id":null
1663
+ },
1664
+ "cursus_ids":[
1665
+ 4
1666
+ ],
1667
+ "marked_at":"2017-09-08T17:01:47.326Z",
1668
+ "marked":true,
1669
+ "retriable_at":"2016-07-10T16:01:36.514Z"
1670
+ },
1671
+ {
1672
+ "id":262515,
1673
+ "occurrence":0,
1674
+ "final_mark":43,
1675
+ "status":"finished",
1676
+ "validated?":true,
1677
+ "current_team_id":1284883,
1678
+ "project":{
1679
+ "id":156,
1680
+ "name":"Day 02",
1681
+ "slug":"piscine-c-day-02",
1682
+ "parent_id":null
1683
+ },
1684
+ "cursus_ids":[
1685
+ 4
1686
+ ],
1687
+ "marked_at":"2016-07-23T02:18:25.281Z",
1688
+ "marked":true,
1689
+ "retriable_at":"2016-07-08T12:05:48.874Z"
1690
+ },
1691
+ {
1692
+ "id":262513,
1693
+ "occurrence":0,
1694
+ "final_mark":85,
1695
+ "status":"finished",
1696
+ "validated?":true,
1697
+ "current_team_id":1284881,
1698
+ "project":{
1699
+ "id":155,
1700
+ "name":"Day 01",
1701
+ "slug":"piscine-c-day-01",
1702
+ "parent_id":null
1703
+ },
1704
+ "cursus_ids":[
1705
+ 4
1706
+ ],
1707
+ "marked_at":"2016-07-23T02:01:40.041Z",
1708
+ "marked":true,
1709
+ "retriable_at":"2016-07-07T15:16:58.180Z"
1710
+ },
1711
+ {
1712
+ "id":260667,
1713
+ "occurrence":0,
1714
+ "final_mark":50,
1715
+ "status":"finished",
1716
+ "validated?":true,
1717
+ "current_team_id":1283022,
1718
+ "project":{
1719
+ "id":154,
1720
+ "name":"Day 00",
1721
+ "slug":"piscine-c-day-00",
1722
+ "parent_id":null
1723
+ },
1724
+ "cursus_ids":[
1725
+ 4
1726
+ ],
1727
+ "marked_at":"2016-07-23T01:43:53.891Z",
1728
+ "marked":true,
1729
+ "retriable_at":"2016-07-06T15:43:45.128Z"
1730
+ },
1731
+ {
1732
+ "id":285242,
1733
+ "occurrence":0,
1734
+ "final_mark":0,
1735
+ "status":"finished",
1736
+ "validated?":true,
1737
+ "current_team_id":1307201,
1738
+ "project":{
1739
+ "id":203,
1740
+ "name":"19",
1741
+ "slug":"piscine-c-day-09-19",
1742
+ "parent_id":167
1743
+ },
1744
+ "cursus_ids":[
1745
+ 4
1746
+ ],
1747
+ "marked_at":"2017-09-01T17:52:54.763Z",
1748
+ "marked":true,
1749
+ "retriable_at":"2017-09-01T17:52:54.731Z"
1750
+ },
1751
+ {
1752
+ "id":285237,
1753
+ "occurrence":0,
1754
+ "final_mark":0,
1755
+ "status":"finished",
1756
+ "validated?":true,
1757
+ "current_team_id":1307196,
1758
+ "project":{
1759
+ "id":202,
1760
+ "name":"18",
1761
+ "slug":"piscine-c-day-09-18",
1762
+ "parent_id":167
1763
+ },
1764
+ "cursus_ids":[
1765
+ 4
1766
+ ],
1767
+ "marked_at":"2017-09-01T17:52:56.112Z",
1768
+ "marked":true,
1769
+ "retriable_at":"2017-09-01T17:52:56.082Z"
1770
+ },
1771
+ {
1772
+ "id":303695,
1773
+ "occurrence":0,
1774
+ "final_mark":94,
1775
+ "status":"finished",
1776
+ "validated?":true,
1777
+ "current_team_id":1325689,
1778
+ "project":{
1779
+ "id":406,
1780
+ "name":"Exam02",
1781
+ "slug":"piscine-c-exam02",
1782
+ "parent_id":null
1783
+ },
1784
+ "cursus_ids":[
1785
+ 4
1786
+ ],
1787
+ "marked_at":"2016-07-19T17:56:18.000Z",
1788
+ "marked":true,
1789
+ "retriable_at":"2017-06-26T21:47:08.881Z"
1790
+ },
1791
+ {
1792
+ "id":311027,
1793
+ "occurrence":0,
1794
+ "final_mark":75,
1795
+ "status":"finished",
1796
+ "validated?":true,
1797
+ "current_team_id":1332698,
1798
+ "project":{
1799
+ "id":407,
1800
+ "name":"Exam Final",
1801
+ "slug":"piscine-c-exam-final",
1802
+ "parent_id":null
1803
+ },
1804
+ "cursus_ids":[
1805
+ 4
1806
+ ],
1807
+ "marked_at":"2016-07-26T08:05:04.000Z",
1808
+ "marked":true,
1809
+ "retriable_at":"2017-06-26T21:48:14.023Z"
1810
+ },
1811
+ {
1812
+ "id":440462,
1813
+ "occurrence":5,
1814
+ "final_mark":79,
1815
+ "status":"finished",
1816
+ "validated?":true,
1817
+ "current_team_id":1483734,
1818
+ "project":{
1819
+ "id":11,
1820
+ "name":"C Exam Alone In The Dark - Beginner",
1821
+ "slug":"c-exam-alone-in-the-dark-beginner",
1822
+ "parent_id":null
1823
+ },
1824
+ "cursus_ids":[
1825
+ 1
1826
+ ],
1827
+ "marked_at":"2016-12-27T10:16:57.072Z",
1828
+ "marked":true,
1829
+ "retriable_at":"2016-12-27T10:16:31.371Z"
1830
+ },
1831
+ {
1832
+ "id":443482,
1833
+ "occurrence":0,
1834
+ "final_mark":69,
1835
+ "status":"finished",
1836
+ "validated?":true,
1837
+ "current_team_id":1479204,
1838
+ "project":{
1839
+ "id":791,
1840
+ "name":"Piscine Ruby on Rails",
1841
+ "slug":"piscine-ruby-on-rails",
1842
+ "parent_id":null
1843
+ },
1844
+ "cursus_ids":[
1845
+ 1
1846
+ ],
1847
+ "marked_at":"2018-04-24T12:17:53.367Z",
1848
+ "marked":true,
1849
+ "retriable_at":"2018-04-24T12:17:53.320Z"
1850
+ },
1851
+ {
1852
+ "id":647129,
1853
+ "occurrence":0,
1854
+ "final_mark":100,
1855
+ "status":"finished",
1856
+ "validated?":true,
1857
+ "current_team_id":1728636,
1858
+ "project":{
1859
+ "id":48,
1860
+ "name":"Piscine PHP",
1861
+ "slug":"piscine-php",
1862
+ "parent_id":null
1863
+ },
1864
+ "cursus_ids":[
1865
+ 1
1866
+ ],
1867
+ "marked_at":"2017-10-30T09:57:31.242Z",
1868
+ "marked":true,
1869
+ "retriable_at":"2017-10-30T09:57:31.209Z"
1870
+ },
1871
+ {
1872
+ "id":534508,
1873
+ "occurrence":0,
1874
+ "final_mark":123,
1875
+ "status":"finished",
1876
+ "validated?":true,
1877
+ "current_team_id":1593193,
1878
+ "project":{
1879
+ "id":118,
1880
+ "name":"First Internship",
1881
+ "slug":"first-internship",
1882
+ "parent_id":null
1883
+ },
1884
+ "cursus_ids":[
1885
+ 1
1886
+ ],
1887
+ "marked_at":"2018-04-17T08:39:55.877Z",
1888
+ "marked":true,
1889
+ "retriable_at":"2018-04-17T08:39:55.837Z"
1890
+ },
1891
+ {
1892
+ "id":825428,
1893
+ "occurrence":0,
1894
+ "final_mark":125,
1895
+ "status":"finished",
1896
+ "validated?":true,
1897
+ "current_team_id":1940692,
1898
+ "project":{
1899
+ "id":209,
1900
+ "name":"Duration",
1901
+ "slug":"final-internship-duration",
1902
+ "parent_id":212
1903
+ },
1904
+ "cursus_ids":[
1905
+ 1
1906
+ ],
1907
+ "marked_at":"2018-03-23T14:10:08.490Z",
1908
+ "marked":true,
1909
+ "retriable_at":null
1910
+ },
1911
+ {
1912
+ "id":825427,
1913
+ "occurrence":0,
1914
+ "final_mark":100,
1915
+ "status":"finished",
1916
+ "validated?":true,
1917
+ "current_team_id":1940691,
1918
+ "project":{
1919
+ "id":208,
1920
+ "name":"Contract Upload",
1921
+ "slug":"final-internship-contract-upload",
1922
+ "parent_id":212
1923
+ },
1924
+ "cursus_ids":[
1925
+ 1
1926
+ ],
1927
+ "marked_at":"2018-03-23T14:10:08.050Z",
1928
+ "marked":true,
1929
+ "retriable_at":"2018-03-23T14:10:08.026Z"
1930
+ },
1931
+ {
1932
+ "id":825429,
1933
+ "occurrence":0,
1934
+ "final_mark":118,
1935
+ "status":"finished",
1936
+ "validated?":true,
1937
+ "current_team_id":1940693,
1938
+ "project":{
1939
+ "id":827,
1940
+ "name":"Company mid evaluation",
1941
+ "slug":"final-internship-company-mid-evaluation",
1942
+ "parent_id":212
1943
+ },
1944
+ "cursus_ids":[
1945
+ 1
1946
+ ],
1947
+ "marked_at":"2018-05-28T11:53:57.910Z",
1948
+ "marked":true,
1949
+ "retriable_at":null
1950
+ },
1951
+ {
1952
+ "id":791493,
1953
+ "occurrence":0,
1954
+ "final_mark":125,
1955
+ "status":"finished",
1956
+ "validated?":true,
1957
+ "current_team_id":1899477,
1958
+ "project":{
1959
+ "id":212,
1960
+ "name":"Final Internship",
1961
+ "slug":"final-internship",
1962
+ "parent_id":null
1963
+ },
1964
+ "cursus_ids":[
1965
+ 1
1966
+ ],
1967
+ "marked_at":"2018-08-28T13:21:43.234Z",
1968
+ "marked":true,
1969
+ "retriable_at":"2018-08-28T13:21:46.074Z"
1970
+ },
1971
+ {
1972
+ "id":825430,
1973
+ "occurrence":0,
1974
+ "final_mark":118,
1975
+ "status":"finished",
1976
+ "validated?":true,
1977
+ "current_team_id":1940694,
1978
+ "project":{
1979
+ "id":210,
1980
+ "name":"Company final evaluation",
1981
+ "slug":"final-internship-company-final-evaluation",
1982
+ "parent_id":212
1983
+ },
1984
+ "cursus_ids":[
1985
+ 1
1986
+ ],
1987
+ "marked_at":"2018-08-24T11:33:09.862Z",
1988
+ "marked":true,
1989
+ "retriable_at":null
1990
+ },
1991
+ {
1992
+ "id":265317,
1993
+ "occurrence":0,
1994
+ "final_mark":65,
1995
+ "status":"finished",
1996
+ "validated?":true,
1997
+ "current_team_id":1287775,
1998
+ "project":{
1999
+ "id":404,
2000
+ "name":"Exam00",
2001
+ "slug":"piscine-c-exam00",
2002
+ "parent_id":null
2003
+ },
2004
+ "cursus_ids":[
2005
+ 4
2006
+ ],
2007
+ "marked_at":"2016-07-08T16:49:32.159Z",
2008
+ "marked":true,
2009
+ "retriable_at":"2016-07-08T16:45:08.743Z"
2010
+ },
2011
+ {
2012
+ "id":274412,
2013
+ "occurrence":0,
2014
+ "final_mark":0,
2015
+ "status":"finished",
2016
+ "validated?":true,
2017
+ "current_team_id":1296663,
2018
+ "project":{
2019
+ "id":192,
2020
+ "name":"08",
2021
+ "slug":"piscine-c-day-09-08",
2022
+ "parent_id":167
2023
+ },
2024
+ "cursus_ids":[
2025
+ 4
2026
+ ],
2027
+ "marked_at":"2017-09-01T17:52:58.680Z",
2028
+ "marked":true,
2029
+ "retriable_at":"2017-09-01T17:52:58.641Z"
2030
+ },
2031
+ {
2032
+ "id":274454,
2033
+ "occurrence":0,
2034
+ "final_mark":0,
2035
+ "status":"finished",
2036
+ "validated?":true,
2037
+ "current_team_id":1296705,
2038
+ "project":{
2039
+ "id":197,
2040
+ "name":"13",
2041
+ "slug":"piscine-c-day-09-13",
2042
+ "parent_id":167
2043
+ },
2044
+ "cursus_ids":[
2045
+ 4
2046
+ ],
2047
+ "marked_at":"2017-09-01T17:52:57.205Z",
2048
+ "marked":true,
2049
+ "retriable_at":"2017-09-01T17:52:57.165Z"
2050
+ },
2051
+ {
2052
+ "id":274444,
2053
+ "occurrence":0,
2054
+ "final_mark":0,
2055
+ "status":"finished",
2056
+ "validated?":true,
2057
+ "current_team_id":1296695,
2058
+ "project":{
2059
+ "id":195,
2060
+ "name":"11",
2061
+ "slug":"piscine-c-day-09-11",
2062
+ "parent_id":167
2063
+ },
2064
+ "cursus_ids":[
2065
+ 4
2066
+ ],
2067
+ "marked_at":"2017-09-01T17:52:57.881Z",
2068
+ "marked":true,
2069
+ "retriable_at":"2017-09-01T17:52:57.850Z"
2070
+ },
2071
+ {
2072
+ "id":274392,
2073
+ "occurrence":0,
2074
+ "final_mark":0,
2075
+ "status":"finished",
2076
+ "validated?":true,
2077
+ "current_team_id":1296643,
2078
+ "project":{
2079
+ "id":186,
2080
+ "name":"02",
2081
+ "slug":"piscine-c-day-09-02",
2082
+ "parent_id":167
2083
+ },
2084
+ "cursus_ids":[
2085
+ 4
2086
+ ],
2087
+ "marked_at":"2017-09-01T17:53:00.383Z",
2088
+ "marked":true,
2089
+ "retriable_at":"2017-09-01T17:53:00.352Z"
2090
+ },
2091
+ {
2092
+ "id":274413,
2093
+ "occurrence":0,
2094
+ "final_mark":0,
2095
+ "status":"finished",
2096
+ "validated?":true,
2097
+ "current_team_id":1296664,
2098
+ "project":{
2099
+ "id":193,
2100
+ "name":"09",
2101
+ "slug":"piscine-c-day-09-09",
2102
+ "parent_id":167
2103
+ },
2104
+ "cursus_ids":[
2105
+ 4
2106
+ ],
2107
+ "marked_at":"2017-09-01T17:52:58.485Z",
2108
+ "marked":true,
2109
+ "retriable_at":"2017-09-01T17:52:58.440Z"
2110
+ },
2111
+ {
2112
+ "id":274386,
2113
+ "occurrence":0,
2114
+ "final_mark":0,
2115
+ "status":"finished",
2116
+ "validated?":true,
2117
+ "current_team_id":1296637,
2118
+ "project":{
2119
+ "id":175,
2120
+ "name":"00",
2121
+ "slug":"piscine-c-day-09-00",
2122
+ "parent_id":167
2123
+ },
2124
+ "cursus_ids":[
2125
+ 4
2126
+ ],
2127
+ "marked_at":"2017-09-01T17:53:00.782Z",
2128
+ "marked":true,
2129
+ "retriable_at":"2017-09-01T17:53:00.761Z"
2130
+ },
2131
+ {
2132
+ "id":274462,
2133
+ "occurrence":0,
2134
+ "final_mark":0,
2135
+ "status":"finished",
2136
+ "validated?":true,
2137
+ "current_team_id":1296713,
2138
+ "project":{
2139
+ "id":198,
2140
+ "name":"14",
2141
+ "slug":"piscine-c-day-09-14",
2142
+ "parent_id":167
2143
+ },
2144
+ "cursus_ids":[
2145
+ 4
2146
+ ],
2147
+ "marked_at":"2017-09-01T17:52:56.948Z",
2148
+ "marked":true,
2149
+ "retriable_at":"2017-09-01T17:52:56.905Z"
2150
+ },
2151
+ {
2152
+ "id":274389,
2153
+ "occurrence":0,
2154
+ "final_mark":0,
2155
+ "status":"finished",
2156
+ "validated?":true,
2157
+ "current_team_id":1296640,
2158
+ "project":{
2159
+ "id":185,
2160
+ "name":"01",
2161
+ "slug":"piscine-c-day-09-01",
2162
+ "parent_id":167
2163
+ },
2164
+ "cursus_ids":[
2165
+ 4
2166
+ ],
2167
+ "marked_at":"2017-09-01T17:53:00.588Z",
2168
+ "marked":true,
2169
+ "retriable_at":"2017-09-01T17:53:00.552Z"
2170
+ },
2171
+ {
2172
+ "id":274394,
2173
+ "occurrence":0,
2174
+ "final_mark":0,
2175
+ "status":"finished",
2176
+ "validated?":true,
2177
+ "current_team_id":1296645,
2178
+ "project":{
2179
+ "id":187,
2180
+ "name":"03",
2181
+ "slug":"piscine-c-day-09-03",
2182
+ "parent_id":167
2183
+ },
2184
+ "cursus_ids":[
2185
+ 4
2186
+ ],
2187
+ "marked_at":"2017-09-01T17:53:00.167Z",
2188
+ "marked":true,
2189
+ "retriable_at":"2017-09-01T17:53:00.126Z"
2190
+ },
2191
+ {
2192
+ "id":274450,
2193
+ "occurrence":0,
2194
+ "final_mark":0,
2195
+ "status":"finished",
2196
+ "validated?":true,
2197
+ "current_team_id":1296701,
2198
+ "project":{
2199
+ "id":196,
2200
+ "name":"12",
2201
+ "slug":"piscine-c-day-09-12",
2202
+ "parent_id":167
2203
+ },
2204
+ "cursus_ids":[
2205
+ 4
2206
+ ],
2207
+ "marked_at":"2017-09-01T17:52:57.553Z",
2208
+ "marked":true,
2209
+ "retriable_at":"2017-09-01T17:52:57.514Z"
2210
+ },
2211
+ {
2212
+ "id":274467,
2213
+ "occurrence":0,
2214
+ "final_mark":0,
2215
+ "status":"finished",
2216
+ "validated?":true,
2217
+ "current_team_id":1296718,
2218
+ "project":{
2219
+ "id":199,
2220
+ "name":"15",
2221
+ "slug":"piscine-c-day-09-15",
2222
+ "parent_id":167
2223
+ },
2224
+ "cursus_ids":[
2225
+ 4
2226
+ ],
2227
+ "marked_at":"2017-09-01T17:52:56.634Z",
2228
+ "marked":true,
2229
+ "retriable_at":"2017-09-01T17:52:56.585Z"
2230
+ },
2231
+ {
2232
+ "id":274400,
2233
+ "occurrence":0,
2234
+ "final_mark":0,
2235
+ "status":"finished",
2236
+ "validated?":true,
2237
+ "current_team_id":1296651,
2238
+ "project":{
2239
+ "id":189,
2240
+ "name":"05",
2241
+ "slug":"piscine-c-day-09-05",
2242
+ "parent_id":167
2243
+ },
2244
+ "cursus_ids":[
2245
+ 4
2246
+ ],
2247
+ "marked_at":"2017-09-01T17:52:59.604Z",
2248
+ "marked":true,
2249
+ "retriable_at":"2017-09-01T17:52:59.556Z"
2250
+ },
2251
+ {
2252
+ "id":274407,
2253
+ "occurrence":0,
2254
+ "final_mark":0,
2255
+ "status":"finished",
2256
+ "validated?":true,
2257
+ "current_team_id":1296658,
2258
+ "project":{
2259
+ "id":190,
2260
+ "name":"06",
2261
+ "slug":"piscine-c-day-09-06",
2262
+ "parent_id":167
2263
+ },
2264
+ "cursus_ids":[
2265
+ 4
2266
+ ],
2267
+ "marked_at":"2017-09-01T17:52:59.346Z",
2268
+ "marked":true,
2269
+ "retriable_at":"2017-09-01T17:52:59.315Z"
2270
+ },
2271
+ {
2272
+ "id":274396,
2273
+ "occurrence":0,
2274
+ "final_mark":0,
2275
+ "status":"finished",
2276
+ "validated?":true,
2277
+ "current_team_id":1296647,
2278
+ "project":{
2279
+ "id":188,
2280
+ "name":"04",
2281
+ "slug":"piscine-c-day-09-04",
2282
+ "parent_id":167
2283
+ },
2284
+ "cursus_ids":[
2285
+ 4
2286
+ ],
2287
+ "marked_at":"2017-09-01T17:52:59.838Z",
2288
+ "marked":true,
2289
+ "retriable_at":"2017-09-01T17:52:59.801Z"
2290
+ },
2291
+ {
2292
+ "id":274492,
2293
+ "occurrence":0,
2294
+ "final_mark":0,
2295
+ "status":"finished",
2296
+ "validated?":true,
2297
+ "current_team_id":1296743,
2298
+ "project":{
2299
+ "id":200,
2300
+ "name":"16",
2301
+ "slug":"piscine-c-day-09-16",
2302
+ "parent_id":167
2303
+ },
2304
+ "cursus_ids":[
2305
+ 4
2306
+ ],
2307
+ "marked_at":"2017-09-01T17:52:56.375Z",
2308
+ "marked":true,
2309
+ "retriable_at":"2017-09-01T17:52:56.351Z"
2310
+ },
2311
+ {
2312
+ "id":274438,
2313
+ "occurrence":0,
2314
+ "final_mark":0,
2315
+ "status":"finished",
2316
+ "validated?":true,
2317
+ "current_team_id":1296689,
2318
+ "project":{
2319
+ "id":194,
2320
+ "name":"10",
2321
+ "slug":"piscine-c-day-09-10",
2322
+ "parent_id":167
2323
+ },
2324
+ "cursus_ids":[
2325
+ 4
2326
+ ],
2327
+ "marked_at":"2017-09-01T17:52:58.231Z",
2328
+ "marked":true,
2329
+ "retriable_at":"2017-09-01T17:52:58.204Z"
2330
+ },
2331
+ {
2332
+ "id":274409,
2333
+ "occurrence":0,
2334
+ "final_mark":0,
2335
+ "status":"finished",
2336
+ "validated?":true,
2337
+ "current_team_id":1296660,
2338
+ "project":{
2339
+ "id":191,
2340
+ "name":"07",
2341
+ "slug":"piscine-c-day-09-07",
2342
+ "parent_id":167
2343
+ },
2344
+ "cursus_ids":[
2345
+ 4
2346
+ ],
2347
+ "marked_at":"2017-09-01T17:52:58.995Z",
2348
+ "marked":true,
2349
+ "retriable_at":"2017-09-01T17:52:58.961Z"
2350
+ },
2351
+ {
2352
+ "id":280347,
2353
+ "occurrence":0,
2354
+ "final_mark":88,
2355
+ "status":"finished",
2356
+ "validated?":true,
2357
+ "current_team_id":1302465,
2358
+ "project":{
2359
+ "id":405,
2360
+ "name":"Exam01",
2361
+ "slug":"piscine-c-exam01",
2362
+ "parent_id":null
2363
+ },
2364
+ "cursus_ids":[
2365
+ 4
2366
+ ],
2367
+ "marked_at":"2016-07-13T06:27:42.000Z",
2368
+ "marked":true,
2369
+ "retriable_at":"2017-06-26T21:47:33.246Z"
2370
+ },
2371
+ {
2372
+ "id":285243,
2373
+ "occurrence":0,
2374
+ "final_mark":0,
2375
+ "status":"finished",
2376
+ "validated?":true,
2377
+ "current_team_id":1307202,
2378
+ "project":{
2379
+ "id":201,
2380
+ "name":"17",
2381
+ "slug":"piscine-c-day-09-17",
2382
+ "parent_id":167
2383
+ },
2384
+ "cursus_ids":[
2385
+ 4
2386
+ ],
2387
+ "marked_at":"2017-09-01T17:52:54.464Z",
2388
+ "marked":true,
2389
+ "retriable_at":"2017-09-01T17:52:54.425Z"
2390
+ },
2391
+ {
2392
+ "id":285238,
2393
+ "occurrence":0,
2394
+ "final_mark":0,
2395
+ "status":"finished",
2396
+ "validated?":true,
2397
+ "current_team_id":1307197,
2398
+ "project":{
2399
+ "id":204,
2400
+ "name":"20",
2401
+ "slug":"piscine-c-day-09-20",
2402
+ "parent_id":167
2403
+ },
2404
+ "cursus_ids":[
2405
+ 4
2406
+ ],
2407
+ "marked_at":"2017-09-01T17:52:55.852Z",
2408
+ "marked":true,
2409
+ "retriable_at":"2017-09-01T17:52:55.827Z"
2410
+ },
2411
+ {
2412
+ "id":285239,
2413
+ "occurrence":0,
2414
+ "final_mark":0,
2415
+ "status":"finished",
2416
+ "validated?":true,
2417
+ "current_team_id":1307198,
2418
+ "project":{
2419
+ "id":207,
2420
+ "name":"23",
2421
+ "slug":"piscine-c-day-09-23",
2422
+ "parent_id":167
2423
+ },
2424
+ "cursus_ids":[
2425
+ 4
2426
+ ],
2427
+ "marked_at":"2017-09-01T17:52:55.665Z",
2428
+ "marked":true,
2429
+ "retriable_at":"2017-09-01T17:52:55.617Z"
2430
+ },
2431
+ {
2432
+ "id":272717,
2433
+ "occurrence":0,
2434
+ "final_mark":12,
2435
+ "status":"finished",
2436
+ "validated?":false,
2437
+ "current_team_id":1294940,
2438
+ "project":{
2439
+ "id":167,
2440
+ "name":"Day 09",
2441
+ "slug":"piscine-c-day-09",
2442
+ "parent_id":null
2443
+ },
2444
+ "cursus_ids":[
2445
+ 4
2446
+ ],
2447
+ "marked_at":"2016-07-16T16:11:17.915Z",
2448
+ "marked":true,
2449
+ "retriable_at":"2016-07-16T16:11:17.892Z"
2450
+ },
2451
+ {
2452
+ "id":285241,
2453
+ "occurrence":0,
2454
+ "final_mark":0,
2455
+ "status":"finished",
2456
+ "validated?":true,
2457
+ "current_team_id":1307200,
2458
+ "project":{
2459
+ "id":205,
2460
+ "name":"21",
2461
+ "slug":"piscine-c-day-09-21",
2462
+ "parent_id":167
2463
+ },
2464
+ "cursus_ids":[
2465
+ 4
2466
+ ],
2467
+ "marked_at":"2017-09-01T17:52:55.020Z",
2468
+ "marked":true,
2469
+ "retriable_at":"2017-09-01T17:52:54.999Z"
2470
+ },
2471
+ {
2472
+ "id":285240,
2473
+ "occurrence":0,
2474
+ "final_mark":0,
2475
+ "status":"finished",
2476
+ "validated?":true,
2477
+ "current_team_id":1307199,
2478
+ "project":{
2479
+ "id":206,
2480
+ "name":"22",
2481
+ "slug":"piscine-c-day-09-22",
2482
+ "parent_id":167
2483
+ },
2484
+ "cursus_ids":[
2485
+ 4
2486
+ ],
2487
+ "marked_at":"2017-09-01T17:52:55.260Z",
2488
+ "marked":true,
2489
+ "retriable_at":"2017-09-01T17:52:55.221Z"
2490
+ },
2491
+ {
2492
+ "id":1681541,
2493
+ "occurrence":0,
2494
+ "final_mark":69,
2495
+ "status":"finished",
2496
+ "validated?":true,
2497
+ "current_team_id":2954768,
2498
+ "project":{
2499
+ "id":1482,
2500
+ "name":"Piscine Ruby on Rails",
2501
+ "slug":"42cursus-piscine-ruby-on-rails",
2502
+ "parent_id":null
2503
+ },
2504
+ "cursus_ids":[
2505
+ 21
2506
+ ],
2507
+ "marked_at":"2018-04-24T12:17:53.000Z",
2508
+ "marked":true,
2509
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2510
+ },
2511
+ {
2512
+ "id":1681528,
2513
+ "occurrence":0,
2514
+ "final_mark":125,
2515
+ "status":"finished",
2516
+ "validated?":true,
2517
+ "current_team_id":2954755,
2518
+ "project":{
2519
+ "id":1402,
2520
+ "name":"hypertube",
2521
+ "slug":"42cursus-hypertube",
2522
+ "parent_id":null
2523
+ },
2524
+ "cursus_ids":[
2525
+ 21
2526
+ ],
2527
+ "marked_at":"2017-11-11T13:00:09.000Z",
2528
+ "marked":true,
2529
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2530
+ },
2531
+ {
2532
+ "id":1681540,
2533
+ "occurrence":0,
2534
+ "final_mark":125,
2535
+ "status":"finished",
2536
+ "validated?":true,
2537
+ "current_team_id":2954766,
2538
+ "project":{
2539
+ "id":1418,
2540
+ "name":"dr-quine",
2541
+ "slug":"42cursus-dr-quine",
2542
+ "parent_id":null
2543
+ },
2544
+ "cursus_ids":[
2545
+ 21
2546
+ ],
2547
+ "marked_at":"2017-09-25T09:06:43.000Z",
2548
+ "marked":true,
2549
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2550
+ },
2551
+ {
2552
+ "id":1681553,
2553
+ "occurrence":0,
2554
+ "final_mark":125,
2555
+ "status":"finished",
2556
+ "validated?":true,
2557
+ "current_team_id":2954780,
2558
+ "project":{
2559
+ "id":1646,
2560
+ "name":"Internship II - Duration",
2561
+ "slug":"internship-ii-internship-ii-duration",
2562
+ "parent_id":1644
2563
+ },
2564
+ "cursus_ids":[
2565
+ 21
2566
+ ],
2567
+ "marked_at":"2018-03-23T14:10:08.000Z",
2568
+ "marked":true,
2569
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2570
+ },
2571
+ {
2572
+ "id":1681570,
2573
+ "occurrence":0,
2574
+ "final_mark":103,
2575
+ "status":"finished",
2576
+ "validated?":true,
2577
+ "current_team_id":2954797,
2578
+ "project":{
2579
+ "id":1641,
2580
+ "name":"internship I - Company Mid Evaluation",
2581
+ "slug":"internship-i-internship-i-company-mid-evaluation",
2582
+ "parent_id":1638
2583
+ },
2584
+ "cursus_ids":[
2585
+ 21
2586
+ ],
2587
+ "marked_at":"2017-10-30T17:30:25.000Z",
2588
+ "marked":true,
2589
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2590
+ },
2591
+ {
2592
+ "id":1681571,
2593
+ "occurrence":0,
2594
+ "final_mark":118,
2595
+ "status":"finished",
2596
+ "validated?":true,
2597
+ "current_team_id":2954798,
2598
+ "project":{
2599
+ "id":1647,
2600
+ "name":"Internship II - Company Mid Evaluation",
2601
+ "slug":"internship-ii-internship-ii-company-mid-evaluation",
2602
+ "parent_id":1644
2603
+ },
2604
+ "cursus_ids":[
2605
+ 21
2606
+ ],
2607
+ "marked_at":"2018-05-28T11:53:57.000Z",
2608
+ "marked":true,
2609
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2610
+ },
2611
+ {
2612
+ "id":1681555,
2613
+ "occurrence":0,
2614
+ "final_mark":100,
2615
+ "status":"finished",
2616
+ "validated?":true,
2617
+ "current_team_id":2954782,
2618
+ "project":{
2619
+ "id":1608,
2620
+ "name":"Day 00",
2621
+ "slug":"42cursus-piscine-ruby-on-rails-day-00",
2622
+ "parent_id":1482
2623
+ },
2624
+ "cursus_ids":[
2625
+ 21
2626
+ ],
2627
+ "marked_at":"2017-09-02T13:20:20.000Z",
2628
+ "marked":true,
2629
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2630
+ },
2631
+ {
2632
+ "id":1681535,
2633
+ "occurrence":0,
2634
+ "final_mark":123,
2635
+ "status":"finished",
2636
+ "validated?":true,
2637
+ "current_team_id":2954762,
2638
+ "project":{
2639
+ "id":1638,
2640
+ "name":"Internship I",
2641
+ "slug":"internship-i",
2642
+ "parent_id":null
2643
+ },
2644
+ "cursus_ids":[
2645
+ 21
2646
+ ],
2647
+ "marked_at":"2018-04-17T08:39:55.000Z",
2648
+ "marked":true,
2649
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2650
+ },
2651
+ {
2652
+ "id":1681534,
2653
+ "occurrence":0,
2654
+ "final_mark":118,
2655
+ "status":"finished",
2656
+ "validated?":true,
2657
+ "current_team_id":2954760,
2658
+ "project":{
2659
+ "id":1401,
2660
+ "name":"matcha",
2661
+ "slug":"42cursus-matcha",
2662
+ "parent_id":null
2663
+ },
2664
+ "cursus_ids":[
2665
+ 21
2666
+ ],
2667
+ "marked_at":"2017-10-21T13:54:23.000Z",
2668
+ "marked":true,
2669
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2670
+ },
2671
+ {
2672
+ "id":1681551,
2673
+ "occurrence":0,
2674
+ "final_mark":100,
2675
+ "status":"finished",
2676
+ "validated?":true,
2677
+ "current_team_id":2954777,
2678
+ "project":{
2679
+ "id":1649,
2680
+ "name":"Internship II - Peer Video",
2681
+ "slug":"internship-ii-internship-ii-peer-video",
2682
+ "parent_id":1644
2683
+ },
2684
+ "cursus_ids":[
2685
+ 21
2686
+ ],
2687
+ "marked_at":"2018-08-28T13:21:42.000Z",
2688
+ "marked":true,
2689
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2690
+ },
2691
+ {
2692
+ "id":1681552,
2693
+ "occurrence":0,
2694
+ "final_mark":118,
2695
+ "status":"finished",
2696
+ "validated?":true,
2697
+ "current_team_id":2954778,
2698
+ "project":{
2699
+ "id":1648,
2700
+ "name":"Internship II - Company Final Evaluation",
2701
+ "slug":"internship-ii-internship-ii-company-final-evaluation",
2702
+ "parent_id":1644
2703
+ },
2704
+ "cursus_ids":[
2705
+ 21
2706
+ ],
2707
+ "marked_at":"2018-08-24T11:33:09.000Z",
2708
+ "marked":true,
2709
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2710
+ },
2711
+ {
2712
+ "id":1170756,
2713
+ "occurrence":0,
2714
+ "final_mark":0,
2715
+ "status":"finished",
2716
+ "validated?":false,
2717
+ "current_team_id":2335272,
2718
+ "project":{
2719
+ "id":1190,
2720
+ "name":"roger-skyline-1",
2721
+ "slug":"roger-skyline-1",
2722
+ "parent_id":null
2723
+ },
2724
+ "cursus_ids":[
2725
+ 1
2726
+ ],
2727
+ "marked_at":"2019-12-21T20:20:59.448Z",
2728
+ "marked":true,
2729
+ "retriable_at":"2019-12-24T20:20:59.475Z"
2730
+ },
2731
+ {
2732
+ "id":1681531,
2733
+ "occurrence":0,
2734
+ "final_mark":125,
2735
+ "status":"finished",
2736
+ "validated?":true,
2737
+ "current_team_id":2954757,
2738
+ "project":{
2739
+ "id":1644,
2740
+ "name":"Internship II",
2741
+ "slug":"internship-ii",
2742
+ "parent_id":null
2743
+ },
2744
+ "cursus_ids":[
2745
+ 21
2746
+ ],
2747
+ "marked_at":"2018-08-28T13:21:43.000Z",
2748
+ "marked":true,
2749
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2750
+ },
2751
+ {
2752
+ "id":1681530,
2753
+ "occurrence":0,
2754
+ "final_mark":125,
2755
+ "status":"finished",
2756
+ "validated?":true,
2757
+ "current_team_id":2954756,
2758
+ "project":{
2759
+ "id":1405,
2760
+ "name":"darkly",
2761
+ "slug":"42cursus-darkly",
2762
+ "parent_id":null
2763
+ },
2764
+ "cursus_ids":[
2765
+ 21
2766
+ ],
2767
+ "marked_at":"2017-11-28T18:03:50.000Z",
2768
+ "marked":true,
2769
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2770
+ },
2771
+ {
2772
+ "id":1681543,
2773
+ "occurrence":0,
2774
+ "final_mark":100,
2775
+ "status":"finished",
2776
+ "validated?":true,
2777
+ "current_team_id":2954770,
2778
+ "project":{
2779
+ "id":1645,
2780
+ "name":"internship II - Contract Upload",
2781
+ "slug":"internship-ii-internship-ii-contract-upload",
2782
+ "parent_id":1644
2783
+ },
2784
+ "cursus_ids":[
2785
+ 21
2786
+ ],
2787
+ "marked_at":"2018-03-23T14:10:08.000Z",
2788
+ "marked":true,
2789
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2790
+ },
2791
+ {
2792
+ "id":1681545,
2793
+ "occurrence":0,
2794
+ "final_mark":125,
2795
+ "status":"finished",
2796
+ "validated?":true,
2797
+ "current_team_id":2954771,
2798
+ "project":{
2799
+ "id":1639,
2800
+ "name":"Internship I - Duration",
2801
+ "slug":"internship-i-internship-i-duration",
2802
+ "parent_id":1638
2803
+ },
2804
+ "cursus_ids":[
2805
+ 21
2806
+ ],
2807
+ "marked_at":"2017-07-13T15:24:05.000Z",
2808
+ "marked":true,
2809
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2810
+ },
2811
+ {
2812
+ "id":1681546,
2813
+ "occurrence":0,
2814
+ "final_mark":100,
2815
+ "status":"finished",
2816
+ "validated?":true,
2817
+ "current_team_id":2954773,
2818
+ "project":{
2819
+ "id":1640,
2820
+ "name":"internship I - Contract Upload",
2821
+ "slug":"internship-i-internship-i-contract-upload",
2822
+ "parent_id":1638
2823
+ },
2824
+ "cursus_ids":[
2825
+ 21
2826
+ ],
2827
+ "marked_at":"2017-07-13T15:24:06.000Z",
2828
+ "marked":true,
2829
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2830
+ },
2831
+ {
2832
+ "id":1681548,
2833
+ "occurrence":0,
2834
+ "final_mark":111,
2835
+ "status":"finished",
2836
+ "validated?":true,
2837
+ "current_team_id":2954774,
2838
+ "project":{
2839
+ "id":1642,
2840
+ "name":"internship I - Company Final Evaluation",
2841
+ "slug":"internship-i-internship-i-company-final-evaluation",
2842
+ "parent_id":1638
2843
+ },
2844
+ "cursus_ids":[
2845
+ 21
2846
+ ],
2847
+ "marked_at":"2018-04-17T08:39:55.000Z",
2848
+ "marked":true,
2849
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2850
+ },
2851
+ {
2852
+ "id":1681549,
2853
+ "occurrence":0,
2854
+ "final_mark":100,
2855
+ "status":"finished",
2856
+ "validated?":true,
2857
+ "current_team_id":2954775,
2858
+ "project":{
2859
+ "id":1643,
2860
+ "name":"Internship I - Peer Video",
2861
+ "slug":"internship-i-internship-i-peer-video",
2862
+ "parent_id":1638
2863
+ },
2864
+ "cursus_ids":[
2865
+ 21
2866
+ ],
2867
+ "marked_at":"2018-01-10T11:55:46.000Z",
2868
+ "marked":true,
2869
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2870
+ },
2871
+ {
2872
+ "id":1681558,
2873
+ "occurrence":0,
2874
+ "final_mark":54,
2875
+ "status":"finished",
2876
+ "validated?":true,
2877
+ "current_team_id":2954784,
2878
+ "project":{
2879
+ "id":1610,
2880
+ "name":"Day 02",
2881
+ "slug":"42cursus-piscine-ruby-on-rails-day-02",
2882
+ "parent_id":1482
2883
+ },
2884
+ "cursus_ids":[
2885
+ 21
2886
+ ],
2887
+ "marked_at":"2017-09-02T13:20:48.000Z",
2888
+ "marked":true,
2889
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2890
+ },
2891
+ {
2892
+ "id":1681559,
2893
+ "occurrence":0,
2894
+ "final_mark":57,
2895
+ "status":"finished",
2896
+ "validated?":true,
2897
+ "current_team_id":2954786,
2898
+ "project":{
2899
+ "id":1611,
2900
+ "name":"Day 03",
2901
+ "slug":"42cursus-piscine-ruby-on-rails-day-03",
2902
+ "parent_id":1482
2903
+ },
2904
+ "cursus_ids":[
2905
+ 21
2906
+ ],
2907
+ "marked_at":"2017-09-02T13:21:15.000Z",
2908
+ "marked":true,
2909
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2910
+ },
2911
+ {
2912
+ "id":1681560,
2913
+ "occurrence":0,
2914
+ "final_mark":52,
2915
+ "status":"finished",
2916
+ "validated?":true,
2917
+ "current_team_id":2954787,
2918
+ "project":{
2919
+ "id":1612,
2920
+ "name":"Day 04",
2921
+ "slug":"42cursus-piscine-ruby-on-rails-day-04",
2922
+ "parent_id":1482
2923
+ },
2924
+ "cursus_ids":[
2925
+ 21
2926
+ ],
2927
+ "marked_at":"2017-09-02T13:21:45.000Z",
2928
+ "marked":true,
2929
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2930
+ },
2931
+ {
2932
+ "id":1681562,
2933
+ "occurrence":0,
2934
+ "final_mark":67,
2935
+ "status":"finished",
2936
+ "validated?":false,
2937
+ "current_team_id":2954788,
2938
+ "project":{
2939
+ "id":1618,
2940
+ "name":"Rush 00",
2941
+ "slug":"piscine-ruby-on-rails-rush-00",
2942
+ "parent_id":791
2943
+ },
2944
+ "cursus_ids":[
2945
+ 21
2946
+ ],
2947
+ "marked_at":"2016-12-12T11:14:22.000Z",
2948
+ "marked":true,
2949
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2950
+ },
2951
+ {
2952
+ "id":1681563,
2953
+ "occurrence":0,
2954
+ "final_mark":0,
2955
+ "status":"finished",
2956
+ "validated?":false,
2957
+ "current_team_id":2954790,
2958
+ "project":{
2959
+ "id":1613,
2960
+ "name":"Day 05",
2961
+ "slug":"42cursus-piscine-ruby-on-rails-day-05",
2962
+ "parent_id":1482
2963
+ },
2964
+ "cursus_ids":[
2965
+ 21
2966
+ ],
2967
+ "marked_at":"2017-01-23T15:45:59.000Z",
2968
+ "marked":true,
2969
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2970
+ },
2971
+ {
2972
+ "id":1681565,
2973
+ "occurrence":0,
2974
+ "final_mark":0,
2975
+ "status":"finished",
2976
+ "validated?":false,
2977
+ "current_team_id":2954791,
2978
+ "project":{
2979
+ "id":1614,
2980
+ "name":"Day 06",
2981
+ "slug":"42cursus-piscine-ruby-on-rails-day-06",
2982
+ "parent_id":1482
2983
+ },
2984
+ "cursus_ids":[
2985
+ 21
2986
+ ],
2987
+ "marked_at":"2017-09-02T13:22:49.000Z",
2988
+ "marked":true,
2989
+ "retriable_at":"2019-12-19T23:00:00.000Z"
2990
+ },
2991
+ {
2992
+ "id":1681566,
2993
+ "occurrence":0,
2994
+ "final_mark":0,
2995
+ "status":"finished",
2996
+ "validated?":false,
2997
+ "current_team_id":2954793,
2998
+ "project":{
2999
+ "id":1615,
3000
+ "name":"Day 07",
3001
+ "slug":"42cursus-piscine-ruby-on-rails-day-07",
3002
+ "parent_id":1482
3003
+ },
3004
+ "cursus_ids":[
3005
+ 21
3006
+ ],
3007
+ "marked_at":"2016-12-19T08:51:44.000Z",
3008
+ "marked":true,
3009
+ "retriable_at":"2019-12-19T23:00:00.000Z"
3010
+ },
3011
+ {
3012
+ "id":1681567,
3013
+ "occurrence":0,
3014
+ "final_mark":60,
3015
+ "status":"finished",
3016
+ "validated?":true,
3017
+ "current_team_id":2954794,
3018
+ "project":{
3019
+ "id":1616,
3020
+ "name":"Day 08",
3021
+ "slug":"42cursus-piscine-ruby-on-rails-day-08",
3022
+ "parent_id":1482
3023
+ },
3024
+ "cursus_ids":[
3025
+ 21
3026
+ ],
3027
+ "marked_at":"2016-12-18T10:28:33.000Z",
3028
+ "marked":true,
3029
+ "retriable_at":"2019-12-19T23:00:00.000Z"
3030
+ },
3031
+ {
3032
+ "id":1681568,
3033
+ "occurrence":0,
3034
+ "final_mark":0,
3035
+ "status":"finished",
3036
+ "validated?":false,
3037
+ "current_team_id":2954795,
3038
+ "project":{
3039
+ "id":1617,
3040
+ "name":"Day 09",
3041
+ "slug":"42cursus-piscine-ruby-on-rails-day-09",
3042
+ "parent_id":1482
3043
+ },
3044
+ "cursus_ids":[
3045
+ 21
3046
+ ],
3047
+ "marked_at":"2016-12-19T08:51:36.000Z",
3048
+ "marked":true,
3049
+ "retriable_at":"2019-12-19T23:00:00.000Z"
3050
+ },
3051
+ {
3052
+ "id":1681569,
3053
+ "occurrence":0,
3054
+ "final_mark":0,
3055
+ "status":"finished",
3056
+ "validated?":false,
3057
+ "current_team_id":2954796,
3058
+ "project":{
3059
+ "id":1619,
3060
+ "name":"Rush 01",
3061
+ "slug":"piscine-ruby-on-rails-rush-01",
3062
+ "parent_id":791
3063
+ },
3064
+ "cursus_ids":[
3065
+ 21
3066
+ ],
3067
+ "marked_at":"2018-04-24T12:17:53.000Z",
3068
+ "marked":true,
3069
+ "retriable_at":"2019-12-19T23:00:00.000Z"
3070
+ },
3071
+ {
3072
+ "id":1681556,
3073
+ "occurrence":0,
3074
+ "final_mark":79,
3075
+ "status":"finished",
3076
+ "validated?":true,
3077
+ "current_team_id":2954783,
3078
+ "project":{
3079
+ "id":1609,
3080
+ "name":"Day 01",
3081
+ "slug":"42cursus-piscine-ruby-on-rails-day-01",
3082
+ "parent_id":1482
3083
+ },
3084
+ "cursus_ids":[
3085
+ 21
3086
+ ],
3087
+ "marked_at":"2017-04-14T12:09:05.000Z",
3088
+ "marked":true,
3089
+ "retriable_at":"2019-12-19T23:00:00.000Z"
3090
+ },
3091
+ {
3092
+ "id":438788,
3093
+ "occurrence":1,
3094
+ "final_mark":100,
3095
+ "status":"finished",
3096
+ "validated?":true,
3097
+ "current_team_id":1472260,
3098
+ "project":{
3099
+ "id":96,
3100
+ "name":"Savoir Relier",
3101
+ "slug":"savoir-relier",
3102
+ "parent_id":null
3103
+ },
3104
+ "cursus_ids":[
3105
+ 1
3106
+ ],
3107
+ "marked_at":"2016-11-13T17:02:42.006Z",
3108
+ "marked":true,
3109
+ "retriable_at":"2016-11-13T17:02:40.889Z"
3110
+ },
3111
+ {
3112
+ "id":1681532,
3113
+ "occurrence":0,
3114
+ "final_mark":100,
3115
+ "status":"finished",
3116
+ "validated?":true,
3117
+ "current_team_id":2954759,
3118
+ "project":{
3119
+ "id":1396,
3120
+ "name":"camagru",
3121
+ "slug":"42cursus-camagru",
3122
+ "parent_id":null
3123
+ },
3124
+ "cursus_ids":[
3125
+ 21
3126
+ ],
3127
+ "marked_at":"2017-06-26T21:53:01.000Z",
3128
+ "marked":true,
3129
+ "retriable_at":"2019-12-19T23:00:00.000Z"
3130
+ }
3131
+ ],
3132
+ "languages_users":[
3133
+ {
3134
+ "id":131203,
3135
+ "language_id":2,
3136
+ "user_id":19265,
3137
+ "position":1,
3138
+ "created_at":"2018-10-19T11:21:57.397Z"
3139
+ }
3140
+ ],
3141
+ "achievements":[
3142
+ {
3143
+ "id":116,
3144
+ "name":"1.21 Gigawatts ?!",
3145
+ "description":"Participer au Time Capsule et se laisser un petit mot.",
3146
+ "tier":"easy",
3147
+ "kind":"social",
3148
+ "visible":true,
3149
+ "image":"/uploads/achievement/image/116/SOC014.svg",
3150
+ "nbr_of_success":null,
3151
+ "users_url":"https://api.intra.42.fr/v2/achievements/116/users"
3152
+ },
3153
+ {
3154
+ "id":40,
3155
+ "name":"404 - Sleep not found",
3156
+ "description":"Etre logué 24h de suite. (à bosser, ofc !)",
3157
+ "tier":"easy",
3158
+ "kind":"scolarity",
3159
+ "visible":true,
3160
+ "image":"/uploads/achievement/image/40/SCO001.svg",
3161
+ "nbr_of_success":null,
3162
+ "users_url":"https://api.intra.42.fr/v2/achievements/40/users"
3163
+ },
3164
+ {
3165
+ "id":41,
3166
+ "name":"All work and no play makes Jack a dull boy",
3167
+ "description":"Etre logué 90h sur une semaine. ",
3168
+ "tier":"easy",
3169
+ "kind":"scolarity",
3170
+ "visible":true,
3171
+ "image":"/uploads/achievement/image/41/SCO001.svg",
3172
+ "nbr_of_success":null,
3173
+ "users_url":"https://api.intra.42.fr/v2/achievements/41/users"
3174
+ },
3175
+ {
3176
+ "id":107,
3177
+ "name":"And now my watch begins",
3178
+ "description":"Rejoindre les tuteurs.",
3179
+ "tier":"none",
3180
+ "kind":"scolarity",
3181
+ "visible":true,
3182
+ "image":"/uploads/achievement/image/107/SCO0017.svg",
3183
+ "nbr_of_success":null,
3184
+ "users_url":"https://api.intra.42.fr/v2/achievements/107/users"
3185
+ },
3186
+ {
3187
+ "id":17,
3188
+ "name":"Bonus Hunter",
3189
+ "description":"Valider 1 projet avec la note maximum.",
3190
+ "tier":"easy",
3191
+ "kind":"project",
3192
+ "visible":false,
3193
+ "image":"/uploads/achievement/image/17/PRO005.svg",
3194
+ "nbr_of_success":1,
3195
+ "users_url":"https://api.intra.42.fr/v2/achievements/17/users"
3196
+ },
3197
+ {
3198
+ "id":18,
3199
+ "name":"Bonus Hunter",
3200
+ "description":"Valider 3 projets avec la note maximum.",
3201
+ "tier":"medium",
3202
+ "kind":"project",
3203
+ "visible":false,
3204
+ "image":"/uploads/achievement/image/18/PRO005.svg",
3205
+ "nbr_of_success":3,
3206
+ "users_url":"https://api.intra.42.fr/v2/achievements/18/users"
3207
+ },
3208
+ {
3209
+ "id":114,
3210
+ "name":"Business Angel",
3211
+ "description":"Valider un partenariat.",
3212
+ "tier":"none",
3213
+ "kind":"project",
3214
+ "visible":true,
3215
+ "image":"/uploads/achievement/image/114/PRO014.svg",
3216
+ "nbr_of_success":null,
3217
+ "users_url":"https://api.intra.42.fr/v2/achievements/114/users"
3218
+ },
3219
+ {
3220
+ "id":4,
3221
+ "name":"Code Explorer",
3222
+ "description":"Valider son premier projet.",
3223
+ "tier":"none",
3224
+ "kind":"project",
3225
+ "visible":true,
3226
+ "image":"/uploads/achievement/image/4/PRO002.svg",
3227
+ "nbr_of_success":1,
3228
+ "users_url":"https://api.intra.42.fr/v2/achievements/4/users"
3229
+ },
3230
+ {
3231
+ "id":5,
3232
+ "name":"Code Explorer",
3233
+ "description":"Valider 3 projets.",
3234
+ "tier":"none",
3235
+ "kind":"project",
3236
+ "visible":true,
3237
+ "image":"/uploads/achievement/image/5/PRO002.svg",
3238
+ "nbr_of_success":3,
3239
+ "users_url":"https://api.intra.42.fr/v2/achievements/5/users"
3240
+ },
3241
+ {
3242
+ "id":6,
3243
+ "name":"Code Explorer",
3244
+ "description":"Valider 10 projets.",
3245
+ "tier":"none",
3246
+ "kind":"project",
3247
+ "visible":true,
3248
+ "image":"/uploads/achievement/image/6/PRO002.svg",
3249
+ "nbr_of_success":10,
3250
+ "users_url":"https://api.intra.42.fr/v2/achievements/6/users"
3251
+ },
3252
+ {
3253
+ "id":7,
3254
+ "name":"Code Explorer",
3255
+ "description":"Valider 21 projets.",
3256
+ "tier":"none",
3257
+ "kind":"project",
3258
+ "visible":true,
3259
+ "image":"/uploads/achievement/image/7/PRO002.svg",
3260
+ "nbr_of_success":21,
3261
+ "users_url":"https://api.intra.42.fr/v2/achievements/7/users"
3262
+ },
3263
+ {
3264
+ "id":65,
3265
+ "name":"Come to the dark side, we have cookies",
3266
+ "description":"Devenir bocalien.",
3267
+ "tier":"none",
3268
+ "kind":"scolarity",
3269
+ "visible":true,
3270
+ "image":"/uploads/achievement/image/65/SCO010.svg",
3271
+ "nbr_of_success":null,
3272
+ "users_url":"https://api.intra.42.fr/v2/achievements/65/users"
3273
+ },
3274
+ {
3275
+ "id":44,
3276
+ "name":"Curious wanderer",
3277
+ "description":"S'être logué une fois dans chaque cluster.",
3278
+ "tier":"none",
3279
+ "kind":"scolarity",
3280
+ "visible":false,
3281
+ "image":"/uploads/achievement/image/44/SCO002.svg",
3282
+ "nbr_of_success":null,
3283
+ "users_url":"https://api.intra.42.fr/v2/achievements/44/users"
3284
+ },
3285
+ {
3286
+ "id":46,
3287
+ "name":"Film buff",
3288
+ "description":"Regarder 1 video sur l'e-learning.",
3289
+ "tier":"none",
3290
+ "kind":"pedagogy",
3291
+ "visible":false,
3292
+ "image":"/uploads/achievement/image/46/PED005.svg",
3293
+ "nbr_of_success":1,
3294
+ "users_url":"https://api.intra.42.fr/v2/achievements/46/users"
3295
+ },
3296
+ {
3297
+ "id":47,
3298
+ "name":"Film buff",
3299
+ "description":"Regarder 3 videos sur l'e-learning.",
3300
+ "tier":"none",
3301
+ "kind":"pedagogy",
3302
+ "visible":false,
3303
+ "image":"/uploads/achievement/image/47/PED005.svg",
3304
+ "nbr_of_success":3,
3305
+ "users_url":"https://api.intra.42.fr/v2/achievements/47/users"
3306
+ },
3307
+ {
3308
+ "id":45,
3309
+ "name":"Home is where the code is",
3310
+ "description":"S'être logué dans le même cluster un mois de suite.",
3311
+ "tier":"none",
3312
+ "kind":"scolarity",
3313
+ "visible":true,
3314
+ "image":"/uploads/achievement/image/45/SCO002.svg",
3315
+ "nbr_of_success":null,
3316
+ "users_url":"https://api.intra.42.fr/v2/achievements/45/users"
3317
+ },
3318
+ {
3319
+ "id":103,
3320
+ "name":"I am the watcher on the walls",
3321
+ "description":"Surveiller 1 examen en tant que tuteur.",
3322
+ "tier":"none",
3323
+ "kind":"scolarity",
3324
+ "visible":true,
3325
+ "image":"/uploads/achievement/image/103/SCO0016.svg",
3326
+ "nbr_of_success":1,
3327
+ "users_url":"https://api.intra.42.fr/v2/achievements/103/users"
3328
+ },
3329
+ {
3330
+ "id":31,
3331
+ "name":"I found the answer",
3332
+ "description":"Valider le level 21 et être prêt à affronter le monde extérieur !",
3333
+ "tier":"none",
3334
+ "kind":"pedagogy",
3335
+ "visible":true,
3336
+ "image":"/uploads/achievement/image/31/PED003.svg",
3337
+ "nbr_of_success":null,
3338
+ "users_url":"https://api.intra.42.fr/v2/achievements/31/users"
3339
+ },
3340
+ {
3341
+ "id":82,
3342
+ "name":"I have no idea what I'm doing",
3343
+ "description":"Faire une soutenance sans avoir validé le projet.",
3344
+ "tier":"none",
3345
+ "kind":"pedagogy",
3346
+ "visible":true,
3347
+ "image":"/uploads/achievement/image/82/PED011.svg",
3348
+ "nbr_of_success":null,
3349
+ "users_url":"https://api.intra.42.fr/v2/achievements/82/users"
3350
+ },
3351
+ {
3352
+ "id":109,
3353
+ "name":"I’ll make him an offer he can’t refuse",
3354
+ "description":"Participer au programme de parrainage en tant que parrain.",
3355
+ "tier":"none",
3356
+ "kind":"pedagogy",
3357
+ "visible":true,
3358
+ "image":"/uploads/achievement/image/109/PED014.svg",
3359
+ "nbr_of_success":null,
3360
+ "users_url":"https://api.intra.42.fr/v2/achievements/109/users"
3361
+ },
3362
+ {
3363
+ "id":84,
3364
+ "name":"I'm reliable !",
3365
+ "description":"Participer à 21 soutenances d'affilée sans en manquer aucune.",
3366
+ "tier":"easy",
3367
+ "kind":"pedagogy",
3368
+ "visible":true,
3369
+ "image":"/uploads/achievement/image/84/PED009.svg",
3370
+ "nbr_of_success":21,
3371
+ "users_url":"https://api.intra.42.fr/v2/achievements/84/users"
3372
+ },
3373
+ {
3374
+ "id":87,
3375
+ "name":"I post, therefore I am",
3376
+ "description":"Poster 1 message sur le forum.",
3377
+ "tier":"none",
3378
+ "kind":"social",
3379
+ "visible":false,
3380
+ "image":"/uploads/achievement/image/87/SOC005.svg",
3381
+ "nbr_of_success":1,
3382
+ "users_url":"https://api.intra.42.fr/v2/achievements/87/users"
3383
+ },
3384
+ {
3385
+ "id":36,
3386
+ "name":"It's a rich man's world",
3387
+ "description":"Avoir 100 points de wallet.",
3388
+ "tier":"none",
3389
+ "kind":"social",
3390
+ "visible":true,
3391
+ "image":"/uploads/achievement/image/36/SOC004.svg",
3392
+ "nbr_of_success":100,
3393
+ "users_url":"https://api.intra.42.fr/v2/achievements/36/users"
3394
+ },
3395
+ {
3396
+ "id":37,
3397
+ "name":"It's a rich man's world",
3398
+ "description":"Avoir 200 points de wallet.",
3399
+ "tier":"none",
3400
+ "kind":"social",
3401
+ "visible":true,
3402
+ "image":"/uploads/achievement/image/37/SOC004.svg",
3403
+ "nbr_of_success":200,
3404
+ "users_url":"https://api.intra.42.fr/v2/achievements/37/users"
3405
+ },
3406
+ {
3407
+ "id":155,
3408
+ "name":"Je voudrais un croissant",
3409
+ "description":"Visiter le campus de Paris",
3410
+ "tier":"none",
3411
+ "kind":"scolarity",
3412
+ "visible":true,
3413
+ "image":"/uploads/achievement/image/155/BADGE_SCOLARITY_paris.svg",
3414
+ "nbr_of_success":null,
3415
+ "users_url":"https://api.intra.42.fr/v2/achievements/155/users"
3416
+ },
3417
+ {
3418
+ "id":88,
3419
+ "name":"Love me, I'm famous",
3420
+ "description":"Avoir été upvoté 1 fois sur le forum.",
3421
+ "tier":"none",
3422
+ "kind":"social",
3423
+ "visible":true,
3424
+ "image":"/uploads/achievement/image/88/SOC006.svg",
3425
+ "nbr_of_success":1,
3426
+ "users_url":"https://api.intra.42.fr/v2/achievements/88/users"
3427
+ },
3428
+ {
3429
+ "id":94,
3430
+ "name":"Love me, I'm famous",
3431
+ "description":"Avoir été upvoté 10 fois sur le forum.",
3432
+ "tier":"none",
3433
+ "kind":"social",
3434
+ "visible":true,
3435
+ "image":"/uploads/achievement/image/94/SOC006.svg",
3436
+ "nbr_of_success":10,
3437
+ "users_url":"https://api.intra.42.fr/v2/achievements/94/users"
3438
+ },
3439
+ {
3440
+ "id":95,
3441
+ "name":"Love me, I'm famous",
3442
+ "description":"Avoir été upvoté 42 fois sur le forum. Ne seront comptés que 25 upvotes par personne au maximum.",
3443
+ "tier":"none",
3444
+ "kind":"social",
3445
+ "visible":false,
3446
+ "image":"/uploads/achievement/image/95/SOC006.svg",
3447
+ "nbr_of_success":42,
3448
+ "users_url":"https://api.intra.42.fr/v2/achievements/95/users"
3449
+ },
3450
+ {
3451
+ "id":25,
3452
+ "name":"Rigorous Basterd",
3453
+ "description":"Valider 3 projets d'affilée (journées de piscines comprises).",
3454
+ "tier":"none",
3455
+ "kind":"project",
3456
+ "visible":true,
3457
+ "image":"/uploads/achievement/image/25/PRO010.svg",
3458
+ "nbr_of_success":3,
3459
+ "users_url":"https://api.intra.42.fr/v2/achievements/25/users"
3460
+ },
3461
+ {
3462
+ "id":26,
3463
+ "name":"Rigorous Basterd",
3464
+ "description":"Valider 10 projets d'affilée (journées de piscines comprises).",
3465
+ "tier":"easy",
3466
+ "kind":"project",
3467
+ "visible":true,
3468
+ "image":"/uploads/achievement/image/26/PRO010.svg",
3469
+ "nbr_of_success":10,
3470
+ "users_url":"https://api.intra.42.fr/v2/achievements/26/users"
3471
+ },
3472
+ {
3473
+ "id":27,
3474
+ "name":"Rigorous Basterd",
3475
+ "description":"Valider 21 projets d'affilée (journées de piscines comprises).",
3476
+ "tier":"medium",
3477
+ "kind":"project",
3478
+ "visible":true,
3479
+ "image":"/uploads/achievement/image/27/PRO010.svg",
3480
+ "nbr_of_success":21,
3481
+ "users_url":"https://api.intra.42.fr/v2/achievements/27/users"
3482
+ },
3483
+ {
3484
+ "id":28,
3485
+ "name":"Rigorous Basterd",
3486
+ "description":"Valider 42 projets d'affilée (journées de piscines comprises).",
3487
+ "tier":"hard",
3488
+ "kind":"project",
3489
+ "visible":true,
3490
+ "image":"/uploads/achievement/image/28/PRO010.svg",
3491
+ "nbr_of_success":42,
3492
+ "users_url":"https://api.intra.42.fr/v2/achievements/28/users"
3493
+ },
3494
+ {
3495
+ "id":39,
3496
+ "name":"Sleep is for the weak",
3497
+ "description":"Obtenir les achievements \"404 - Sleep not found\" et \"In the name of Nicolas !\"",
3498
+ "tier":"none",
3499
+ "kind":"scolarity",
3500
+ "visible":true,
3501
+ "image":"/uploads/achievement/image/39/SCO001.svg",
3502
+ "nbr_of_success":null,
3503
+ "users_url":"https://api.intra.42.fr/v2/achievements/39/users"
3504
+ },
3505
+ {
3506
+ "id":115,
3507
+ "name":"Venture Capitalist",
3508
+ "description":"Valider un partenariat avec la note 125.",
3509
+ "tier":"none",
3510
+ "kind":"project",
3511
+ "visible":true,
3512
+ "image":"/uploads/achievement/image/115/PRO016.svg",
3513
+ "nbr_of_success":null,
3514
+ "users_url":"https://api.intra.42.fr/v2/achievements/115/users"
3515
+ },
3516
+ {
3517
+ "id":1,
3518
+ "name":"Welcome, Cadet !",
3519
+ "description":"Tu as réussi ta piscine C. Bienvenue à 42 !",
3520
+ "tier":"none",
3521
+ "kind":"project",
3522
+ "visible":true,
3523
+ "image":"/uploads/achievement/image/1/PRO001.svg",
3524
+ "nbr_of_success":null,
3525
+ "users_url":"https://api.intra.42.fr/v2/achievements/1/users"
3526
+ }
3527
+ ],
3528
+ "titles":[
3529
+ {
3530
+ "id":12,
3531
+ "name":"Altruist %login"
3532
+ },
3533
+ {
3534
+ "id":42,
3535
+ "name":"Venture Capitalist %login"
3536
+ },
3537
+ {
3538
+ "id":82,
3539
+ "name":"[DEPRECATED] %login"
3540
+ }
3541
+ ],
3542
+ "titles_users":[
3543
+ {
3544
+ "id":499,
3545
+ "user_id":19265,
3546
+ "title_id":12,
3547
+ "selected":false
3548
+ },
3549
+ {
3550
+ "id":1178,
3551
+ "user_id":19265,
3552
+ "title_id":42,
3553
+ "selected":false
3554
+ },
3555
+ {
3556
+ "id":3571,
3557
+ "user_id":19265,
3558
+ "title_id":82,
3559
+ "selected":false
3560
+ }
3561
+ ],
3562
+ "partnerships":[
3563
+ {
3564
+ "id":366,
3565
+ "name":"42cursus - [bocal] Développement web 6 mois",
3566
+ "slug":"42cursus-bocal-developpement-web-6-mois",
3567
+ "difficulty":42000,
3568
+ "url":"https://api.intra.42.fr/v2/partnerships/42cursus-bocal-developpement-web-6-mois",
3569
+ "partnerships_users_url":"https://api.intra.42.fr/v2/partnerships/42cursus-bocal-developpement-web-6-mois/partnerships_users",
3570
+ "partnerships_skills":[
3571
+ {
3572
+ "id":850,
3573
+ "partnership_id":366,
3574
+ "skill_id":7,
3575
+ "value":4200.0,
3576
+ "created_at":"2019-12-20T11:33:20.393Z",
3577
+ "updated_at":"2019-12-20T11:33:20.393Z"
3578
+ },
3579
+ {
3580
+ "id":849,
3581
+ "partnership_id":366,
3582
+ "skill_id":6,
3583
+ "value":18900.0,
3584
+ "created_at":"2019-12-20T11:33:20.391Z",
3585
+ "updated_at":"2019-12-20T11:33:20.391Z"
3586
+ },
3587
+ {
3588
+ "id":848,
3589
+ "partnership_id":366,
3590
+ "skill_id":16,
3591
+ "value":10500.0,
3592
+ "created_at":"2019-12-20T11:33:20.389Z",
3593
+ "updated_at":"2019-12-20T11:33:20.389Z"
3594
+ },
3595
+ {
3596
+ "id":847,
3597
+ "partnership_id":366,
3598
+ "skill_id":12,
3599
+ "value":8400.0,
3600
+ "created_at":"2019-12-20T11:33:20.387Z",
3601
+ "updated_at":"2019-12-20T11:33:20.387Z"
3602
+ }
3603
+ ]
3604
+ },
3605
+ {
3606
+ "id":45,
3607
+ "name":"[bocal] Développement web 6 mois",
3608
+ "slug":"bocal-developpement-web-6-mois",
3609
+ "difficulty":1000,
3610
+ "url":"https://api.intra.42.fr/v2/partnerships/bocal-developpement-web-6-mois",
3611
+ "partnerships_users_url":"https://api.intra.42.fr/v2/partnerships/bocal-developpement-web-6-mois/partnerships_users",
3612
+ "partnerships_skills":[
3613
+ {
3614
+ "id":106,
3615
+ "partnership_id":45,
3616
+ "skill_id":12,
3617
+ "value":200.0,
3618
+ "created_at":"2016-02-25T13:55:06.254Z",
3619
+ "updated_at":"2016-02-25T13:55:06.254Z"
3620
+ },
3621
+ {
3622
+ "id":107,
3623
+ "partnership_id":45,
3624
+ "skill_id":16,
3625
+ "value":250.0,
3626
+ "created_at":"2016-02-25T13:55:06.264Z",
3627
+ "updated_at":"2016-02-25T13:55:06.264Z"
3628
+ },
3629
+ {
3630
+ "id":108,
3631
+ "partnership_id":45,
3632
+ "skill_id":6,
3633
+ "value":450.0,
3634
+ "created_at":"2016-02-25T13:55:06.272Z",
3635
+ "updated_at":"2016-02-25T13:55:06.272Z"
3636
+ },
3637
+ {
3638
+ "id":109,
3639
+ "partnership_id":45,
3640
+ "skill_id":7,
3641
+ "value":100.0,
3642
+ "created_at":"2016-02-25T13:55:06.280Z",
3643
+ "updated_at":"2016-02-25T13:55:06.280Z"
3644
+ }
3645
+ ]
3646
+ }
3647
+ ],
3648
+ "patroned":[
3649
+
3650
+ ],
3651
+ "patroning":[
3652
+ {
3653
+ "id":641,
3654
+ "user_id":26286,
3655
+ "godfather_id":19265,
3656
+ "ongoing":true,
3657
+ "created_at":"2017-11-08T12:09:36.343Z",
3658
+ "updated_at":"2020-10-28T06:11:33.003Z"
3659
+ },
3660
+ {
3661
+ "id":746,
3662
+ "user_id":26384,
3663
+ "godfather_id":19265,
3664
+ "ongoing":true,
3665
+ "created_at":"2017-11-08T17:21:54.330Z",
3666
+ "updated_at":"2020-10-28T06:11:33.549Z"
3667
+ },
3668
+ {
3669
+ "id":640,
3670
+ "user_id":27119,
3671
+ "godfather_id":19265,
3672
+ "ongoing":true,
3673
+ "created_at":"2017-11-08T12:09:36.143Z",
3674
+ "updated_at":"2020-10-28T06:11:33.181Z"
3675
+ },
3676
+ {
3677
+ "id":642,
3678
+ "user_id":28830,
3679
+ "godfather_id":19265,
3680
+ "ongoing":true,
3681
+ "created_at":"2017-11-08T12:09:36.523Z",
3682
+ "updated_at":"2020-10-28T06:11:33.212Z"
3683
+ }
3684
+ ],
3685
+ "expertises_users":[
3686
+ {
3687
+ "id":22552,
3688
+ "expertise_id":30,
3689
+ "interested":false,
3690
+ "value":3,
3691
+ "contact_me":false,
3692
+ "created_at":"2018-07-22T11:49:26.596Z",
3693
+ "user_id":19265
3694
+ },
3695
+ {
3696
+ "id":19215,
3697
+ "expertise_id":26,
3698
+ "interested":false,
3699
+ "value":3,
3700
+ "contact_me":false,
3701
+ "created_at":"2018-02-22T14:48:07.598Z",
3702
+ "user_id":19265
3703
+ },
3704
+ {
3705
+ "id":19213,
3706
+ "expertise_id":12,
3707
+ "interested":false,
3708
+ "value":4,
3709
+ "contact_me":false,
3710
+ "created_at":"2018-02-22T10:32:13.223Z",
3711
+ "user_id":19265
3712
+ },
3713
+ {
3714
+ "id":19212,
3715
+ "expertise_id":13,
3716
+ "interested":false,
3717
+ "value":3,
3718
+ "contact_me":false,
3719
+ "created_at":"2018-02-22T10:31:42.703Z",
3720
+ "user_id":19265
3721
+ },
3722
+ {
3723
+ "id":19211,
3724
+ "expertise_id":15,
3725
+ "interested":false,
3726
+ "value":2,
3727
+ "contact_me":false,
3728
+ "created_at":"2018-02-22T10:31:16.196Z",
3729
+ "user_id":19265
3730
+ },
3731
+ {
3732
+ "id":19210,
3733
+ "expertise_id":33,
3734
+ "interested":false,
3735
+ "value":4,
3736
+ "contact_me":false,
3737
+ "created_at":"2018-02-22T10:31:02.503Z",
3738
+ "user_id":19265
3739
+ },
3740
+ {
3741
+ "id":19209,
3742
+ "expertise_id":31,
3743
+ "interested":false,
3744
+ "value":5,
3745
+ "contact_me":false,
3746
+ "created_at":"2018-02-22T10:30:56.816Z",
3747
+ "user_id":19265
3748
+ }
3749
+ ],
3750
+ "roles":[
3751
+
3752
+ ],
3753
+ "campus":[
3754
+ {
3755
+ "id":1,
3756
+ "name":"Paris",
3757
+ "time_zone":"Europe/Paris",
3758
+ "language":{
3759
+ "id":1,
3760
+ "name":"Français",
3761
+ "identifier":"fr",
3762
+ "created_at":"2014-11-02T16:43:38.466Z",
3763
+ "updated_at":"2021-04-14T12:59:04.679Z"
3764
+ },
3765
+ "users_count":21241,
3766
+ "vogsphere_id":1,
3767
+ "country":"France",
3768
+ "address":"96, boulevard Bessières",
3769
+ "zip":"75017",
3770
+ "city":"Paris",
3771
+ "website":"http://www.42.fr/",
3772
+ "facebook":"https://facebook.com/42born2code",
3773
+ "twitter":"https://twitter.com/42born2code",
3774
+ "active":true,
3775
+ "email_extension":"42.fr",
3776
+ "default_hidden_phone":false
3777
+ }
3778
+ ],
3779
+ "campus_users":[
3780
+ {
3781
+ "id":8379,
3782
+ "user_id":19265,
3783
+ "campus_id":1,
3784
+ "is_primary":true
3785
+ }
3786
+ ]
3787
+ }
3788
+ }
835
3789
  }
836
3790
  ```
837
3791
 
3792
+
838
3793
  ## Licence
839
3794
 
840
3795
  The MIT License (MIT)