Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for provider: mittwald #2177

Open
4 of 5 tasks
jotimann opened this issue May 6, 2024 · 3 comments
Open
4 of 5 tasks

Support for provider: mittwald #2177

jotimann opened this issue May 6, 2024 · 3 comments

Comments

@jotimann
Copy link

jotimann commented May 6, 2024

Welcome

  • Yes, I've searched similar issues on GitHub and didn't find any.
  • Yes, the DNS provider exposes a public API.
  • Yes, I know that the lego maintainers don't have an account in all DNS providers in the world.
  • Yes, I'm able to create a pull request and be able to maintain the implementation.
  • Yes, I'm able to test an implementation if someone creates a pull request to add the support of this DNS provider.

How do you use lego?

Library

Link to the DNS provider

https://www.mittwald.de/

Link to the API documentation

https://api.mittwald.de/v2/docs/

Additional Notes

No response

@ldez
Copy link
Member

ldez commented May 6, 2024

Hello,

I checked quickly the API documentation, and I didn't find an endpoint to delete a record.

I also didn't find how to get a zone ID or project ID from a domain.

Could you give me more information about those elements?


Sponsoring is a good way to sustain open source maintainers: sponsor me

@jotimann
Copy link
Author

jotimann commented May 7, 2024

Hello @ldez,

a DNS-Record is connected to a domain and the parent-Zone can not be deleted. It get's deleted when a domain get's deleted.

You only can create sub-zones like mail.DOMAIN.tld via https://api.mittwald.de/v2/docs/#/Domain/dns-create-dns-zone and delete them with https://api.mittwald.de/v2/docs/#/Domain/dns-delete-dns-zone

The projectid you can get when you lists your projects belonging to your user: https://api.mittwald.de/v2/docs/#/Project/project-list-projects and with that id you can list your zones connected to the project: https://api.mittwald.de/v2/docs/#/Domain/dns-list-dns-zones

If there is no way to delete or create parentZones like "mittwald.de", is it possible to get support for lego?

Greetings Jonas

@ldez
Copy link
Member

ldez commented May 7, 2024

ACME DNS-01 challenge requires to create and delete a TXT record (ex: _acme-challenge.example.com or _acme-challenge.sub.example.com)

The projectid you can get when you lists your projects belonging to your user: https://api.mittwald.de/v2/docs/#/Project/project-list-projects and with that id you can list your zones connected to the project: https://api.mittwald.de/v2/docs/#/Domain/dns-list-dns-zones

The endpoint /v2/projects requires the customer ID and the server ID.
How do I get this information based on the API token?

If I follow your explanation, to create a TXT record:

  • call /v2/projects to get the project ID (but need customer ID and the server ID)
  • call /v2/projects/{projectId}/dns-zones with the project ID to get all the zones (pagination?)
  • call /v2/dns-zones to create a zone (if needed) and get the zone ID. (ex: _acme-challenge.example.com or _acme-challenge.sub.example.com)

I didn't find the call to create a TXT record. /v2/dns-zones/{dnsZoneId}/record-sets/{recordSet}/actions/set-managed allows to create A or MX record only (and the request schema is missing from the doc).
Maybe it's /v2/dns-zones/{dnsZoneId}/record-sets/{recordSet} but the doc is not clear about that (and the request schema is missing from the doc).

to delete a record:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

2 participants