Skip to content

Sricor/telegraph

Repository files navigation

Telegraph

Telegra.ph API

Installation

go get github.com/sricor/telegraph

Usage

Account > createAccount

Creates Telegraph Account
package main

import (
	"fmt"

	"github.com/sricor/telegraph"
)

func main() {
	client := telegraph.NewClient()
	account, err := client.CreateAccount(&telegraph.CreateAccountRequest{
		ShortName: "Sandbox",
		AuthorName: "Anonymous",
	})
	if err != nil {
		panic(err)
	}
	fmt.Print(account)
}

Account > editAccount

Edit Telegraph Account
package main

import (
	"fmt"

	"github.com/sricor/telegraph"
)

func main() {
	client := telegraph.NewClient()
	client.SetToken("<Token>")

	account, err := client.EditAccountInfo(&telegraph.EditAccountInfoRequest{
		ShortName: "Sandbox2",
		AuthorName: "Anonymous2",
	})
	if err != nil {
		panic(err)
	}
	fmt.Print(account)
}

Account > getAccount

Get Telegraph Account Information
package main

import (
	"fmt"

	"github.com/sricor/telegraph"
)

func main() {
	client := telegraph.NewClient()
	client.SetToken("<Token>")
	
	account, err := client.GetAccountInfo(&telegraph.GetAccountInfoRequest{
		Fields: []telegraph.AccountInfoFields{
			telegraph.AccountFieldShortName,
			telegraph.AccountFieldAuthorName,
		},
	})
	if err != nil {
		panic(err)
	}
	fmt.Print(account)
}
Revoke Telegraph Account AccessToken
package main

import (
	"fmt"

	"github.com/sricor/telegraph"
)

func main() {
	client := telegraph.NewClient()
	client.SetToken("<Token>")
    
	account, err := client.RevokeAccessToken(&telegraph.RevokeAccessTokenRequest{})
	if err != nil {
		panic(err)
	}
	fmt.Print(account)
}

Page > createPage

Create Telegraph Page
package main

import (
	"fmt"

	"github.com/sricor/telegraph"
)

func main() {
	client := telegraph.NewClient()
	client.SetToken("<Token>")

	content := telegraph.NodeElement{}
	content.AddText("Hello World!")

	page, err := client.CreatePage(&telegraph.CreatePageRequest{
		Title: "Sample Page",
		AuthorName: "Anonymous",
		Content: []telegraph.Node{content},
		// Content: []telegraph.Node{
		// 	telegraph.NodeElement{
		// 		Tag: "p",
		// 		Children: []telegraph.Node{
		// 			"Hello World!",
		// 		},
		// 	},
		// },
		ReturnContent: false,
	})
	if err != nil {
		panic(err)
	}
	fmt.Print(page)
}

Page > editPage

Edit Telegraph Page
package main

import (
	"fmt"

	"github.com/sricor/telegraph"
)

func main() {
	client := telegraph.NewClient()
	client.SetToken("<Token>")

	content := telegraph.NodeElement{}
	content.AddText("Hello World!")

	page, err := client.EditPage(&telegraph.EditPageRequest{
		Title: "Sample Page",
		AuthorName: "Anonymous",
		Content: []telegraph.Node{content},
		// Content: []telegraph.Node{
		// 	telegraph.NodeElement{
		// 		Tag: "p",
		// 		Children: []telegraph.Node{
		// 			"Hello World!",
		// 		},
		// 	},
		// },
		ReturnContent: false,
	})
	if err != nil {
		panic(err)
	}
	fmt.Print(page)
}

Page > getPage

Get Telegraph Page
package main

import (
	"fmt"

	"github.com/sricor/telegraph"
)

func main() {
	client := telegraph.NewClient()

	page, err := client.GetPage(&telegraph.GetPageRequest{
		Path: "Sample-Page-12-15",
		ReturnContent: true,
	})
	if err != nil {
		panic(err)
	}
	fmt.Print(page)
}
Get Telegraph Page List
package main

import (
	"fmt"

	"github.com/sricor/telegraph"
)

func main() {
	client := telegraph.NewClient()
	client.SetToken("<Token>")

	pages, err := client.GetPageList(&telegraph.GetPageListRequest{
		Limit: 3,
	})
	if err != nil {
		panic(err)
	}
	fmt.Print(pages)
}
Get Telegraph Page Views
package main

import (
	"fmt"

	"github.com/sricor/telegraph"
)

func main() {
	client := telegraph.NewClient()

	page, err := client.GetViews(&telegraph.GetViewsRequest{
		Path: "Sample-Page-12-15",
		Year: 2016,
		Month: 12,
	})
	if err != nil {
		panic(err)
	}
	fmt.Print(page)
}

About

Telegra.ph API in Go

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages