Skip to Content
Elido is in closed beta — APIs are stable but rate-limits and quotas may change before GA. Request access →
SDKs

SDKs

Three first-party SDKs. They share the same surface — what’s available in one is available in the others.

TypeScript / JavaScript

Works in Node ≥ 20 and modern browsers.

npm install @elido/sdk # or pnpm / yarn / bun
import { ElidoApi } from "@elido/sdk"; const api = new ElidoApi({ baseUrl: "https://api.elido.app", token: process.env.ELIDO_TOKEN, }); const link = await api.links.create({ destination_url: "https://example.com", workspace_id: 1, }); const summary = await api.analytics.summary(1, { from: "2026-04-01", to: "2026-05-01", linkId: link.id, });

Python

pip install elido
from elido import ElidoApi api = ElidoApi(token=os.environ["ELIDO_TOKEN"]) link = api.links.create( destination_url="https://example.com", workspace_id=1, ) summary = api.analytics.summary(workspace_id=1, link_id=link.id, date_from="2026-04-01", date_to="2026-05-01")

Go

go get github.com/elidoapp/elido-go
import "github.com/elidoapp/elido-go/elido" client := elido.New(elido.Options{ BaseURL: "https://api.elido.app", Token: os.Getenv("ELIDO_TOKEN"), }) link, err := client.Links.Create(ctx, elido.CreateLinkInput{ DestinationURL: "https://example.com", WorkspaceID: 1, })

Infrastructure-as-Code

Want to declare links in HCL instead of imperative SDK calls? The Terraform providerterraform-provider-elido — wraps the same REST API with a plan / apply lifecycle. Useful when your short links sit alongside Cloudflare DNS and S3 landers in the same Terraform module.

Choosing a base URL

EnvironmentURL
Productionhttps://api.elido.app
Sandboxhttps://api.sandbox.elido.app
Self-hostedWhatever your operator gave you

Analytics queries hit a separate host on the same root: https://analytics.elido.app. The TypeScript SDK accepts this as analyticsBaseUrl; the Python and Go SDKs configure it via AnalyticsURL/analytics_url.

Error handling

Every SDK throws/returns the same shape — see Errors. In TypeScript the error class is ElidoApiError with status, code, message, and requestId.