Open an email domain to joining
curl --request PATCH \
--url http://localhost:3000/api/v1/email-domains/{domain} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"join": true
}'import requests
url = "http://localhost:3000/api/v1/email-domains/{domain}"
payload = { "join": True }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({join: true})
};
fetch('http://localhost:3000/api/v1/email-domains/{domain}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "3000",
CURLOPT_URL => "http://localhost:3000/api/v1/email-domains/{domain}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'join' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://localhost:3000/api/v1/email-domains/{domain}"
payload := strings.NewReader("{\n \"join\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("http://localhost:3000/api/v1/email-domains/{domain}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"join\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:3000/api/v1/email-domains/{domain}")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"join\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"domain": "<string>",
"verified": true,
"join": true,
"sso": true,
"record": {
"type": "TXT",
"name": "<string>",
"value": "<string>"
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"detail": "<unknown>"
}
}API Reference
Open an email domain to joining
With join, anyone who signs up or signs in with an address at exactly this domain is offered to join the organization, able to read, once the server’s own email has confirmed the address (me.joinable, POST /api/v1/join). Refused for a domain not proved yet, one that gives addresses to the public (gmail.com, orange.fr), one single sign-on covers, and on a server that sends no email of its own.
Scope: admin.
PATCH
/
api
/
v1
/
email-domains
/
{domain}
Open an email domain to joining
curl --request PATCH \
--url http://localhost:3000/api/v1/email-domains/{domain} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"join": true
}'import requests
url = "http://localhost:3000/api/v1/email-domains/{domain}"
payload = { "join": True }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({join: true})
};
fetch('http://localhost:3000/api/v1/email-domains/{domain}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "3000",
CURLOPT_URL => "http://localhost:3000/api/v1/email-domains/{domain}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'join' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://localhost:3000/api/v1/email-domains/{domain}"
payload := strings.NewReader("{\n \"join\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("http://localhost:3000/api/v1/email-domains/{domain}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"join\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:3000/api/v1/email-domains/{domain}")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"join\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"domain": "<string>",
"verified": true,
"join": true,
"sso": true,
"record": {
"type": "TXT",
"name": "<string>",
"value": "<string>"
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"detail": "<unknown>"
}
}Authorizations
bearersession
An API key: ab_...
Path Parameters
e.g. acme.com
Body
application/json
Let anyone whose address is at exactly this domain join, able to read. Needs it proved, not free mail, no single sign-on over it, and the server's own email
Response
The email domain
Show child attributes
Show child attributes