Bulk Tools
Bulk tools let you manage large numbers of scripts efficiently — importing entire libraries, reviewing batches, cleaning up duplicates, and more. All bulk operations are scoped to your server only.
Bulk import
Use /script-admin import bulk to upload multiple .gpc files in a single operation. Each file is validated, hash-checked for duplicates, and processed according to your library's approval mode.
Dry run first
Pass dry_run:true to preview the import without saving anything. The response will show exactly which files would be imported, which would be skipped as duplicates, and which would fail validation — all without touching your library.
Example
/script-admin import bulk dry_run:true game:FortniteLive import
Once you're happy with the dry run preview, run without dry_run to actually import. Attach all your .gpc files directly to the command in Discord.
Example
/script-admin import bulk game:Fortnite approval_mode:auto_approveImport summary
After import you'll see a summary showing: files submitted, imported, pending, skipped (duplicates), failed validation, storage used, remaining slots, and the batch ID for later reference.
Import batch history
Every bulk import creates a batch record. Use batch IDs to approve or reject all scripts from a specific import without looking them up one by one.
List recent batches
Example
/script-admin import batchesShows batch ID, status, file counts, and timestamps for your recent imports.
View one batch in detail
Example
/script-admin import batches batch_id:BATCH123Full per-file breakdown for a single batch.
Bulk approve & reject
Approve or reject entire batches or lists of scripts in one command. Already-processed scripts are counted as skipped, not errors.
Approve all pending scripts from a batch
Example
/script-admin approval bulk-approve batch_id:BATCH123Approve specific scripts by ID
Example
/script-admin approval bulk-approve script_ids:SC1A2B3C,SC4D5E6FReject a batch with a reason
Example
/script-admin approval bulk-reject batch_id:BATCH123 reason:Duplicate of existing scriptsBulk cleanup
Use /script-admin cleanup bulk-cleanup to permanently remove scripts by type. Choose the target that matches what you want to clean up.
Delete all rejected scripts
Example
/script-admin cleanup bulk-cleanup type:rejectedDelete archived scripts
Example
/script-admin cleanup bulk-cleanup type:archivedArchive confirmed exact duplicates
Example
/script-admin cleanup bulk-cleanup type:exact_duplicatesArchives (does not hard-delete) scripts flagged as exact content duplicates.
Duplicate detection
ScriptVault automatically checks for duplicates when scripts are uploaded. Two types are detected:
Exact duplicate
The uploaded file has identical bytes to an existing script (same SHA-256 hash). Recommendation: skip the upload — these are truly identical files.
Normalized duplicate
The file content is the same after stripping whitespace and line ending differences. The files are functionally identical but byte-level different. Recommendation: review before deciding to keep or skip.
Review all duplicates in your library
Example
/script-admin cleanup duplicatesLists exact and normalized duplicates with matching script IDs and recommendations.
Archive selected duplicates
Example
/script-admin cleanup duplicate-cleanup script_ids:SC1A2B3C,SC4D5E6F action:archive_exactRequires Library Manager or Admin — Upload Manager alone cannot perform duplicate cleanup.
Library export
Use /library export to download a complete JSON export of your library's metadata. Useful for backups, audits, and migrating between servers.
Example
/library exportThe export includes: script ID, title, description, game, features, file size, download count, rating, approval status, duplicate status, archive/deprecated flags, import source, batch ID, and timestamps. File contents are not included — only metadata.
Plan limits
| Operation | Free | Pro | Creator |
|---|---|---|---|
| Bulk import (files per batch) | 10 | 50 | 100 |
| Bulk approve / reject (scripts) | 25 | 100 | 250 |
| Bulk cleanup / maintenance (scripts) | 25 | 100 | 250 |