plagscan 0.0.3 → 0.0.4
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.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/CHANGELOG.md +7 -0
- data/README.md +58 -0
- data/lib/plagscan.rb +6 -0
- data/lib/plagscan/users.rb +39 -0
- data/lib/plagscan/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e91832aeeed75d754081b6a4c7a5e50866500a5b7520455c1eb9d50cd49f8ee3
|
4
|
+
data.tar.gz: ffcefc0444bb5a19f0dec3d08f1dc3c3c77398d16943f1d83a06cc6a265d05df
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5371b817bde97eb33623f19374dab3a3998bba2a5da348f34df30594797781e646cb7e00401190ae6418b15210c0dc7c66855f8a7af22ea2d5bf74acecfe12e6
|
7
|
+
data.tar.gz: 6ad3e5d00a4e17cbe999aa3d7795ae2f02f09739d56d5bd187d4ff27a8d138a740a105b16a1867b0097f6fa9a8072cd039a25c847e8c4bd977b2ae1dc76a9de3
|
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,13 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
3
|
## Unreleased
|
4
|
+
- none
|
5
|
+
|
6
|
+
## [0.0.4](releases/tag/v0.0.4) - 2019-12-31
|
7
|
+
### Added
|
8
|
+
- Support for some `users` APIs (list and get)
|
9
|
+
|
10
|
+
## [0.0.3](releases/tag/v0.0.3) - 2019-08-16
|
4
11
|
### Updated
|
5
12
|
- Support File params in body actions (multipart form)
|
6
13
|
- Include response body in invalid http response error message
|
data/README.md
CHANGED
@@ -23,6 +23,64 @@ Or install it yourself as:
|
|
23
23
|
|
24
24
|
$ gem install plagscan
|
25
25
|
|
26
|
+
# Supported APIs
|
27
|
+
|
28
|
+
## Ping
|
29
|
+
#### Check if the PlagScan API is available
|
30
|
+
```ruby
|
31
|
+
Plagscan.ping
|
32
|
+
=> true
|
33
|
+
```
|
34
|
+
|
35
|
+
## Token
|
36
|
+
#### Authenticate and fetch `access_token` to use with other APIs
|
37
|
+
```ruby
|
38
|
+
Plagscan::Token.fetch client_id: '1234', client_secret: 'secret'
|
39
|
+
=> { access_token: 'secret_token', expires_in: 86400 }
|
40
|
+
```
|
41
|
+
|
42
|
+
## Documents
|
43
|
+
#### Upload documents to be checked by PlagScan
|
44
|
+
```ruby
|
45
|
+
Plagscan::Documents.create access_token: 'secret_token', file: file
|
46
|
+
=> { documentID: '1234', .... }
|
47
|
+
```
|
48
|
+
|
49
|
+
N.B. you can also pass through the document as raw text using the `text` parameter in place of the `file` parameter.
|
50
|
+
|
51
|
+
Optional parameters for `userID`, `textname`, `toRepository` and `saveOrig`.
|
52
|
+
See [document create documentation](https://api.plagscan.com/v3docs/#api-Document-SubmitDocument)
|
53
|
+
for further details
|
54
|
+
|
55
|
+
#### Begin check of document uploaded to PlagScan
|
56
|
+
```ruby
|
57
|
+
Plagscan::Documents.check access_token: 'secret_token', document_id: 1234
|
58
|
+
=> nil
|
59
|
+
```
|
60
|
+
|
61
|
+
#### Retrieve results of document scan
|
62
|
+
```ruby
|
63
|
+
Plagscan::Documents.retrieve access_token: 'secret_token', document_id: 1234, mode: 0
|
64
|
+
=> { ... }
|
65
|
+
```
|
66
|
+
See [document retrieve documentation](https://api.plagscan.com/v3docs/#api-Document-RetrieveDocumentReport)
|
67
|
+
for further details
|
68
|
+
|
69
|
+
## Users
|
70
|
+
#### List user details
|
71
|
+
```ruby
|
72
|
+
Plagscan::Users.list access_token: 'secret_token'
|
73
|
+
=> [{ ... }, { ... }, ...]
|
74
|
+
```
|
75
|
+
See [user list documentation](https://api.plagscan.com/v3docs/#api-User-ListUser) for further details
|
76
|
+
|
77
|
+
#### Get user details
|
78
|
+
```ruby
|
79
|
+
Plagscan::Users.get access_token: 'secret_token', user_id: 123456
|
80
|
+
=> { ... }
|
81
|
+
```
|
82
|
+
See [user get documentation](https://api.plagscan.com/v3docs/#api-User-GetUser) for further details
|
83
|
+
|
26
84
|
|
27
85
|
# Development
|
28
86
|
|
data/lib/plagscan.rb
CHANGED
@@ -15,6 +15,7 @@ require 'plagscan/request'
|
|
15
15
|
require 'plagscan/ping'
|
16
16
|
require 'plagscan/token'
|
17
17
|
require 'plagscan/documents'
|
18
|
+
require 'plagscan/users'
|
18
19
|
|
19
20
|
#
|
20
21
|
# Basic configuration for PlagScan API
|
@@ -24,3 +25,8 @@ module Plagscan
|
|
24
25
|
'https://api.plagscan.com/v3/'
|
25
26
|
end
|
26
27
|
end
|
28
|
+
|
29
|
+
#
|
30
|
+
# Alias `PlagScan` to `Plagscan`
|
31
|
+
#
|
32
|
+
PlagScan = Plagscan
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Plagscan
|
4
|
+
#
|
5
|
+
# PlagScan users API
|
6
|
+
#
|
7
|
+
class Users
|
8
|
+
#
|
9
|
+
# User get REST API
|
10
|
+
# @param [Number] start The start position of the list (optional)
|
11
|
+
# @param [Number] limit The limit of results returned (optional)
|
12
|
+
# @return [Array] containing array of data for Users
|
13
|
+
#
|
14
|
+
# For more details, see https://api.plagscan.com/v3docs/#api-User-ListUser
|
15
|
+
#
|
16
|
+
def self.list(access_token:, **options)
|
17
|
+
list_props = options.delete_if { |k, _| !%i[start limit].include? k }
|
18
|
+
|
19
|
+
Plagscan::Request.json_request(
|
20
|
+
'users',
|
21
|
+
access_token: access_token, body: list_props
|
22
|
+
)&.[](:data)
|
23
|
+
end
|
24
|
+
|
25
|
+
#
|
26
|
+
# User get REST API
|
27
|
+
# @param [Number] user_id PlagScan user ID
|
28
|
+
# @return [Hash] containing data from a User
|
29
|
+
#
|
30
|
+
# For more details, see https://api.plagscan.com/v3docs/#api-User-GetUser
|
31
|
+
#
|
32
|
+
def self.get(access_token:, user_id:)
|
33
|
+
Plagscan::Request.json_request(
|
34
|
+
"users/#{user_id}",
|
35
|
+
access_token: access_token
|
36
|
+
)&.[](:data)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
data/lib/plagscan/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: plagscan
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Bromwich
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-12-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -131,6 +131,7 @@ files:
|
|
131
131
|
- lib/plagscan/ping.rb
|
132
132
|
- lib/plagscan/request.rb
|
133
133
|
- lib/plagscan/token.rb
|
134
|
+
- lib/plagscan/users.rb
|
134
135
|
- lib/plagscan/version.rb
|
135
136
|
- plagscan.gemspec
|
136
137
|
homepage: https://github.com/Studiosity/plagscan-ruby
|
@@ -153,8 +154,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
153
154
|
- !ruby/object:Gem::Version
|
154
155
|
version: '0'
|
155
156
|
requirements: []
|
156
|
-
|
157
|
-
rubygems_version: 2.7.6.2
|
157
|
+
rubygems_version: 3.0.6
|
158
158
|
signing_key:
|
159
159
|
specification_version: 4
|
160
160
|
summary: Ruby gem for PlagScan plagiarism APIs
|