Bulk disable (or enable) content on the Amazon Kids Parent Dashboard. Useful when you need to lock down all content for a child profile.
The script uses a two-layer approach for reliability:
- React Fiber — reads item data and pagination state directly from Amazon's React component tree (no fragile CSS selectors)
- Semantic DOM Fallback — if fiber access fails, falls back to
input[role="switch"],aria-label, and.allowlist-countattributes
The script auto-detects which page mode you're on:
| Page Mode | How to get there | Toggling method | Speed |
|---|---|---|---|
| Child selected | Click a child's name | Concurrent card clicks (5 at a time) | Fast |
| No child selected | Click the back arrow / don't select a child | Sequential "Manage access" panel toggles | Slower, but can see all content |
Important: The child-selected view only shows enabled items. To re-enable disabled content, use the no-child-selected view.
- Go to https://parents.amazon.com/explore (substitute
.comwith your Amazon domain, e.g..ca) - Set the child's age range to 2–2 for maximum content visibility
- Choose your view:
- Select a child for fast bulk disable (concurrent card clicks)
- Deselect the child (click the back arrow) for enable/disable of ALL content, including items currently disabled
- Clear all content-type filters for full visibility
- Open the browser console:
Ctrl+Shift+I(Windows/Linux) orCmd+Option+I(Mac) - Type
allow pastingand press Enter - Edit the
CONFIGsection at the top of the script if needed (see below) - Paste the script into the console and press Enter
- Repeat for each child profile
Edit the CONFIG object at the top of amazon_kids_content_disabler.js:
const CONFIG = {
// 'disable' = turn off content, 'enable' = turn on content
mode: 'disable',
// Filter by content type. null = all types.
// Valid: 'APP', 'EBOOK', 'VIDEO', 'AUDIBLE', 'SKILL'
contentTypes: null,
// Keyword filter (include). null = all items.
// Only items whose title contains ANY keyword will be processed.
keywords: null,
// Keyword filter (exclude). null = no exclusion.
// Items whose title contains ANY of these keywords will be SKIPPED.
excludeKeywords: null,
// Case-insensitive keyword matching
keywordCaseSensitive: false,
// Which child to manage (used in no-child-selected mode).
// null = auto-detect. Set to a name like 'Lily' for multiple children.
childName: null,
// Number of items to click at once (child-selected mode only)
clickConcurrency: 5,
// Delay between click batches in ms
clickDelayMs: 150,
// Delay between pagination loads in ms
pageDelayMs: 100,
// Max retries per failed toggle
maxRetries: 3,
// Logging: 'quiet', 'normal', 'verbose'
logLevel: 'normal',
// Log what would happen without making changes
dryRun: false,
};Disable all content (fast — select child first):
mode: 'disable',Re-enable all content (deselect child first):
mode: 'enable',Disable everything EXCEPT PBS and Sesame Street apps:
mode: 'disable',
excludeKeywords: ['PBS', 'Sesame Street'],
contentTypes: ['APP'],Enable only specific items (deselect child first):
mode: 'enable',
keywords: ['PBS', 'Sesame Street'],
contentTypes: ['APP'],Disable only videos and apps:
mode: 'disable',
contentTypes: ['VIDEO', 'APP'],Disable only items matching keywords:
mode: 'disable',
keywords: ['minecraft', 'roblox'],Dry run (preview without changing anything):
dryRun: true,
logLevel: 'verbose',| Shortcut | Action |
|---|---|
Ctrl+Alt+C |
Pause the script |
Ctrl+Alt+R |
Resume the script |
Tested on:
- amazon.com
- amazon.ca
Requires a modern browser with DevTools console access (Chrome, Edge, Firefox, etc.).
Based on the original script by tfriesen.
This script is provided as-is with no warranty. Use at your own risk. Amazon may change their dashboard at any time, which could break this script.