Checkly Go SDK This project is a Go SDK for Checkly monitoring service. It allows you to handle your checks, check groups, snippets, environments variables and everything you can do…
Checkly Go SDK
!Contributor Covenant



!GitHub go.mod Go version
!GitHub tag (latest by date)
This project is a Go SDK for Checkly monitoring service. It allows you to handle your checks, check groups, snippets, environments variables and everything you can do with our REST API.
Installation
To use the client library with your Checkly account, you will need an API Key for the account. Go to the Account Settings: API Keys page and click 'Create API Key'.
Make sure your project is using Go Modules (it will have a go.mod file in its root if it already is):
bash
$ go mod init
Then, add the reference of checkly-go-sdk in a Go program using import:
go
import checkly "github.com/checkly/checkly-go-sdk"
Run any of the normal go commands (build/install/test) and the Go toolchain will resolve and fetch the checkly-go-sdk module automatically.
Alternatively, you can also explicitly go get the package into a project:
bash
$ go get -u github.com/checkly/checkly-go-sdk
Getting Started
Create a new checkly Client by calling checkly.NewClient() (you will need to set your Checkly API Key and Account ID)
go
baseUrl := "https://api.checklyhq.com"
apiKey := os.Getenv("CHECKLY_API_KEY")
accountId := os.Getenv("CHECKLY_ACCOUNT_ID")
client := checkly.NewClient(
baseUrl,
apiKey,
nil, //custom http client, defaults to http.DefaultClient
nil, //io.Writer to output debug messages
)
client.SetAccountId(accountId)
> Note: if you don't have an API key, you can create one at here
Create your first checks
Once you have a client, you can create a check. See here how to create your first API & Browser checks.
go
apiCheck := checkly.Check{
Name: "My API Check",
Type: checkly.TypeAPI,
Frequency: 5,
Activated: true,
Locations: []string{
"eu-west-1",
"ap-northeast-2",
},
Tags: []string{ "production" },
Request: checkly.Request{
Method: http.MethodGet,
URL: "https://api.checklyhq.com/v1",
},
}
browserCheck := checkly.Check{
Name: "My Browser Check",
Type: checkly.TypeBrowser,
Frequency: 5,
Activated: true,
Locations: []string{"eu-west-1"},
Script: `const assert = require("chai").assert;
const puppeteer = require("puppeteer");
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto("https://example.com");
const title = await page.title();
assert.equal(title, "Example Site");
await browser.close();`,
}
ctx := context.WithTimeout(context.Background(), time.Second * 5)
client.CreateCheck(ctx, apiCheck)
client.CreateCheck(ctx, browserCheck)
> A complete example program! You can see an example program which creates a Checkly check in the [demo](demo/main.go) folder.
Questions
For questions and support please open a new discussion. The issue list of this repo is exclusively for bug reports and feature/docs requests.Issues
Please make sure to respect issue requirements and choose the proper issue template when opening an issue. Issues not conforming to the guidelines may be closed.Contribution
Please make sure to read the Contributing Guide before making a pull request.License
Members
-
checkly-cli ★ PINNED
TS/JS native Monitoring as Code workflow
TypeScript ★ 96 1d agoExplain → -
terraform-provider-checkly ★ PINNED
Terraform provider for the Checkly monitoring service
Go ★ 44 23h agoExplain → -
checkly-go-sdk ★ PINNED
Go SDK library for use with the Checkly API
Go ★ 20 6d agoExplain → -
checkly-k8s ★ PINNED ▣
Checkly Kubernetes Helm chart and manifests
Smarty ★ 8 11mo agoExplain → -
headless-recorder ▣
Chrome extension that records your browser interactions and generates a Playwright or Puppeteer script.
JavaScript ★ 15k 3y agoExplain → -
puppeteer-examples ▣
Puppeteer example scripts for running Headless Chrome from Node.
JavaScript ★ 3.0k 5y agoExplain → -
theheadless.dev ▣
🪖 Learn Puppeteer and Playwright - Tips, tricks and in-depth guides from the trenches.
Vue ★ 397 4y agoExplain → -
puppeteer-to-playwright
Puppeteer to Playwright conversion script
JavaScript ★ 141 3y agoExplain → -
playwright-examples
Demo code for Checkly Playwright tutorials and videos
TypeScript ★ 121 11mo agoExplain → -
docs.checklyhq.com ▣
Checkly docs
SCSS ★ 60 6mo agoExplain → -
public-roadmap ▣
Checkly public roadmap. All planned features, updates and tweaks.
★ 37 3y agoExplain → -
headless-benchmarks
Benchmarking scripts for Puppeteer, Playwright, WebDriverIO & Cypress.
JavaScript ★ 34 5y agoExplain → -
jamstack-deploy
Measure cloud providers and check which fits better for your Jamstack App.
Vue ★ 30 2y agoExplain → -
srebot
SREBot
TypeScript ★ 23 1y agoExplain → -
pulumi-checkly
Pulumi provider for the Checkly monitoring service
Makefile ★ 20 7d agoExplain → -
checkly-operator
Kubernetes checkly operator
Go ★ 10 10mo agoExplain → -
vitals-tester
No description.
CSS ★ 10 4y agoExplain → -
chrome-aws-lambda ⑂ ▣
Chromium Binary for AWS Lambda and Google Cloud Functions
TypeScript ★ 6 3y agoExplain → -
nextjs-conf-performance-demo
No description.
JavaScript ★ 6 4y agoExplain → -
handlebars ▣
A simple wrapper for Handlebars that can be used as a drop-in replacement
JavaScript ★ 5 7mo agoExplain → -
danube-store
No description.
Vue ★ 5 2y agoExplain → -
og-image ⑂
Open Graph Image as a Service - generate cards for Twitter, Facebook, Slack, etc
TypeScript ★ 5 2y agoExplain → -
docs
Checkly unifies testing, monitoring, & observability with an AI-native workflow. Application reliability for modern engineering.
MDX ★ 4 22h agoExplain → -
playwright-check-suite-examples
Example repository using Playwright Check Suites in Checkly
TypeScript ★ 4 6mo agoExplain → -
nextjs-checkly-starter-template
A minimal starter template to help you getting started with Nextjs and Checkly monitoring.
TypeScript ★ 3 6mo agoExplain → -
checkly-sample-pom
No description.
TypeScript ★ 3 2y agoExplain → -
serverless-plugin-select-resource
serverless plugin for selecting which resources to be deployed based on region and stage
JavaScript ★ 3 5y agoExplain → -
checkly-terraform-getting-started
No description.
HCL ★ 3 2y agoExplain → -
statuspage-aggregator
statuspage-aggregator
TypeScript ★ 3 2y agoExplain → -
checkly-ci-test
No description.
Vue ★ 3 1y agoExplain → -
browser-checks-starter
Examples and scripts accompanying the getting started docs on writing browser checks
JavaScript ★ 3 7y agoExplain → -
playwright-trace-viewer ⑂
Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.
TypeScript ★ 2 1d agoExplain → -
checkly-pay-calculator
No description.
TypeScript ★ 2 14d agoExplain → -
danube-store-bot-test ⑂
No description.
Vue ★ 2 1y agoExplain → -
next-commerce-demo
No description.
TypeScript ★ 2 3y agoExplain → -
browser-checks-starter-mocha ▣
Examples and scripts accompanying the getting started docs on writing browser checks
JavaScript ★ 2 5y agoExplain → -
pingdom-2-checkly
A simple Node script to convert Pingdom HTTP checks to Checkly and import them
JavaScript ★ 2 3y agoExplain → -
checkly-playwright-helpers
No description.
TypeScript ★ 1 11mo agoExplain → -
opentelemetry-demo ⑂
This repository contains the OpenTelemetry Astronomy Shop, a microservice-based distributed system intended to illustrate the implementation of OpenTelemetry in a near real-world environment.
TypeScript ★ 1 1y agoExplain → -
checkly-open-banking
No description.
JavaScript ★ 1 2y agoExplain → -
terraform-provider-checkly-v2
No description.
Go ★ 1 2y agoExplain → -
dns_debug_script
No description.
JavaScript ★ 1 3y agoExplain → -
my-gatsby-blog
No description.
JavaScript ★ 1 3y agoExplain → -
mac-demo-repo
No description.
JavaScript ★ 1 3y agoExplain → -
guides-monitoring-as-code
No description.
JavaScript ★ 1 5y agoExplain → -
checkly-action
No description.
Shell ★ 0 3d agoExplain → -
checkly-plugin
Checkly ecosystem plugin — skills for Monitoring as Code and soon specialized agents.
TypeScript ★ 0 13d agoExplain → -
helm-charts
Checkly helm charts
Go Template ★ 0 22d agoExplain → -
node-js-getting-started ⑂
Getting Started with Node on Heroku
HTML ★ 0 6y agoExplain → -
playwright-microphone-demo
Demo app and Playwright test suite for verifying browser microphone recording flows with fake media devices, deterministic getUserMedia mocks, and Checkly.
JavaScript ★ 0 1mo agoExplain → -
playwright-reporter-demo
Raccoon Records store using Checkly's Playwright Reporter
HTML ★ 0 8d agoExplain → -
yazl ⑂
yet another zip library for node
JavaScript ★ 0 11mo agoExplain → -
node-archiver ⑂
a streaming interface for archive generation
JavaScript ★ 0 11mo agoExplain → -
.github
No description.
★ 0 11mo agoExplain → -
mac-workshop
This repo is part of the Checkly monitoring as code workshop
TypeScript ★ 0 1y agoExplain → -
opentelemetry.io ⑂
The OpenTelemetry website and documentation
JavaScript ★ 0 1y agoExplain → -
checkly-otel-test-app
No description.
TypeScript ★ 0 2y agoExplain → -
fe-code-challenge-24
Checkly frontend challenge 24'
TypeScript ★ 0 2y agoExplain → -
checkly-advanced-cli-project-js
No description.
JavaScript ★ 0 3y agoExplain → -
checkly-basic-cli-project-js
No description.
JavaScript ★ 0 3y agoExplain → -
terraform-sample-advanced
No description.
HCL ★ 0 3y agoExplain → -
request ⑂
🏊🏾 Simplified HTTP request client.
JavaScript ★ 0 4y agoExplain → -
tcp-ping
No description.
TypeScript ★ 0 3y agoExplain → -
gke-prometheus-example
No description.
JavaScript ★ 0 3y agoExplain → -
registry ⑂
The global index of everything you can do with Pulumi.
HTML ★ 0 4y agoExplain → -
hapi-swagger ⑂
A Swagger interface for HAPI
★ 0 4y agoExplain → -
serverless ⑂
⚡ Serverless Framework – Build web, mobile and IoT applications with serverless architectures using AWS Lambda, Azure Functions, Google CloudFunctions & more! –
★ 0 4y agoExplain → -
jamstack-deploy-demo-app
Nuxt.js static app used to measure the performance of providers by Jamstack Deploy
Vue ★ 0 2y agoExplain → -
analytics-api-proxy
No description.
HTML ★ 0 3y agoExplain → -
analytics-cdn-proxy
No description.
HTML ★ 0 4y agoExplain → -
live-coding-challenge
live-coding-challenge
JavaScript ★ 0 4y agoExplain → -
now-github-starter ⑂
Starter project to demonstrate a project whose pull requests get automatically deployed
HTML ★ 0 4y agoExplain → -
terraform-cloud-sample
No description.
HCL ★ 0 5y agoExplain → -
bull ⑂
Premium Queue package for handling distributed jobs and messages in NodeJS.
JavaScript ★ 0 6y agoExplain → -
awake-template ⑂
No description.
Vue ★ 0 6y agoExplain → -
jshint ⑂
JSHint is a tool that helps to detect errors and potential problems in your JavaScript code
JavaScript ★ 0 7y agoExplain → -
shins ⑂
Shins Is Not Slate - port of Slate markdown renderer to Node.js
JavaScript ★ 0 7y agoExplain →
No repos match these filters.