Set of CLI tools for your tumblr blog.
tt post -c path/to/keys.json -b blogName -m photo -f path/to/pic.jpg
Optional params (with example)
--caption "My pic"
--tags "one, second one"
tt blogInfo -c path/to/keys.json -b blogName
tt postInfo -c path/to/keys.json -b blogName --id "post-id"
tt blogPosts -c path/to/keys.json -b blogName --limit 12
tt blogQueue -c path/to/keys.json -b blogName --limit 12
tt blogDraft -c path/to/keys.json -b blogName --limit 12
Broken media posts cleaning tool. Cleans up (removes) video-posts with media pointing to 403 error returning URLs (by default). See available options below.
Clean through videos returning 403 HTTP status code
tt clean -c path/to/keys.json -b blogName --clean-code 403
Clean through videos returning HTTP status code other than 200 (OK)
tt clean -c path/to/keys.json -b blogName --clean-code 200 --clean-invert true
Deletes posts that fit passed conditions.
tt remove -c path/to/keys.json -b blogName -s queue
Find and show posts that will be removed. No removal action will be taken
tt remove -c path/to/keys.json -b blogName --post-type audio --post-tag garbage
Remove all audio-posts, perform actual removal (dry-run false)
tt remove -c path/to/keys.json -b blogName --post-type audio --remove-dry-run false
Tags video posts with 'video' tag, audio with 'audio' and so on...
Tag all posts
tt tag-type -c path/to/keys.json -b blogName
Tag all posts in queue
tt tag-type -c path/to/keys.json -b blogName -s queue
Tag all posts, for photo-posts containing GIFs, additionally set 'gif' tag
tt tag-type -c path/to/keys.json -b blogName --tag-type-gif add
Tag all photo posts containing GIFs with 'gif' tag instead of 'photo' tag
tt tag-type -c path/to/keys.json -b blogName --post-type photo --tag-type-gif replace
Perform function built from given user code. Should return one of the constants
from given codes
object. May return promise resolving to one of the codes
as well. Function receives post
and codes
(return codes) as arguments,
return one of return codes for further post process.
Example source code:
return post.type === 'link' ? code.REMOVE_POST : code.DO_NOTHING;
Would remove all link posts and keep other.
post.tags.push('new tag');
return code.UPDATE_POST;
Would update post with new added tag.
Codes are: DO_NOTHING
, UPDATE_POST
, REMOVE_POST
Remove all posts having 'bad post' tag from blog's queue
tt process -c path/to/keys.json -b blogName -s queue "return post.tags.indexOf('bad post') >= 0 ? codes.REMOVE_POST : code.DO_NOTHING;"
tt --help
tt <post|clean|remove|tag-type|process> --help
In order to use tumblr api for getting and processing posts, credentials file should be provided. File content JSON should look like this:
{
"consumer_key": " consumer key value ",
"consumer_secret": " consumer secret value ",
"token": " token value ",
"token_secret": "token secret value"
}
Installing the tool:
npm install -g tumblr-toolkit