curl --request POST \
--url https://dev.intermezzo.ai/gb/organizations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"core": {
"dba_name": "Acme",
"incorporation_date": "2023-12-25",
"legal_name": "Acme Trading Ltd",
"logo_id": "<string>",
"shutdown_date": "2023-12-25",
"website": "https://acme.example/"
},
"valid_from": "2023-12-25"
}
'import requests
url = "https://dev.intermezzo.ai/gb/organizations"
payload = {
"core": {
"dba_name": "Acme",
"incorporation_date": "2023-12-25",
"legal_name": "Acme Trading Ltd",
"logo_id": "<string>",
"shutdown_date": "2023-12-25",
"website": "https://acme.example/"
},
"valid_from": "2023-12-25"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
core: {
dba_name: 'Acme',
incorporation_date: '2023-12-25',
legal_name: 'Acme Trading Ltd',
logo_id: '<string>',
shutdown_date: '2023-12-25',
website: 'https://acme.example/'
},
valid_from: '2023-12-25'
})
};
fetch('https://dev.intermezzo.ai/gb/organizations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://dev.intermezzo.ai/gb/organizations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'core' => [
'dba_name' => 'Acme',
'incorporation_date' => '2023-12-25',
'legal_name' => 'Acme Trading Ltd',
'logo_id' => '<string>',
'shutdown_date' => '2023-12-25',
'website' => 'https://acme.example/'
],
'valid_from' => '2023-12-25'
]),
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 := "https://dev.intermezzo.ai/gb/organizations"
payload := strings.NewReader("{\n \"core\": {\n \"dba_name\": \"Acme\",\n \"incorporation_date\": \"2023-12-25\",\n \"legal_name\": \"Acme Trading Ltd\",\n \"logo_id\": \"<string>\",\n \"shutdown_date\": \"2023-12-25\",\n \"website\": \"https://acme.example/\"\n },\n \"valid_from\": \"2023-12-25\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://dev.intermezzo.ai/gb/organizations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"core\": {\n \"dba_name\": \"Acme\",\n \"incorporation_date\": \"2023-12-25\",\n \"legal_name\": \"Acme Trading Ltd\",\n \"logo_id\": \"<string>\",\n \"shutdown_date\": \"2023-12-25\",\n \"website\": \"https://acme.example/\"\n },\n \"valid_from\": \"2023-12-25\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://dev.intermezzo.ai/gb/organizations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"core\": {\n \"dba_name\": \"Acme\",\n \"incorporation_date\": \"2023-12-25\",\n \"legal_name\": \"Acme Trading Ltd\",\n \"logo_id\": \"<string>\",\n \"shutdown_date\": \"2023-12-25\",\n \"website\": \"https://acme.example/\"\n },\n \"valid_from\": \"2023-12-25\"\n}"
response = http.request(request)
puts response.read_body{
"client_id": "<string>",
"country_code": "GB",
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"deleted_at": "2023-11-07T05:31:56Z",
"external_ref": "<string>",
"id": "<string>",
"status": {},
"address": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"address": "<string>",
"correspondence_address": "<string>"
},
"bank": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"accounts": [
{
"account_number": "<string>",
"financial_institution_name": "<string>",
"is_active": true,
"is_primary": false,
"sort_code": "<string>"
}
],
"bacs_service_user_number": "<string>"
},
"contact": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"contacts": [
{
"name": "Jane Smith",
"email": "<string>",
"is_primary": false,
"phone": {
"phone_number": "<string>",
"phone_type": "MOBILE"
},
"roles": [
"<string>"
]
}
],
"hmrc_sender_email": "<string>"
},
"core": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"dba_name": "<string>",
"incorporation_date": "2023-12-25",
"legal_name": "<string>",
"logo_id": "<string>",
"shutdown_date": "2023-12-25",
"website": "<string>"
},
"insurance": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"employment_allowance_eligible": false
},
"tax": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"accounts_office_reference": "<string>",
"corporation_tax_reference": "<string>",
"paye_reference_number": "<string>"
}
}{
"errors": [
{
"code": "HUB_DUPLICATE_EXTERNAL_REF",
"message": "Raised when the parent already has a hub with this external_ref."
}
]
}{
"errors": [
{
"code": "FIELD_REQUIRED",
"message": "<string>",
"field": "<string>",
"params": {}
}
]
}Create Organization
curl --request POST \
--url https://dev.intermezzo.ai/gb/organizations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"core": {
"dba_name": "Acme",
"incorporation_date": "2023-12-25",
"legal_name": "Acme Trading Ltd",
"logo_id": "<string>",
"shutdown_date": "2023-12-25",
"website": "https://acme.example/"
},
"valid_from": "2023-12-25"
}
'import requests
url = "https://dev.intermezzo.ai/gb/organizations"
payload = {
"core": {
"dba_name": "Acme",
"incorporation_date": "2023-12-25",
"legal_name": "Acme Trading Ltd",
"logo_id": "<string>",
"shutdown_date": "2023-12-25",
"website": "https://acme.example/"
},
"valid_from": "2023-12-25"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
core: {
dba_name: 'Acme',
incorporation_date: '2023-12-25',
legal_name: 'Acme Trading Ltd',
logo_id: '<string>',
shutdown_date: '2023-12-25',
website: 'https://acme.example/'
},
valid_from: '2023-12-25'
})
};
fetch('https://dev.intermezzo.ai/gb/organizations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://dev.intermezzo.ai/gb/organizations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'core' => [
'dba_name' => 'Acme',
'incorporation_date' => '2023-12-25',
'legal_name' => 'Acme Trading Ltd',
'logo_id' => '<string>',
'shutdown_date' => '2023-12-25',
'website' => 'https://acme.example/'
],
'valid_from' => '2023-12-25'
]),
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 := "https://dev.intermezzo.ai/gb/organizations"
payload := strings.NewReader("{\n \"core\": {\n \"dba_name\": \"Acme\",\n \"incorporation_date\": \"2023-12-25\",\n \"legal_name\": \"Acme Trading Ltd\",\n \"logo_id\": \"<string>\",\n \"shutdown_date\": \"2023-12-25\",\n \"website\": \"https://acme.example/\"\n },\n \"valid_from\": \"2023-12-25\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://dev.intermezzo.ai/gb/organizations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"core\": {\n \"dba_name\": \"Acme\",\n \"incorporation_date\": \"2023-12-25\",\n \"legal_name\": \"Acme Trading Ltd\",\n \"logo_id\": \"<string>\",\n \"shutdown_date\": \"2023-12-25\",\n \"website\": \"https://acme.example/\"\n },\n \"valid_from\": \"2023-12-25\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://dev.intermezzo.ai/gb/organizations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"core\": {\n \"dba_name\": \"Acme\",\n \"incorporation_date\": \"2023-12-25\",\n \"legal_name\": \"Acme Trading Ltd\",\n \"logo_id\": \"<string>\",\n \"shutdown_date\": \"2023-12-25\",\n \"website\": \"https://acme.example/\"\n },\n \"valid_from\": \"2023-12-25\"\n}"
response = http.request(request)
puts response.read_body{
"client_id": "<string>",
"country_code": "GB",
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"deleted_at": "2023-11-07T05:31:56Z",
"external_ref": "<string>",
"id": "<string>",
"status": {},
"address": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"address": "<string>",
"correspondence_address": "<string>"
},
"bank": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"accounts": [
{
"account_number": "<string>",
"financial_institution_name": "<string>",
"is_active": true,
"is_primary": false,
"sort_code": "<string>"
}
],
"bacs_service_user_number": "<string>"
},
"contact": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"contacts": [
{
"name": "Jane Smith",
"email": "<string>",
"is_primary": false,
"phone": {
"phone_number": "<string>",
"phone_type": "MOBILE"
},
"roles": [
"<string>"
]
}
],
"hmrc_sender_email": "<string>"
},
"core": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"dba_name": "<string>",
"incorporation_date": "2023-12-25",
"legal_name": "<string>",
"logo_id": "<string>",
"shutdown_date": "2023-12-25",
"website": "<string>"
},
"insurance": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"employment_allowance_eligible": false
},
"tax": {
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"edition": 123,
"valid_from": "2023-12-25",
"valid_to": "2023-12-25",
"accounts_office_reference": "<string>",
"corporation_tax_reference": "<string>",
"paye_reference_number": "<string>"
}
}{
"errors": [
{
"code": "HUB_DUPLICATE_EXTERNAL_REF",
"message": "Raised when the parent already has a hub with this external_ref."
}
]
}{
"errors": [
{
"code": "FIELD_REQUIRED",
"message": "<string>",
"field": "<string>",
"params": {}
}
]
}Authorizations
Get token from Auth0 and paste it here
Headers
The person acting through the access credential, recorded as created_by of what the request writes. Audit only: access is checked on the credential.
1 - 255Body
Creating an organization: the hub, valid_from, core, and any other
satellites. Each satellite sent starts on [valid_from, 9999-12-31). One not sent is
not created: it reads as null until a PUT writes it.
Show child attributes
Show child attributes
The first day every satellite's data is valid at
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
The integrator's own stable key, unique within the hub's parent: the organization for an employee, the access credential for an organization. Generated when absent.
1 - 255Show child attributes
Show child attributes
Show child attributes
Show child attributes
Response
Successful Response
The organization with every satellite as it reads on one date. A satellite never written, or with no slice on an explicit date, is null.
"GB"Who created the hub: the acting user (X-Acting-User, else the access credential), system for our own writes, or <authority>:<notice> for a write on an authority's behalf, e.g. hmrc:P6.
When the hub was closed
The read-only status satellite. It carries no fields; it exists so that every
organization read has a status object.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes