Fields like "timestamp" on xp events and "creation_date" on accounts are stored as unix time. That means "seconds since the Unix epoch".
It's accurate down to the second, and they're all in the same "timezone" which is UTC (like GMT but doesn't change for daylight savings or anything).
You can combine this with an account's (or a browser's) timezone and/or timezone_offset value to display the time in their local timezone.
The picture is stored on S3. The field doesn't actually have the full path to an image on it. You have to append /large
, /medium
, or /small
to the URL to get a picture for an <img>
tag.
It also doesn't have a protocol, you'll have to prepend https:
to the beginning of the string.
@dataclass(frozen=True)
class DuolingoAccount:
account_id: str
name: str
username: str
email: str
lingots: int
picture: str
timezone: str
timezone_offset: str
creation_date: int
weekly_xp: int
monthly_xp: int
total_xp: int
@dataclass(frozen=True)
class XPGainEvent:
duolingo_account_id: str
skill_id: str
event_type: str
xp: int
timestamp: int
account_id name username email lingots picture timezone timezone_offset creation_date weekly_xp monthly_xp total_xp
------------ ------------ ---------- ----------------- --------- --------------------------------------------------------------- ------------------- ----------------- --------------- ----------- ------------ ----------
154303020 Adam Johnson Riizade riizade@gmail.com 196 //duolingo-images.s3.amazonaws.com/avatars/154303020/mula4OIw-I America/Los_Angeles -0700 1452485563 224 1085 3731
------------------------------------------------------------------------------------------------------------------------
duolingo_account_id skill event_type xp timestamp
--------------------- -------------------------------- ------------ ---- -----------
154303020 da999f35dae6f9c0d1a64da80761d3c8 LESSON 14 1583814627
154303020 da999f35dae6f9c0d1a64da80761d3c8 LESSON 15 1583815568
154303020 da999f35dae6f9c0d1a64da80761d3c8 LESSON 15 1583815732
154303020 da999f35dae6f9c0d1a64da80761d3c8 LESSON 13 1583815938
154303020 da999f35dae6f9c0d1a64da80761d3c8 LESSON 15 1583816078
154303020 da999f35dae6f9c0d1a64da80761d3c8 LESSON 15 1583816280
154303020 4b2e9fc25c65981c6e015e030c3f31a1 LESSON 15 1583901811
154303020 cb07809c692b875a91be319b3b3b932b LESSON 15 1583901912
154303020 cb07809c692b875a91be319b3b3b932b LESSON 15 1583902331
154303020 cb07809c692b875a91be319b3b3b932b LESSON 15 1583904563
154303020 cb07809c692b875a91be319b3b3b932b LESSON 15 1583904767
154303020 cb07809c692b875a91be319b3b3b932b LESSON 15 1583905133
154303020 cb07809c692b875a91be319b3b3b932b LESSON 15 1583905244
154303020 cb07809c692b875a91be319b3b3b932b LESSON 13 1583905356
154303020 629cb53e7ffefdcac370500c21d595f1 LESSON 15 1583981737
154303020 629cb53e7ffefdcac370500c21d595f1 LESSON 15 1583983702
154303020 629cb53e7ffefdcac370500c21d595f1 LESSON 12 1583986150
154303020 629cb53e7ffefdcac370500c21d595f1 LESSON 13 1583986337
154303020 629cb53e7ffefdcac370500c21d595f1 LESSON 15 1583986554
154303020 629cb53e7ffefdcac370500c21d595f1 LESSON 15 1583986795
154303020 629cb53e7ffefdcac370500c21d595f1 LESSON 15 1583987039
154303020 0d37141ac060418d809cc90a3e7e7387 LESSON 15 1584064651
154303020 0d37141ac060418d809cc90a3e7e7387 LESSON 14 1584064873
154303020 0d37141ac060418d809cc90a3e7e7387 LESSON 15 1584065150
154303020 0d37141ac060418d809cc90a3e7e7387 LESSON 15 1584065367
154303020 0d37141ac060418d809cc90a3e7e7387 LESSON 15 1584065559
154303020 0d37141ac060418d809cc90a3e7e7387 LESSON 15 1584069249
154303020 0d37141ac060418d809cc90a3e7e7387 LESSON 15 1584069409
154303020 fc69360361984551df1dfece8fcdb449 LESSON 15 1584069868
154303020 fc69360361984551df1dfece8fcdb449 LESSON 13 1584070045
154303020 fc69360361984551df1dfece8fcdb449 LESSON 13 1584070207
154303020 fc69360361984551df1dfece8fcdb449 LESSON 15 1584070435
154303020 fc69360361984551df1dfece8fcdb449 LESSON 15 1584070582
154303020 fc69360361984551df1dfece8fcdb449 LESSON 15 1584070785
154303020 fc69360361984551df1dfece8fcdb449 LESSON 13 1584071048
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 15 1584118917
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 13 1584119062
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 15 1584119378
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 15 1584119807
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 15 1584120510
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 14 1584120725
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 14 1584124770
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 20 1584124942
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 15 1584125335
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 13 1584125645
154303020 894605f5e49fc414b73a2ac17c656845 LESSON 20 1584125914
154303020 1c65da4d3a2cdc2cb514965a56153224 LESSON 13 1584209133
154303020 1c65da4d3a2cdc2cb514965a56153224 LESSON 15 1584214915
154303020 1c65da4d3a2cdc2cb514965a56153224 LESSON 15 1584216149
154303020 1c65da4d3a2cdc2cb514965a56153224 LESSON 15 1584217485
154303020 1c65da4d3a2cdc2cb514965a56153224 LESSON 15 1584217712
154303020 1c65da4d3a2cdc2cb514965a56153224 LESSON 15 1584218069
154303020 1c65da4d3a2cdc2cb514965a56153224 LESSON 15 1584219408
154303020 1c65da4d3a2cdc2cb514965a56153224 LESSON 12 1584253292
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 15 1584306579
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 13 1584313090
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 13 1584313251
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 13 1584316159
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 15 1584316503
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 14 1584319522
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 15 1584319714
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 15 1584322350
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 15 1584322550
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 15 1584331045
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 13 1584338013
154303020 fc2c1476096952c971a30f1852cf6ce3 LESSON 20 1584338403
154303020 5b592d51894b7ca64b6872b0974a3a6f LESSON 15 1584407611
154303020 5b592d51894b7ca64b6872b0974a3a6f LESSON 14 1584419522
154303020 5b592d51894b7ca64b6872b0974a3a6f LESSON 15 1584419676
154303020 5b592d51894b7ca64b6872b0974a3a6f LESSON 14 1584419826
154303020 5b592d51894b7ca64b6872b0974a3a6f LESSON 14 1584420011
154303020 5b592d51894b7ca64b6872b0974a3a6f LESSON 15 1584420171
154303020 5b592d51894b7ca64b6872b0974a3a6f LESSON 15 1584420316
154303020 5b592d51894b7ca64b6872b0974a3a6f LESSON 15 1584424538
account_id name username email lingots picture timezone timezone_offset creation_date weekly_xp monthly_xp total_xp
------------ ------------- --------------- ------------------------- --------- ------------------------------------------------------------- ----------- ----------------- --------------- ----------- ------------ ----------
1421889 Sarah Johnson sarahrscientist sarahrscientist@gmail.com 1382 //duolingo-images.s3.amazonaws.com/avatars/1421889/rB1lIOc7RU Europe/Rome +0100 1356499022 72 3271 47254
------------------------------------------------------------------------------------------------------------------------
duolingo_account_id skill event_type xp timestamp
--------------------- -------------------------------- ------------ ---- -----------
1421889 b97078cfaa753dbe61e6e8a0033219c8 LESSON 14 1584027545
1421889 20ce27f5c0fa1760e6cbd3d73448e24b LESSON 14 1584028512
1421889 20ce27f5c0fa1760e6cbd3d73448e24b LESSON 15 1584031561
1421889 PRACTICE 24 1584033484
1421889 PRACTICE 24 1584033590
1421889 PRACTICE 22 1584033767
1421889 196c51fba1cfb304942b4cf7b1ca72ab LESSON 13 1584053184
1421889 PRACTICE 24 1584053339
1421889 PRACTICE 24 1584053451
1421889 f5c805dd07f07ad0fe4e7c2ecbfe2c33 LESSON 13 1584053756
1421889 f5c805dd07f07ad0fe4e7c2ecbfe2c33 LESSON 15 1584053989
1421889 f5c805dd07f07ad0fe4e7c2ecbfe2c33 LESSON 15 1584058050
1421889 abe0ee5f3857bbb9df70e509b1d9c171 LESSON 15 1584058249
1421889 abe0ee5f3857bbb9df70e509b1d9c171 LESSON 15 1584058488
1421889 6e7d0ca426586f63165692df91d2970c LESSON 15 1584058897
1421889 6e7d0ca426586f63165692df91d2970c LESSON 14 1584059163
1421889 6e7d0ca426586f63165692df91d2970c LESSON 14 1584059548
1421889 6e7d0ca426586f63165692df91d2970c LESSON 15 1584059947
1421889 PRACTICE 24 1584065928
1421889 PRACTICE 24 1584066053
1421889 PRACTICE 24 1584066154
1421889 PRACTICE 24 1584066265
1421889 PRACTICE 24 1584066373
1421889 PRACTICE 24 1584066498
1421889 84c9cb5c4bbc32c9a84fbe4b0b2eaf86 LESSON 13 1584101470
1421889 84c9cb5c4bbc32c9a84fbe4b0b2eaf86 LESSON 20 1584101813
1421889 84c9cb5c4bbc32c9a84fbe4b0b2eaf86 LESSON 15 1584102179
1421889 PRACTICE 24 1584102351
1421889 PRACTICE 24 1584102465
1421889 PRACTICE 24 1584122725
1421889 PRACTICE 24 1584122859
1421889 PRACTICE 22 1584130486
1421889 PRACTICE 24 1584130677
1421889 PRACTICE 22 1584130884
1421889 PRACTICE 24 1584131327
1421889 8be4967bdb537a43a01fd23183bb291f LESSON 14 1584132109
1421889 38268e87c6e96a8591da93330da937c3 LESSON 15 1584132371
1421889 0b3e3b2090650a3a75ac177567a2a4df LESSON 13 1584137537
1421889 2aa6691b016525f632d36baf543624de LESSON 12 1584137844
1421889 f5c805dd07f07ad0fe4e7c2ecbfe2c33 LESSON 14 1584138115
1421889 84c9cb5c4bbc32c9a84fbe4b0b2eaf86 LESSON 13 1584139643
1421889 33f1d8ceebf80f5baa5ca305afdcd399 PRACTICE 15 1584139764
1421889 812883de38afbc0d0376728f9bfa7d21 LESSON 15 1584139847
1421889 05901bbe6fcc68047fc563a841854221 LESSON 15 1584140003
1421889 86cee569cf2d4b5dbaa4843c5529eac8 LESSON 15 1584140137
1421889 dcee04d339de96b842384bfdb4f2231a LESSON 14 1584140320
1421889 PRACTICE 24 1584164488
1421889 PRACTICE 24 1584164605
1421889 PRACTICE 24 1584164727
1421889 PRACTICE 22 1584164876
1421889 0b3e3b2090650a3a75ac177567a2a4df LESSON 15 1584165110
1421889 8bc4f9dc4d851a24030adb4edaa78d76 LESSON 15 1584165355
1421889 20ce27f5c0fa1760e6cbd3d73448e24b LESSON 15 1584196907
1421889 f5c805dd07f07ad0fe4e7c2ecbfe2c33 LESSON 12 1584197303
1421889 abe0ee5f3857bbb9df70e509b1d9c171 LESSON 15 1584198127
1421889 6e7d0ca426586f63165692df91d2970c LESSON 14 1584198659
1421889 f5c805dd07f07ad0fe4e7c2ecbfe2c33 LESSON 14 1584199105
1421889 abe0ee5f3857bbb9df70e509b1d9c171 LESSON 15 1584199454
1421889 1f1c9f50cfda8423937b47fe1da94c20 LESSON 13 1584204637
1421889 8be4967bdb537a43a01fd23183bb291f LESSON 20 1584205803
1421889 9e3fef437e8d8f97f0fa36985ebe89dd LESSON 13 1584206065
1421889 PRACTICE 24 1584206553
1421889 PRACTICE 24 1584206657
1421889 PRACTICE 24 1584206770
1421889 PRACTICE 24 1584206913
1421889 PRACTICE 24 1584220636
1421889 PRACTICE 24 1584220741
1421889 PRACTICE 24 1584220839
1421889 PRACTICE 24 1584220952
1421889 PRACTICE 24 1584231556
1421889 PRACTICE 26 1584231849
1421889 PRACTICE 20 1584231998
1421889 PRACTICE 24 1584232193
1421889 PRACTICE 24 1584232364
1421889 PRACTICE 28 1584232602
1421889 PRACTICE 28 1584232803
1421889 PRACTICE 30 1584233048
1421889 PRACTICE 24 1584233241
1421889 PRACTICE 24 1584233493
1421889 PRACTICE 20 1584233781
1421889 PRACTICE 26 1584233952
1421889 PRACTICE 20 1584234112
1421889 PRACTICE 24 1584234298
1421889 PRACTICE 26 1584234941
1421889 8b8ea3e216228659d9b33f27af1e2c41 LESSON 14 1584235166
1421889 6dbfa4dc2714058392f18535d0760c49 LESSON 20 1584235357
1421889 9c11e00601c7cfb3d89f09e84ab922f2 LESSON 15 1584235487
1421889 ff015bd7ae07d3cef401fdd5e36c0dff LESSON 13 1584235687
1421889 TEST 100 1584236073
1421889 PRACTICE 24 1584236183
1421889 PRACTICE 24 1584236277
1421889 PRACTICE 22 1584236358
1421889 PRACTICE 24 1584236662
1421889 PRACTICE 24 1584236754
1421889 PRACTICE 24 1584237003
1421889 TEST 100 1584237542
1421889 c0d917aaba5f135255d64e5ea4e67e73 LESSON 13 1584238036
1421889 6e7d0ca426586f63165692df91d2970c LESSON 15 1584239471
1421889 PRACTICE 24 1584244034
1421889 PRACTICE 24 1584244141
1421889 6e7d0ca426586f63165692df91d2970c LESSON 15 1584247152
1421889 6e7d0ca426586f63165692df91d2970c LESSON 14 1584247552
1421889 0c72b3e8db9a0aa1c5fb576e5aa2121e LESSON 15 1584247847
1421889 0c72b3e8db9a0aa1c5fb576e5aa2121e LESSON 15 1584248265
1421889 PRACTICE 26 1584300502
1421889 PRACTICE 24 1584300726
1421889 PRACTICE 22 1584300986
1421889 PRACTICE 24 1584301186
1421889 PRACTICE 24 1584301360
1421889 PRACTICE 18 1584301500
1421889 PRACTICE 20 1584301624
1421889 PRACTICE 26 1584301769
1421889 PRACTICE 20 1584301925
1421889 PRACTICE 22 1584302146
1421889 PRACTICE 24 1584302270
1421889 PRACTICE 24 1584302371
1421889 PRACTICE 22 1584303666
1421889 0c72b3e8db9a0aa1c5fb576e5aa2121e LESSON 14 1584303882
1421889 84c9cb5c4bbc32c9a84fbe4b0b2eaf86 LESSON 12 1584304122
1421889 b97078cfaa753dbe61e6e8a0033219c8 LESSON 20 1584305226
1421889 PRACTICE 26 1584307121
1421889 PRACTICE 22 1584307277
1421889 PRACTICE 20 1584307405
1421889 PRACTICE 24 1584307551
1421889 PRACTICE 24 1584307706
1421889 PRACTICE 22 1584307870
1421889 PRACTICE 20 1584308045
1421889 PRACTICE 20 1584308210
1421889 PRACTICE 20 1584308370
1421889 PRACTICE 20 1584308517
1421889 PRACTICE 26 1584308682
1421889 PRACTICE 24 1584308832
1421889 PRACTICE 26 1584308992
1421889 PRACTICE 22 1584309154
1421889 PRACTICE 24 1584309299
1421889 PRACTICE 22 1584309412
1421889 PRACTICE 22 1584309570
1421889 PRACTICE 24 1584309688
1421889 PRACTICE 24 1584309793
1421889 PRACTICE 24 1584309898
1421889 PRACTICE 22 1584310016
1421889 PRACTICE 22 1584310170
1421889 0b70154e6187455dfd237b3bc1daf3f8 PRACTICE 15 1584310337
1421889 d50782082402044b190d7504ae5ec836 LESSON 13 1584310501
1421889 d50782082402044b190d7504ae5ec836 LESSON 13 1584310659
1421889 c97160c2246f4cfffae5d6d4296de93f TEST 20 1584311940
1421889 d50782082402044b190d7504ae5ec836 LESSON 15 1584312057
1421889 PRACTICE 24 1584312193
1421889 812883de38afbc0d0376728f9bfa7d21 LESSON 15 1584398500
1421889 812883de38afbc0d0376728f9bfa7d21 LESSON 14 1584399546
1421889 812883de38afbc0d0376728f9bfa7d21 LESSON 15 1584477108
1421889 05901bbe6fcc68047fc563a841854221 LESSON 13 1584484654
1421889 0c72b3e8db9a0aa1c5fb576e5aa2121e LESSON 15 1584484871