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

Shared domains deprecation: Article updates #734

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion content/getting-started.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ If you are using a user access token, you will have the same level of access as

### Domains and Zones

Accounts hold 0 or more domains. Each domain represents a single domain name as well as details about the domain name, such as whether it is registered with DNSimple or just hosted. For domains that are registered, the domain includes details about its registrant, whois privacy status, expiration date and more. Domains may have collections of other entities associated with them, such as SSL certificates, email forwards, collaborators, etc.
Accounts hold 0 or more domains. Each domain represents a single domain name as well as details about the domain name, such as whether it is registered with DNSimple or just hosted. For domains that are registered, the domain includes details about its registrant, whois privacy status, expiration date and more. Domains may have collections of other entities associated with them, such as SSL certificates, email forwards, etc.

Zones represent the DNS zone for a domain. Each domain MUST have a zone, however zones may also exist without a domain (in the case of a reverse zone, which is used to provide reverse DNS). Zones have 1 or more records. All zones will have a combination of system records, which are records that we automatically create, such as SOA and NS records, as well as custom records, which are records created by users. If you'd like to read more about DNS zones and the records we support, visit the [DNS section](https://support.dnsimple.com/categories/dns/) of the DNSimple support site.

Expand Down
135 changes: 3 additions & 132 deletions content/v2/domains/collaborators.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -5,135 +5,6 @@ excerpt: This page documents the DNSimple collaborators API v2.

# Collaborators API

* TOC
{:toc}

## List collaborators {#listDomainCollaborators}

GET /:account/domains/:domain/collaborators

List collaborators for the domain in the account.

### Parameters

Name | Type | Description
-----|------|------------
`:account` | `integer` | The account id
`:domain` | `string`, `integer` | The domain name or id

### Example

List all collaborators for the domain `example.com` in the account `1010`:

curl -H 'Authorization: Bearer <token>' \
-H 'Accept: application/json' \
https://api.dnsimple.com/v2/1010/domains/example.com/collaborators

### Response

Responds with HTTP 200.

~~~json
<%= pretty_print_fixture("/api/listCollaborators/success.http") %>
~~~

### Errors

Responds with [HTTP 401](/v2#unauthorized) in case of case of authentication issues.


## Add a collaborator {#addDomainCollaborator}

At the time of the add, a collaborator may or may not have a DNSimple account.

In case the collaborator doesn't have a DNSimple account, the system will invite her/him to register to DNSimple first and then to accept the collaboration invitation.

In the other case, she/he is automatically added to the domain as collaborator. She/he can decide to reject the invitation later.

POST /:account/domains/:domain/collaborators

### Parameters

Name | Type | Description
-----|------|------------
`:account` | `integer` | The account id
`:domain` | `string`, `integer` | The domain name or id

### Example

Add a collaborator for the domain `example.com` in the account `1010`:

curl -H 'Authorization: Bearer <token>' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-X POST \
-d '<json>' \
https://api.dnsimple.com/v2/1010/domains/example.com/collaborators

### Input

Name | Type | Description
-----|------|------------
`email` | `string` | **Required**.

##### Example

~~~json
{
"email": "[email protected]"
}
~~~

### Response

When the collaborator already has a DNSimple account:

~~~json
<%= pretty_print_fixture("/api/addCollaborator/success.http") %>
~~~

When the collaborator doesn't have a DNSimple account:

~~~json
<%= pretty_print_fixture("/api/addCollaborator/invite-success.http") %>
~~~

Responds with HTTP 201 on success.

### Errors

Responds with [HTTP 400](/v2#bad-request) if the collaborator cannot be added.

Responds with [HTTP 401](/v2#unauthorized) in case of case of authentication issues.


## Remove a collaborator {#removeDomainCollaborator}

DELETE /:account/domains/:domain/collaborators/:collaborator

### Parameters

Name | Type | Description
-----|------|------------
`:account` | `integer` | The account id
`:domain` | `string`, `integer` | The domain name or id
`:collaborator` | `integer` | The collaborator id

### Example

Remove a collaborator `100` from the domain `example.com` in the account `1010`:

curl -H 'Authorization: Bearer <token>' \
-H 'Accept: application/json' \
-X DELETE \
https://api.dnsimple.com/v2/1010/domains/example.com/collaborators/100

### Response

Responds with HTTP 204 on success.

### Errors

Responds with [HTTP 400](/v2#bad-request) if the collaborator cannot be removed

Responds with [HTTP 401](/v2#unauthorized) in case of case of authentication issues.
<warning>
All domain collaborator endpoints have been deprecated in favor of our [Domain Access Control](/articles/domain-access-control) feature as of December 31, 2024.
</warning>
15 changes: 13 additions & 2 deletions content/v2/openapi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,11 @@ paths:
summary: Delete a domain
'/{account}/domains/{domain}/collaborators':
get:
description: Lists collaborators for the domain.
deprecated: true
description: |-
Deprecated in favor of Domain Access Control.

Lists collaborators for the domain.
parameters:
- $ref: '#/components/parameters/Account'
- $ref: '#/components/parameters/Domain'
Expand All @@ -247,7 +251,10 @@ paths:
$ref: '#/components/responses/404'
summary: List collaborators
post:
deprecated: true
description: |-
Deprecated in favor of Domain Access Control.

Adds a collaborator to the domain.

At the time of the add, a collaborator may or may not have a DNSimple account. In case the collaborator doesn't have a DNSimple account, the system will invite them to register to DNSimple first and then to accept the collaboration invitation. In the other case, they are automatically added to the domain as collaborator. They can decide to reject the invitation later.
Expand Down Expand Up @@ -2209,7 +2216,11 @@ paths:
summary: Start registrant change
'/{account}/domains/{domain}/collaborators/{collaborator}':
delete:
description: Removes a collaborator from the domain.
deprecated: true
description: |-
Deprecated in favor of Domain Access Control.

Removes a collaborator from the domain.
parameters:
- $ref: '#/components/parameters/Account'
- $ref: '#/components/parameters/Domain'
Expand Down
Loading