What do you want to automate

with Guru and OpenSRS?

Prompt, edit and deploy AI agents that connect to Guru, OpenSRS and 2,500+ other apps in seconds.

Trusted by 1,000,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Add Tag to Card with Guru API on New DNS Zone Change from OpenSRS API
OpenSRS + Guru
 
Try it
Add Tag to Card with Guru API on New Domain Registration from OpenSRS API
OpenSRS + Guru
 
Try it
Add Tag to Card with Guru API on New Transfer Status from OpenSRS API
OpenSRS + Guru
 
Try it
Create Card with Guru API on New DNS Zone Change from OpenSRS API
OpenSRS + Guru
 
Try it
Create Card with Guru API on New Domain Registration from OpenSRS API
OpenSRS + Guru
 
Try it
Card Updated (Instant) from the Guru API

Emit new event when a user makes an edit to a card. See the documentation

 
Try it
New DNS Zone Change from the OpenSRS API

Emit new event when the DNS/ZONE check has passed or failed at the registry. See the documentation

 
Try it
New Domain Registration from the OpenSRS API

Emit new event for each new domain registration. See the documentation

 
Try it
New Transfer Status from the OpenSRS API

Emit new event when the status of a domain transfer changes. See the documentation

 
Try it
New Announcement Read (Instant) from the Guru API

Emit new event when a user clicks on the "I read it" button in an Announcement. See the documentation

 
Try it
Add Tag to Card with the Guru API

Links an existing tag to a specified card in Guru. See the documentation

 
Try it
Initiate Domain Transfer with the OpenSRS API

Initiate a domain transfer to OpenSRS. See the documentation

 
Try it
Create Card with the Guru API

Creates a new card on your Guru account. See the documentation

 
Try it
Export Card to PDF with the Guru API

Export a specific card identified by its ID to a PDF file. See the documentation

 
Try it
Register Domain with the OpenSRS API

Register a new domain. See the documentation

 
Try it
Integrate the Guru API with the OpenSRS API
Setup the Guru API trigger to run a workflow which integrates with the OpenSRS API. Pipedream's integration platform allows you to integrate Guru and OpenSRS remarkably fast. Free for developers.

Overview of Guru

The Guru API on Pipedream enables the automation of knowledge sharing and management tasks within your team or organization. Using this API, you can programmatically interact with Guru's knowledge base, including retrieving card details, creating new cards, and updating existing content. By leveraging Pipedream's serverless platform, you can craft workflows that trigger based on events from other services, process the data, and perform actions in Guru to keep your team's knowledge up to date and accessible.

Connect Guru

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    guru: {
      type: "app",
      app: "guru",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.getguru.com/api/v1/teams`,
      headers: {
        "Accept": `application/json`,
      },
      auth: {
        username: `${this.guru.$auth.username}`,
        password: `${this.guru.$auth.api_key}`,
      },
    })
  },
})

Connect OpenSRS

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
import { axios } from "@pipedream/platform";
import crypto from 'crypto';

export default defineComponent({
  props: {
    opensrs: {
      type: "app",
      app: "opensrs",
    }
  },
  async run({steps, $}) {
		const connectionDetails = {
			reseller_username: this.opensrs.$auth.reseller_username,
			api_key: this.opensrs.$auth.api_key,
			api_host_port: this.opensrs.$auth.api_host_port
		};

    //Payload of the request
		const xml = `<?xml version='1.0' encoding='UTF-8' standalone='no' ?>
<!DOCTYPE OPS_envelope SYSTEM 'ops.dtd'>
<OPS_envelope>
<header>
    <version>0.9</version>
</header>
<body>
<data_block>
    <dt_assoc>
        <item key="protocol">XCP</item>
        <item key="action">LOOKUP</item>
        <item key="object">DOMAIN</item>
        <item key="attributes">
         <dt_assoc>
                <item key="domain">${this.opensrs.$auth.domain}</item>
         </dt_assoc>
        </item>
    </dt_assoc>
</data_block>
</body>
</OPS_envelope>`;

		// Generate signature
		const generateSignature = (xml, apiKey) => {
			let md5 = crypto.createHash('md5');
			md5.update(xml + apiKey);
			let firstHash = md5.digest('hex');

			md5 = crypto.createHash('md5');
			md5.update(firstHash + apiKey);
			return md5.digest('hex');
		};
		const signature = generateSignature(xml, connectionDetails.api_key);

		// Prepare and call OpenSRS API
		const headers = {
			'Content-Type': 'text/xml',
			'X-Username': connectionDetails.reseller_username,
			'X-Signature': signature
		};

		return await axios($, {
			method: "POST",
			url: connectionDetails.api_host_port,
			headers,
			data: xml
		});
  },
})

Trusted by 1,000,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo