Selectel DNS Hosting
Selectel API credentials setup: create a Selectel service user scoped to one project and assign the current reader or member role for DNS Hosting (actual).
On this page
Selectel API credentials permissions
- Credential type
- Project-scoped service user
- Preview access
- Projects scope → reader
- Apply access
- Projects scope → member
- API endpoint
- DNSMigrator uses the provider's fixed API endpoint.
Additional access
DNSControl id
This provider does not have a DNSControl id.
Create credentials
Create a Selectel service user scoped to one project and assign the current reader or member role for DNS Hosting (actual).
Access you'll grant
Projects scope → reader
Projects scope → member
Before you start
- The zones must use DNS Hosting (actual), not DNS Hosting (legacy API v1).
- The Account Owner or a user with the
iam.adminrole must create the service user. - Selectel currently requires an account balance of at least 200 ₽ to assign the
memberrole used for apply.
Setup steps
0 of 5 done
Open service users
In Selectel's English control panel, select IAM in the top menu, open Service users, and select Add service user.
Set the service-user credentials
Under Service user details, enter a username and generate or enter a password. The current console requires at least 20 characters with uppercase and lowercase Latin letters, a digit, and a special character. Save the password now; it cannot be viewed after creation.
Scope access to the DNS project
Under Access settings, choose the Projects scope and select only the project that holds the zones. Choose
readerfor preview ormemberfor apply, then select Add user.Preview rolereaderApply rolememberCopy the account number and project name
Copy the account number from the upper-right corner of the control panel. Copy the selected project's name exactly. Selectel's API documentation calls the first value
<account_id>even though the UI describes it as the account number.Paste the four values
Enter the account number in Account ID, then enter the service user's Service user name, Service user password, and the selected Project name. DNSMigrator exchanges them for a 24-hour project-scoped IAM token automatically.
Troubleshooting
Selectel rejects the service user
Check all four identity values together: numeric account number, service-user name, password, and project name. Reset the password if it was not saved.
Preview works but apply returns 403
Change the project-scoped role from reader to member. The member role manages resources in the selected project.
No zones appear
Confirm the user is scoped to the correct project and the zones are in DNS Hosting (actual). Legacy DNS Hosting zones use a different API and must be moved in the control panel first.
The member role cannot be assigned
Check the account balance. Selectel's current user-creation documentation requires at least 200 ₽ before assigning member.
Official documentation
- Add a Selectel service user
- Selectel role reference
- Project-scoped IAM token authentication
- DNS Hosting actual API
Guide checked against the official documentation on .
Credential fields
| Field | Requirement | Where to find it |
|---|---|---|
| Account IDaccountId | Required | The numeric account number shown in the upper-right corner of the Selectel control panel. |
| Service user nameusername | Required | The username entered under Service user details, visible later in IAM → Service users. |
| Service user passwordpassword | Required | The service-user password saved at creation. It must meet Selectel's current 20-character complexity rules; reset it if lost. |
| Project nameprojectName | Required | The exact name of the project selected under the user's Projects access scope. |
Capabilities
- Create zones
- Yes
- List zones
- Yes
- DNSSEC
- Not available through this connection
- Minimum TTL
- 60 seconds
- Apex CNAME
- No
- Read only
- No
Record types
- A
- AAAA
- CNAME
- MX
- TXT
- NS
- SRV
- CAA
- ALIAS
- DNAME
- HTTPS
- SVCB
- SSHFP
Caveats
- Only DNS Hosting (actual) zones are supported. Zones still on DNS Hosting (legacy, API v1) must be moved to the actual version in the control panel first.
- Zones belong to a project; this connection only sees the project it signs in to.
- Apex NS and SOA records are created and managed by Selectel and can't be changed.
- A CNAME can't be placed at the zone apex; use ALIAS instead.
- Each record set can hold at most 100 values.
- Records you disabled in Selectel are left untouched and aren't imported.
- Selectel doesn't publish API rate limits; requests are retried with backoff when throttled.
Troubleshooting
- Selectel rejects the service user
- Check all four identity values together: numeric account number, service-user name, password, and project name. Reset the password if it was not saved.
- Preview works but apply returns 403
- Change the project-scoped role from reader to member. The member role manages resources in the selected project.
- No zones appear
- Confirm the user is scoped to the correct project and the zones are in DNS Hosting (actual). Legacy DNS Hosting zones use a different API and must be moved in the control panel first.
- The member role cannot be assigned
- Check the account balance. Selectel's current user-creation documentation requires at least 200 ₽ before assigning member.