draggit-sdk 1.0.0__py3-none-any.whl
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.
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: draggit-sdk
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: Professional PDF watermarking service SDK
|
|
5
|
+
Home-page: https://github.com/draggit/draggit-sdk
|
|
6
|
+
Author: Draggit Team
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
10
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
13
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
14
|
+
Classifier: Operating System :: OS Independent
|
|
15
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
16
|
+
Classifier: Intended Audience :: Developers
|
|
17
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
18
|
+
Classifier: Topic :: Office/Business
|
|
19
|
+
Requires-Python: >=3.8
|
|
20
|
+
Description-Content-Type: text/markdown
|
|
21
|
+
License-File: LICENSE
|
|
22
|
+
Requires-Dist: requests>=2.28.0
|
|
23
|
+
Dynamic: author
|
|
24
|
+
Dynamic: classifier
|
|
25
|
+
Dynamic: description
|
|
26
|
+
Dynamic: description-content-type
|
|
27
|
+
Dynamic: home-page
|
|
28
|
+
Dynamic: license-file
|
|
29
|
+
Dynamic: requires-dist
|
|
30
|
+
Dynamic: requires-python
|
|
31
|
+
Dynamic: summary
|
|
32
|
+
|
|
33
|
+
# Draggit SDK
|
|
34
|
+
|
|
35
|
+
Professional PDF watermarking service for Python applications.
|
|
36
|
+
|
|
37
|
+
## Features
|
|
38
|
+
|
|
39
|
+
✅ **Easy Integration** - Simple Python API
|
|
40
|
+
✅ **Flexible Watermarking** - Text + Logo positioning
|
|
41
|
+
✅ **License Tracking** - Built-in usage monitoring
|
|
42
|
+
✅ **Secure** - API key authentication
|
|
43
|
+
✅ **Black Box** - No code modification possible
|
|
44
|
+
|
|
45
|
+
## Installation
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
pip install draggit-sdk
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Quick Start
|
|
52
|
+
|
|
53
|
+
```python
|
|
54
|
+
from draggit import DraggitClient
|
|
55
|
+
|
|
56
|
+
# Initialize client
|
|
57
|
+
client = DraggitClient(api_key="your-api-key")
|
|
58
|
+
|
|
59
|
+
# Sign PDF
|
|
60
|
+
result = client.sign_and_save(
|
|
61
|
+
input_pdf="document.pdf",
|
|
62
|
+
output_pdf="document_signed.pdf"
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
print(f"Signed! Used {result['signatures_used']} signatures")
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Usage
|
|
69
|
+
|
|
70
|
+
### Basic Signing
|
|
71
|
+
|
|
72
|
+
```python
|
|
73
|
+
client = DraggitClient(api_key="demo-key")
|
|
74
|
+
|
|
75
|
+
# Sign and save
|
|
76
|
+
result = client.sign_and_save("input.pdf", "output.pdf")
|
|
77
|
+
# Returns: {
|
|
78
|
+
# 'status': 'success',
|
|
79
|
+
# 'message': 'PDF signed successfully with Draggit watermarks',
|
|
80
|
+
# 'tier': 'free',
|
|
81
|
+
# 'signatures_used': 1,
|
|
82
|
+
# 'output_file': 'output.pdf',
|
|
83
|
+
# 'file_size': 28136
|
|
84
|
+
# }
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Check License
|
|
88
|
+
|
|
89
|
+
```python
|
|
90
|
+
# Validate API key
|
|
91
|
+
is_valid, info = client.validate_license()
|
|
92
|
+
|
|
93
|
+
if is_valid:
|
|
94
|
+
print(f"Valid! Remaining: {info['signatures_remaining']}")
|
|
95
|
+
else:
|
|
96
|
+
print("Invalid or expired API key")
|
|
97
|
+
|
|
98
|
+
# Get detailed info
|
|
99
|
+
license_info = client.get_license_info()
|
|
100
|
+
print(f"Tier: {license_info['license_type']}")
|
|
101
|
+
print(f"Used: {license_info['signatures_used']}/{license_info['signatures_limit']}")
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Configuration
|
|
105
|
+
|
|
106
|
+
```python
|
|
107
|
+
from draggit import WatermarkConfig
|
|
108
|
+
|
|
109
|
+
# Get current config
|
|
110
|
+
config = client.get_config()
|
|
111
|
+
|
|
112
|
+
# Modify config
|
|
113
|
+
config.logo_x = 100
|
|
114
|
+
config.logo_y = 150
|
|
115
|
+
config.logo_opacity = 0.9
|
|
116
|
+
|
|
117
|
+
# Save config
|
|
118
|
+
client.update_config(config)
|
|
119
|
+
|
|
120
|
+
# Use presets
|
|
121
|
+
config = WatermarkConfig.preset_subtle()
|
|
122
|
+
config = WatermarkConfig.preset_default()
|
|
123
|
+
config = WatermarkConfig.preset_prominent()
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## API Keys
|
|
127
|
+
|
|
128
|
+
- `demo-key` - Free tier (100 signatures)
|
|
129
|
+
- `pro-key` - Pro tier (1,000 signatures)
|
|
130
|
+
- Contact support for custom keys
|
|
131
|
+
|
|
132
|
+
## Configuration Options
|
|
133
|
+
|
|
134
|
+
| Option | Type | Default | Range |
|
|
135
|
+
|--------|------|---------|-------|
|
|
136
|
+
| text_opacity | float | 0.08 | 0-1 |
|
|
137
|
+
| text_rotation | float | -25 | -45 to 45 |
|
|
138
|
+
| text_scale | float | 0.35 | 0-1 |
|
|
139
|
+
| logo_opacity | float | 0.85 | 0-1 |
|
|
140
|
+
| logo_width | int | 100 | 50-200 |
|
|
141
|
+
| logo_height | int | 70 | 40-150 |
|
|
142
|
+
| logo_x | int | 50 | 0+ |
|
|
143
|
+
| logo_y | int | 80 | 0+ |
|
|
144
|
+
|
|
145
|
+
## Error Handling
|
|
146
|
+
|
|
147
|
+
```python
|
|
148
|
+
from draggit import DraggitClient
|
|
149
|
+
|
|
150
|
+
try:
|
|
151
|
+
client = DraggitClient(api_key="invalid-key")
|
|
152
|
+
except ConnectionError as e:
|
|
153
|
+
print(f"Connection error: {e}")
|
|
154
|
+
|
|
155
|
+
try:
|
|
156
|
+
result = client.sign_and_save("nonexistent.pdf", "output.pdf")
|
|
157
|
+
except FileNotFoundError as e:
|
|
158
|
+
print(f"File error: {e}")
|
|
159
|
+
except ValueError as e:
|
|
160
|
+
print(f"API error: {e}")
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## What This SDK Does
|
|
164
|
+
|
|
165
|
+
✅ Adds watermarks to PDFs
|
|
166
|
+
✅ Flexible positioning and opacity control
|
|
167
|
+
✅ License-based usage tracking
|
|
168
|
+
✅ Simple Python API
|
|
169
|
+
|
|
170
|
+
## What This SDK Does NOT Do
|
|
171
|
+
|
|
172
|
+
❌ Digital signature with certificates (client's responsibility)
|
|
173
|
+
❌ Code modification (black box - no source code access)
|
|
174
|
+
❌ Decompilation possible
|
|
175
|
+
|
|
176
|
+
## Support
|
|
177
|
+
|
|
178
|
+
For support, contact: support@draggit.com
|
|
179
|
+
|
|
180
|
+
## License
|
|
181
|
+
|
|
182
|
+
Proprietary - See LICENSE file
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
draggit_sdk-1.0.0.dist-info/licenses/LICENSE,sha256=_SMgt3vJWweA4IhyfnMk_cAb0qzaJMiF8RDWtAi1kn8,1241
|
|
2
|
+
draggit_sdk-1.0.0.dist-info/METADATA,sha256=vUT_Kfh_j3oHoUmaDK0XB4l7Qm-fb3eAeD8tl0n8RQ0,4477
|
|
3
|
+
draggit_sdk-1.0.0.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
|
|
4
|
+
draggit_sdk-1.0.0.dist-info/entry_points.txt,sha256=bjG1XsydtG05ePxke_dWaUU49ldtfv4d-5ea__oDQz0,45
|
|
5
|
+
draggit_sdk-1.0.0.dist-info/top_level.txt,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
6
|
+
draggit_sdk-1.0.0.dist-info/RECORD,,
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
DRAGGIT SDK - PROPRIETARY LICENSE
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 Draggit. All rights reserved.
|
|
4
|
+
|
|
5
|
+
TERMS AND CONDITIONS
|
|
6
|
+
|
|
7
|
+
1. OWNERSHIP
|
|
8
|
+
This software is the proprietary property of Draggit. Ownership, title, and all
|
|
9
|
+
rights remain exclusively with Draggit.
|
|
10
|
+
|
|
11
|
+
2. RESTRICTED USE
|
|
12
|
+
You may use this software only:
|
|
13
|
+
- To consume the Draggit API service
|
|
14
|
+
- As provided by Draggit without modification
|
|
15
|
+
- In accordance with Draggit Terms of Service
|
|
16
|
+
|
|
17
|
+
3. RESTRICTIONS
|
|
18
|
+
You may NOT:
|
|
19
|
+
- Reverse engineer, decompile, or disassemble this software
|
|
20
|
+
- Modify, alter, or create derivative works
|
|
21
|
+
- Remove or obscure any proprietary notices
|
|
22
|
+
- Use this software for any purpose other than consuming Draggit services
|
|
23
|
+
- Distribute this software without Draggit's written permission
|
|
24
|
+
- Attempt to access, use, or modify the source code
|
|
25
|
+
|
|
26
|
+
4. INTELLECTUAL PROPERTY
|
|
27
|
+
All intellectual property rights including patents, copyrights, trade secrets,
|
|
28
|
+
and trademarks are owned by Draggit.
|
|
29
|
+
|
|
30
|
+
5. DISCLAIMER
|
|
31
|
+
This software is provided "AS IS" without warranty of any kind, express or
|
|
32
|
+
implied.
|
|
33
|
+
|
|
34
|
+
6. LIMITATION OF LIABILITY
|
|
35
|
+
In no event shall Draggit be liable for any indirect, incidental, special,
|
|
36
|
+
consequential, or punitive damages.
|
|
37
|
+
|
|
38
|
+
For commercial use or licensing inquiries, contact: license@draggit.com
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|