erlc-api 1.3.1 → 1.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -2
- package/index.js +1 -1
- package/package.json +1 -1
- package/src/classes/client.js +20 -22
- package/src/functions/server/getBans.js +24 -24
- package/src/functions/server/getCommandLogs.js +24 -24
- package/src/functions/server/getJoinLogs.js +24 -24
- package/src/functions/server/getKillLogs.js +24 -24
- package/src/functions/server/getModcallLogs.js +24 -24
- package/src/functions/server/getPlayers.js +24 -24
- package/src/functions/server/getQueue.js +24 -24
- package/src/functions/server/getServer.js +9 -11
- package/src/functions/server/runCommand.js +24 -24
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ Setting up is super simple:
|
|
|
17
17
|
|
|
18
18
|
const erlc = require("erlc");
|
|
19
19
|
const client = new erlc.Client({
|
|
20
|
-
globalToken: "", //
|
|
20
|
+
globalToken: "", // You get the global key directly from the ERLC developers. To increase your API request limits
|
|
21
21
|
});
|
|
22
22
|
client.config(); // Registers your client
|
|
23
23
|
```
|
|
@@ -30,7 +30,7 @@ Now you can start using API Methods - here are a few examples:
|
|
|
30
30
|
const erlc = require("erlc");
|
|
31
31
|
|
|
32
32
|
const getServerFunc = async () => {
|
|
33
|
-
const serverId = ""; // The server ApiKey you wish to target
|
|
33
|
+
const serverId = ""; // The server ApiKey you wish to target. You can get this api key in your (Server Settings)
|
|
34
34
|
const server = await erlc.getServer(serverId).catch(console.log); // Gets the server, logs any errors
|
|
35
35
|
|
|
36
36
|
console.log(server); // Logs the server object
|
|
@@ -45,3 +45,4 @@ getServerFunc();
|
|
|
45
45
|
|
|
46
46
|
Library Re-Development - [Egologics](https://twitter.com/0Adexus0)
|
|
47
47
|
API Development - [Police Roleplay Community](https://twitter.com/PRC_Roblox)
|
|
48
|
+
Apply for more API request limits - [Discord](https://discord.gg/prc)
|
package/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
module.exports = require(
|
|
1
|
+
module.exports = require('./src/erlc')
|
package/package.json
CHANGED
package/src/classes/client.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const erlc = require(
|
|
2
|
-
const assert = require(
|
|
1
|
+
const erlc = require('../erlc.js')
|
|
2
|
+
const assert = require('../functions/assert.js')
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* @typedef {Object} ClientConfig
|
|
@@ -13,26 +13,24 @@ const assert = require("../functions/assert.js");
|
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
15
|
class Client {
|
|
16
|
-
/**
|
|
17
|
-
* @constructor
|
|
18
|
-
* @param {ClientConfig} options - Client Options
|
|
19
|
-
*/
|
|
20
|
-
constructor(options) {
|
|
21
|
-
assert(
|
|
22
|
-
typeof options === "object",
|
|
23
|
-
`Syntax error: object expected for "options", received ${typeof options}`
|
|
24
|
-
);
|
|
25
|
-
this.options = { ...options };
|
|
26
|
-
}
|
|
27
16
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
17
|
+
/**
|
|
18
|
+
* @constructor
|
|
19
|
+
* @param {ClientConfig} options - Client Options
|
|
20
|
+
*/
|
|
21
|
+
constructor(options) {
|
|
22
|
+
assert(typeof options === 'object', `Syntax error: object expected for "options", received ${typeof options}`);
|
|
23
|
+
this.options = { ...options };
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Updates and returns the client configurationg
|
|
28
|
+
* @returns {ClientConfig} The client configuration.
|
|
29
|
+
*/
|
|
30
|
+
config() {
|
|
31
|
+
erlc.config = this.options
|
|
32
|
+
return erlc.config
|
|
33
|
+
}
|
|
36
34
|
}
|
|
37
35
|
|
|
38
|
-
module.exports = Client
|
|
36
|
+
module.exports = Client
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
const { BASEURL } = require("../../constants.js");
|
|
2
2
|
|
|
3
3
|
module.exports = (serverToken) => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
return new Promise(async (resolve, reject) => {
|
|
5
|
+
try {
|
|
6
|
+
const fetch = await import("node-fetch");
|
|
7
|
+
const { config } = await import("../../erlc.js");
|
|
8
|
+
|
|
9
|
+
const res = await fetch.default(`${BASEURL}/server/bans`, {
|
|
10
|
+
headers: {
|
|
11
|
+
"Authorization": config?.globalToken,
|
|
12
|
+
"Server-Key": serverToken,
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const data = await res.json().catch((err) => {
|
|
16
|
+
return reject(err);
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
if (!res.ok) {
|
|
20
|
+
return reject(data);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
resolve(data);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
reject(error);
|
|
21
26
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
} catch (error) {
|
|
25
|
-
reject(error);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
};
|
|
27
|
+
});
|
|
28
|
+
};
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
const { BASEURL } = require("../../constants.js");
|
|
2
2
|
|
|
3
3
|
module.exports = (serverToken) => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
return new Promise(async (resolve, reject) => {
|
|
5
|
+
try {
|
|
6
|
+
const fetch = await import("node-fetch");
|
|
7
|
+
const { config } = await import("../../erlc.js");
|
|
8
|
+
|
|
9
|
+
const res = await fetch.default(`${BASEURL}/server/commandlogs`, {
|
|
10
|
+
headers: {
|
|
11
|
+
"Authorization": config?.globalToken,
|
|
12
|
+
"Server-Key": serverToken,
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const data = await res.json().catch((err) => {
|
|
16
|
+
return reject(err);
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
if (!res.ok) {
|
|
20
|
+
return reject(data);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
resolve(data);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
reject(error);
|
|
21
26
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
} catch (error) {
|
|
25
|
-
reject(error);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
};
|
|
27
|
+
});
|
|
28
|
+
};
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
const { BASEURL } = require("../../constants.js");
|
|
2
2
|
|
|
3
3
|
module.exports = (serverToken) => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
return new Promise(async (resolve, reject) => {
|
|
5
|
+
try {
|
|
6
|
+
const fetch = await import("node-fetch");
|
|
7
|
+
const { config } = await import("../../erlc.js");
|
|
8
|
+
|
|
9
|
+
const res = await fetch.default(`${BASEURL}/server/joinlogs`, {
|
|
10
|
+
headers: {
|
|
11
|
+
"Authorization": config?.globalToken,
|
|
12
|
+
"Server-Key": serverToken,
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const data = await res.json().catch((err) => {
|
|
16
|
+
return reject(err);
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
if (!res.ok) {
|
|
20
|
+
return reject(data);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
resolve(data);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
reject(error);
|
|
21
26
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
} catch (error) {
|
|
25
|
-
reject(error);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
};
|
|
27
|
+
});
|
|
28
|
+
};
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
const { BASEURL } = require("../../constants.js");
|
|
2
2
|
|
|
3
3
|
module.exports = (serverToken) => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
return new Promise(async (resolve, reject) => {
|
|
5
|
+
try {
|
|
6
|
+
const fetch = await import("node-fetch");
|
|
7
|
+
const { config } = await import("../../erlc.js");
|
|
8
|
+
|
|
9
|
+
const res = await fetch.default(`${BASEURL}/server/killlogs`, {
|
|
10
|
+
headers: {
|
|
11
|
+
"Authorization": config?.globalToken,
|
|
12
|
+
"Server-Key": serverToken,
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const data = await res.json().catch((err) => {
|
|
16
|
+
return reject(err);
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
if (!res.ok) {
|
|
20
|
+
return reject(data);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
resolve(data);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
reject(error);
|
|
21
26
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
} catch (error) {
|
|
25
|
-
reject(error);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
};
|
|
27
|
+
});
|
|
28
|
+
};
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
const { BASEURL } = require("../../constants.js");
|
|
2
2
|
|
|
3
3
|
module.exports = (serverToken) => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
return new Promise(async (resolve, reject) => {
|
|
5
|
+
try {
|
|
6
|
+
const fetch = await import("node-fetch");
|
|
7
|
+
const { config } = await import("../../erlc.js");
|
|
8
|
+
|
|
9
|
+
const res = await fetch.default(`${BASEURL}/server/modcalls`, {
|
|
10
|
+
headers: {
|
|
11
|
+
"Authorization": config?.globalToken,
|
|
12
|
+
"Server-Key": serverToken,
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const data = await res.json().catch((err) => {
|
|
16
|
+
return reject(err);
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
if (!res.ok) {
|
|
20
|
+
return reject(data);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
resolve(data);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
reject(error);
|
|
21
26
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
} catch (error) {
|
|
25
|
-
reject(error);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
};
|
|
27
|
+
});
|
|
28
|
+
};
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
const { BASEURL } = require("../../constants.js");
|
|
2
2
|
|
|
3
3
|
module.exports = (serverToken) => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
return new Promise(async (resolve, reject) => {
|
|
5
|
+
try {
|
|
6
|
+
const fetch = await import("node-fetch");
|
|
7
|
+
const { config } = await import("../../erlc.js");
|
|
8
|
+
|
|
9
|
+
const res = await fetch.default(`${BASEURL}/server/players`, {
|
|
10
|
+
headers: {
|
|
11
|
+
"Authorization": config?.globalToken,
|
|
12
|
+
"Server-Key": serverToken,
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const data = await res.json().catch((err) => {
|
|
16
|
+
return reject(err);
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
if (!res.ok) {
|
|
20
|
+
return reject(data);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
resolve(data);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
reject(error);
|
|
21
26
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
} catch (error) {
|
|
25
|
-
reject(error);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
};
|
|
27
|
+
});
|
|
28
|
+
};
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
const { BASEURL } = require("../../constants.js");
|
|
2
2
|
|
|
3
3
|
module.exports = (serverToken) => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
return new Promise(async (resolve, reject) => {
|
|
5
|
+
try {
|
|
6
|
+
const fetch = await import("node-fetch");
|
|
7
|
+
const { config } = await import("../../erlc.js");
|
|
8
|
+
|
|
9
|
+
const res = await fetch.default(`${BASEURL}/server/queue`, {
|
|
10
|
+
headers: {
|
|
11
|
+
"Authorization": config?.globalToken,
|
|
12
|
+
"Server-Key": serverToken,
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const data = await res.json().catch((err) => {
|
|
16
|
+
return reject(err);
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
if (!res.ok) {
|
|
20
|
+
return reject(data);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
resolve(data);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
reject(error);
|
|
21
26
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
} catch (error) {
|
|
25
|
-
reject(error);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
};
|
|
27
|
+
});
|
|
28
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const { BASEURL, Vanity
|
|
1
|
+
const { BASEURL , Vanity} = require("../../constants.js");
|
|
2
2
|
module.exports = (serverToken) => {
|
|
3
3
|
return new Promise(async (resolve, reject) => {
|
|
4
4
|
try {
|
|
@@ -7,7 +7,7 @@ module.exports = (serverToken) => {
|
|
|
7
7
|
|
|
8
8
|
const res = await fetch.default(`${BASEURL}/server`, {
|
|
9
9
|
headers: {
|
|
10
|
-
Authorization: config?.globalToken,
|
|
10
|
+
"Authorization": config?.globalToken,
|
|
11
11
|
"Server-Key": serverToken,
|
|
12
12
|
},
|
|
13
13
|
});
|
|
@@ -20,9 +20,7 @@ module.exports = (serverToken) => {
|
|
|
20
20
|
return reject(data);
|
|
21
21
|
}
|
|
22
22
|
const getUsername = async (userId) => {
|
|
23
|
-
const response = await fetch.default(
|
|
24
|
-
`https://users.roblox.com/v1/users/${userId}`
|
|
25
|
-
);
|
|
23
|
+
const response = await fetch.default(`https://users.roblox.com/v1/users/${userId}`);
|
|
26
24
|
const userData = await response.json();
|
|
27
25
|
if (!response.ok) {
|
|
28
26
|
throw new Error(`Error fetching username for ID: ${userId}`);
|
|
@@ -31,14 +29,13 @@ module.exports = (serverToken) => {
|
|
|
31
29
|
};
|
|
32
30
|
try {
|
|
33
31
|
const ownerUsername = await getUsername(data.OwnerId);
|
|
34
|
-
const coOwnerUsernames = await Promise.all(
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
const VanityURL = `${Vanity}${data.JoinKey}`;
|
|
32
|
+
const coOwnerUsernames = await Promise.all(data.CoOwnerIds.map(getUsername));
|
|
33
|
+
const VanityURL = `${Vanity}${data.JoinKey}`
|
|
34
|
+
|
|
38
35
|
|
|
39
36
|
data.OwnerUsername = ownerUsername;
|
|
40
37
|
data.CoOwnerUsernames = coOwnerUsernames;
|
|
41
|
-
data.VanityURL = VanityURL
|
|
38
|
+
data.VanityURL = VanityURL
|
|
42
39
|
|
|
43
40
|
delete data.OwnerId;
|
|
44
41
|
delete data.CoOwnerIds;
|
|
@@ -47,8 +44,9 @@ module.exports = (serverToken) => {
|
|
|
47
44
|
} catch (error) {
|
|
48
45
|
reject(error);
|
|
49
46
|
}
|
|
47
|
+
|
|
50
48
|
} catch (error) {
|
|
51
49
|
reject(error);
|
|
52
50
|
}
|
|
53
51
|
});
|
|
54
|
-
};
|
|
52
|
+
};
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
const { BASEURL } = require("../../constants.js");
|
|
2
2
|
|
|
3
3
|
module.exports = (serverToken, command) => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
return new Promise(async (resolve, reject) => {
|
|
5
|
+
try {
|
|
6
|
+
const fetch = await import("node-fetch");
|
|
7
|
+
const { config } = await import("../../erlc.js");
|
|
8
|
+
const params = JSON.stringify({command: `${command}`})
|
|
9
|
+
console.log(params)
|
|
10
|
+
const res = await fetch.default(`${BASEURL}/server/command`, {
|
|
11
|
+
headers: {
|
|
12
|
+
"Authorization": config?.globalToken,
|
|
13
|
+
"Server-Key": serverToken,
|
|
14
|
+
"Content-Type": "application/json"
|
|
15
|
+
},
|
|
16
|
+
method: "POST",
|
|
17
|
+
body: params
|
|
18
|
+
});
|
|
19
|
+
if (!res.ok) {
|
|
20
|
+
return reject(data);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
resolve(true);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
reject(error);
|
|
21
26
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
} catch (error) {
|
|
25
|
-
reject(error);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
};
|
|
27
|
+
});
|
|
28
|
+
};
|