https://github.com/libdns/loopia
https://github.com/libdns/loopia
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/libdns/loopia
- Owner: libdns
- License: mit
- Created: 2021-05-25T15:28:32.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2025-05-15T07:29:02.000Z (about 1 year ago)
- Last Synced: 2025-05-15T07:29:40.879Z (about 1 year ago)
- Language: Go
- Size: 33.2 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
libdns-loopia for [`libdns`](https://github.com/libdns/libdns)
=======================
[](https://pkg.go.dev/github.com/libdns/loopia)
[](https://github.com/libdns/loopia/actions/workflows/go.yml)
[](https://www.loopia.se/api/)
This package implements the [libdns interfaces](https://github.com/libdns/libdns) for Loopia, allowing you to manage DNS records.
## Usage
```golang
import (
loopia "github.com/libdns/loopia"
)
p := &loopia.Provider{
Username: "youruser@loopiaapi",
Password: "yourpassword",
}
zone := "example.org"
records, err := p.GetRecords(ctx, zone)
```
For more details check the `_examples` folder in the source.
## Noteworthy
If you are adding or chainging records, like acme/letsencrypt validation, Loopia is somewhat slow to propagate the result.
It might take __up to 15 minutes__. That said, I have seen it come throug in as little as 1,5 minutes.
To do everything this library can do the Loopia API user needs access to the following...
- getSubdomains
- addSubdomain
- removeSubdomain
- getZoneRecords
- addZoneRecord
- updateZoneRecord
- removeZoneRecord