Companies
Get Company Onboarding Link
Retrieve a link to Zeal’s web-based company onboarding flow.
GET
/
companies
/
onboard
Get Company Onboarding Link
curl --request GET \
--url https://api.zeal.com/companies/onboard \
--header 'Authorization: <api-key>'import requests
url = "https://api.zeal.com/companies/onboard"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.zeal.com/companies/onboard', 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://api.zeal.com/companies/onboard",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.zeal.com/companies/onboard"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.zeal.com/companies/onboard")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zeal.com/companies/onboard")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": "https://payroll.your-domain.com/employeronboard/10983755744920193854758300657020834"
}{
"success": false,
"errors": [
{
"message": "No Zeal Partner with this partner ID exists.",
"code": 7
}
]
}This endpoint returns a link to Zeal’s web-based company onboarding flow, which collects required information such as legal business name, FEIN, legal business address, and bank account information.
This link expires exactly 7 days after generation.
Authorizations
Query Parameters
PartnerID of the Zeal Partner
The Base URL is the URL Zeal will redirect the employer to after completion of the company onboarding flow. You may include a custom Base URL in this field. Otherwise, by default, Zeal will use the Base URL found in the admin dashboard.
Provide your own ID, string, etc. to include in the webhook payload. Zeal will include this in the webhook we send you after the company onboards.
The company ID can be optionally passed to generate a link that will take your company to the current step, and not the first step, of the onboarding process.
⌘I
Get Company Onboarding Link
curl --request GET \
--url https://api.zeal.com/companies/onboard \
--header 'Authorization: <api-key>'import requests
url = "https://api.zeal.com/companies/onboard"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.zeal.com/companies/onboard', 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://api.zeal.com/companies/onboard",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.zeal.com/companies/onboard"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.zeal.com/companies/onboard")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zeal.com/companies/onboard")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": "https://payroll.your-domain.com/employeronboard/10983755744920193854758300657020834"
}{
"success": false,
"errors": [
{
"message": "No Zeal Partner with this partner ID exists.",
"code": 7
}
]
}