1
- // Copyright (c) 2021 MC-Market (Mick Capital Pty. Ltd.)
2
- // MIT License (https://github.com/MC-Market-org/ js-api-wrapper/blob/main/LICENSE)
1
+ // Copyright (c) 2021 Harry [Majored] [[email protected] ]
2
+ // MIT License (https://github.com/Majored/mcm- js-api-wrapper/blob/main/LICENSE)
3
3
4
- // TODO
4
+ const { Wrapper, Token, TokenType } = require ( "mcm-js-api-wrapper" ) ;
5
+ const fs = require ( "fs" )
6
+
7
+ let token = new Token ( TokenType . PRIVATE , "Find @ https://www.mc-market.org/account/api" ) ;
8
+ let wrapper = new Wrapper ( ) ;
9
+
10
+ async function main ( ) {
11
+ await run ( ) . catch ( error => console . log ( error . toString ( ) ) ) ;
12
+ }
13
+
14
+ async function run ( ) {
15
+ await wrapper . init ( token ) ;
16
+
17
+ let ownedResources = await wrapper . resources ( ) . listOwnedAll ( ) ;
18
+ let fileData = "Resource ID,Purchase ID,Member ID,Renewal,Price,Currency,Date\n" ;
19
+
20
+ for ( const rIndex in ownedResources ) {
21
+ let resourceId = ownedResources [ rIndex ] [ "resource_id" ] ;
22
+ let purchases = await wrapper . resources ( ) . purchases ( ) . listAll ( resourceId ) ;
23
+
24
+ for ( const pIndex in purchases ) {
25
+ let purchaseId = purchases [ pIndex ] [ "purchase_id" ] ;
26
+ let memberId = purchases [ pIndex ] [ "purchaser_id" ] ;
27
+ let renewal = purchases [ pIndex ] [ "renewal" ] ;
28
+ let price = purchases [ pIndex ] [ "price" ] ;
29
+ let currency = purchases [ pIndex ] [ "currency" ] ;
30
+ let date = purchases [ pIndex ] [ "purchase_date" ] ;
31
+
32
+ fileData += `${ resourceId } ,${ purchaseId } ,${ memberId } ,${ renewal } ,${ price } ,${ currency } ,${ date } \n` ;
33
+ }
34
+
35
+ console . log ( `Fetched all purchases for ${ resourceId } .` ) ;
36
+ }
37
+
38
+ await fs . promises . writeFile ( "./purchases.json" , fileData , { encoding : 'utf8' } ) ;
39
+ console . log ( "Done!" ) ;
40
+ }
41
+
42
+ main ( ) ;
0 commit comments