Linkish

All in one bookmarking manager

Integrate the Linkish API with the Formatting API

Setup the Linkish API trigger to run a workflow which integrates with the Formatting API. Pipedream's integration platform allows you to integrate Linkish and Formatting remarkably fast. Free for developers.

[Data] Convert JSON to String with the Formatting API

Convert an object to a JSON format string

 
Try it
[Data] Parse JSON with the Formatting API

Parse a JSON string

 
Try it
[Date/Time] Add/Subtract Time with the Formatting API

Add or subtract time from a given input

 
Try it
[Date/Time] Compare Dates with the Formatting API

Get the duration between two dates in days, hours, minutes, and seconds along with checking if they are the same.

 
Try it
[Date/Time] Format with the Formatting API

Format a date string to another date string

 
Try it

Overview of Linkish

Linkish is a versatile API that enables developers to create a wide variety of
applications. Some examples of what can be built using Linkish include:

  • Social networking applications
  • Content sharing websites
  • File sharing and storage applications
  • E-commerce platforms
  • Application and website security solutions
  • Developers can also use Linkish to create entirely new types of applications
    not yet imagined!

Connect Linkish

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
module.exports = defineComponent({
  props: {
    linkish: {
      type: "app",
      app: "linkish",
    }
  },
  async run({steps, $}) {
    const axios = require('axios');
    let access_token = "";
    
    // Card details
    let type = "link", // either "link" or "text"
    		url = "https://www.youtube.com/watch?v=dQw4w9WgXcQ", // required if "type" is "link"
    		title = "", // card title, if empty it will be scraped from "url"
    		description = "", // card description, if empty it will be scraped from "url"
    		thumbnail = "", // preview image URL, if empty it will be scraped from "url"
    		parent = "", // collections[index].id recieved from get-collection API
    		tags = []; // an array of strings, items can also have comma separated strings
    
    // Get access token based on the linkish API key
    return await axios({
    	method  : "POST", 
    	url: "https://api.linkish.io/get-token",
    	data : JSON.stringify({
    		"api_key": this.linkish.$auth.api_key
    	}),
    	headers: {
    		"Content-Type": "application/json",
    		"Accept": "application/json",
    	}
    }).then(async (response) => {
    
    	// Get collections based on the access token
    	access_token = response.data.token;
    	return await axios({
    		method  : "GET",
    		url: "https://api.linkish.io/get-collections",
    		headers: {
    			"Authorization": `Bearer ${access_token}`,
    		}
    	})
    
    }).then((response) => {
    
    	// Return the data as the step export
    	return response.data;
    
    }).then(async (collections) => {
    
    	// Change parent collection ID here or keep it empty for adding links to root collection
    	parent = collections[0].id;
    
    	// Save link in linkish dashboard
    	return await axios({
    		method  : "POST",
    		url: "https://api.linkish.io/save-link",
    		data : JSON.stringify({
    			"type": type,
    			"url": url,
    			"title": title,
    			"desc": description,
    			"thumbnail": thumbnail,
    			"parent": parent,
    			"tags": tags,
    		}),
    		headers: {
    			"Authorization": `Bearer ${access_token}`,
    			"Content-Type": "application/json",
    			"Accept": "application/json",
    		}
    	})
    
    }).then((response) => {
    
    	// Return the data as the step export
    	return response.data
    
    })
  },
})

Connect Formatting

1
2
3
4
5
6
export default defineComponent({
  async run({ steps, $ }) {
    const text = ' Hello world! ';
    return text.trim()
  },
})