A Taio Action for Pastery

David Blue
3 min readOct 12, 2022

--

Pastery Action - iPad Pro
Pastery Action — iPad Pro

Description

Create a Pastery paste via API with the current document’s contents. The result’s URL will be passed to the system clipboard.

You’ll need to change the value of the apikey variable to your own Pastery API key.

See Pastery’s API documentation

Pastery Taio Action Demonstration

JSON

{
"actions" : [
{
"type" : "@flow.set-variable",
"parameters" : {
"value" : {
"value" : "{{YOURAPIKEY}}"
},
"name" : {
"value" : "apikey"
}
}
},
{
"type" : "@editor.filename",
"parameters" : {
"mode" : 0,
"includeExtension" : false
}
},
{
"type" : "@text.encode",
"parameters" : {
"mode" : 0,
"decode" : false,
"text" : {
"value" : "$",
"tokens" : [
{
"location" : 0,
"value" : "@input"
}
]
},
"base64Options" : 0
}
},
{
"type" : "@flow.set-variable",
"parameters" : {
"value" : {
"value" : "$",
"tokens" : [
{
"location" : 0,
"value" : "@input"
}
]
},
"name" : {
"value" : "filename"
}
}
},
{
"type" : "@text.encode",
"parameters" : {
"mode" : 0,
"decode" : false,
"text" : {
"value" : "$",
"tokens" : [
{
"location" : 0,
"value" : "@editor.full-text"
}
]
},
"base64Options" : 0
}
},
{
"type" : "@flow.set-variable",
"parameters" : {
"value" : {
"value" : "$",
"tokens" : [
{
"location" : 0,
"value" : "@editor.full-text"
}
]
},
"name" : {
"value" : "body"
}
}
},
{
"type" : "@util.request",
"parameters" : {
"body" : {
"value" : "$",
"tokens" : [
{
"location" : 0,
"value" : "body"
}
]
},
"url" : {
"value" : "https:\/\/www.pastery.net\/api\/paste\/?title=$&api_key=$&language=markdown",
"tokens" : [
{
"location" : 51,
"value" : "apikey"
},
{
"location" : 41,
"value" : "filename"
}
]
},
"method" : 1,
"headers" : {
"value" : "{\"Content-Type\": \"text\/plain\"}"
}
}
},
{
"type" : "@flow.javascript",
"parameters" : {
"script" : {
"value" : "\/\/ Get input\nconst text = $actions.inputValue;\n\nlet data = JSON.parse(text)\n\n\/\/ Resolve with output\n$actions.resolve(data.url);\n\n\/\/ Exception handling:\n\/\/ $actions.reject(\"Error\");\n\/\/ $actions.finish();"
}
}
},
{
"type" : "@flow.set-variable",
"parameters" : {
"value" : {
"value" : "$",
"tokens" : [
{
"location" : 0,
"value" : "@input"
}
]
},
"name" : {
"value" : "url"
}
}
},
{
"type" : "@ui.toast",
"parameters" : {
"style" : 1,
"waitUntilDone" : true,
"title" : {
"value" : "Paste created - URL passed to system clipboard"
}
}
},
{
"type" : "@util.set-clipboard",
"parameters" : {
"mode" : 0,
"localOnly" : false,
"text" : {
"value" : "$",
"tokens" : [
{
"location" : 0,
"value" : "url"
}
]
},
"expireAfter" : {
"value" : "0"
}
}
},
{
"type" : "@util.open-url",
"parameters" : {
"url" : {
"value" : "$",
"tokens" : [
{
"location" : 0,
"value" : "url"
}
]
},
"fullScreen" : false,
"browser" : 2
}
}
],
"buildVersion" : 1,
"name" : "Pastery",
"clientMinVersion" : 1,
"summary" : "Create a Pastery paste via API with the current document's contents. The result's URL will be passed to the system clipboard.\n\nYou'll need to change the value of the `apikey` variable to your own Pastery API key.\n\nSee Pastery's API documentation: https:\/\/www.pastery.net\/api",
"icon" : {
"glyph" : "arrow.triangle.2.circlepath.doc.on.clipboard",
"color" : "#FB6666"
},
"clientVersion" : 842
}

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

David Blue
David Blue

Written by David Blue

Self-described Software Historian, writing in public about social software & services. Always here to help. HML: https://davidblue.wtf/contact

No responses yet

Write a response