Saved Keywords
Organize manual keyword collections, assign tags and workflow labels, and export lists.
Saved Keywords commands manage the manual keyword lists found in Semrush's Saved Keywords tool.
Identifier format
Saved Keywords operations use decimal string identifiers:
list_id: A decimal string (for example,"123456").keyword_id: A decimal string for individual keywords within a list.
Keep these values as strings in commands and JSON arguments.
Creating and managing collections
Check your account collection allowances and list active collections:
semrush saved-keyword-limits --json
semrush saved-keyword-lists --limit 20 --offset 0 --json
semrush saved-keyword-list-create --name 'Core Products' --confirm --json
semrush saved-keyword-list-get --list-id 123456 --json
semrush saved-keyword-list-rename --list-id 123456 --name 'Primary Products' --confirmImport keywords into a collection:
semrush saved-keywords-import --list-id 123456 \
--keywords '["cloud hosting","vps server"]' --database us \
--tags '["infrastructure"]' --confirmReading keywords and summary metrics
Query keywords with pagination and sorting:
semrush saved-keywords --list-id 123456 --limit 50 --offset 0 --json
semrush saved-keywords-summary --list-id 123456 --jsonUse FilterQL syntax to filter phrases by volume or text:
semrush saved-keywords --list-id 123456 \
--filter 'volume >= 200 AND phrase CONTAINS "server"' \
--sort-field volume --descending true --jsonUpdating keywords, tags, and labels
Keyword mutation commands require either an explicit --keyword-ids array or a --filter string. Supplying both or omitting both returns an error before network dispatch.
semrush saved-keywords-add-tags --list-id 123456 \
--keyword-ids '["987654"]' --tags '["priority"]' --confirm
semrush saved-keywords-remove-tags --list-id 123456 \
--filter 'phrase = "vps server"' --tags '["infrastructure"]' --confirm
semrush saved-keywords-update-metrics --list-id 123456 \
--keyword-ids '["987654"]' --confirmUpdating metrics consumes your account metric refresh allowance.
Setting workflow progress labels
Annotate phrases with workflow milestone labels (position_tracking, content_written, or brief_generated):
semrush saved-keywords-label --list-id 123456 \
--keyword-ids '["987654"]' --labels '["content_written"]' --confirmLabels provide tracking metadata inside Semrush; setting a label does not launch automated tracking or write external content.
Copying and moving keywords
Transfer phrases between collections:
semrush saved-keywords-copy --list-id 123456 --target-list-id 654321 \
--keyword-ids '["987654"]' --confirm
semrush saved-keywords-move --list-id 123456 --target-list-id 654321 \
--keyword-ids '["987654"]' --confirmCopy leaves the source list unchanged; move removes the selected keywords from the source list.
Deletion and undo recovery
Both keyword and list deletions return an undo_id that can be used to restore the deleted items:
semrush saved-keywords-delete --list-id 123456 --keyword-ids '["987654"]' --confirm --json
semrush saved-keywords-undo-delete --undo-id 'undo-token-placeholder' --confirm
semrush saved-keyword-list-delete --list-ids '["123456"]' --confirm --json
semrush saved-keyword-list-undo-delete --undo-id 'undo-token-placeholder' --confirmExporting collections
Export filtered or full collections to CSV, semicolon-delimited CSV, or XLSX:
semrush saved-keywords-export --list-id 123456 --format csv --output keywords.csvThe CLI checks that the target file does not already exist before downloading.