Paperwork API
Create a paperwork submission
Create a Paperwork Submission for an employee or contractor from a Paperwork Template.
PUT
/
paperwork
/
submissions
cURL
curl --request PUT \
--url https://api.zeal.com/paperwork/submissions \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"templateID": "<string>",
"companyID": "<string>",
"fields": {},
"employeeID": "<string>",
"contractorID": "<string>"
}
'import requests
url = "https://api.zeal.com/paperwork/submissions"
payload = {
"templateID": "<string>",
"companyID": "<string>",
"fields": {},
"employeeID": "<string>",
"contractorID": "<string>"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
templateID: '<string>',
companyID: '<string>',
fields: {},
employeeID: '<string>',
contractorID: '<string>'
})
};
fetch('https://api.zeal.com/paperwork/submissions', 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/paperwork/submissions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'templateID' => '<string>',
'companyID' => '<string>',
'fields' => [
],
'employeeID' => '<string>',
'contractorID' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"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://api.zeal.com/paperwork/submissions"
payload := strings.NewReader("{\n \"templateID\": \"<string>\",\n \"companyID\": \"<string>\",\n \"fields\": {},\n \"employeeID\": \"<string>\",\n \"contractorID\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "<api-key>")
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.put("https://api.zeal.com/paperwork/submissions")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"templateID\": \"<string>\",\n \"companyID\": \"<string>\",\n \"fields\": {},\n \"employeeID\": \"<string>\",\n \"contractorID\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zeal.com/paperwork/submissions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"templateID\": \"<string>\",\n \"companyID\": \"<string>\",\n \"fields\": {},\n \"employeeID\": \"<string>\",\n \"contractorID\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {}
}{
"success": false,
"errors": [
{
"message": "<string>",
"code": 123
}
]
}Create a Paperwork Submission(s). This endpoint will return the created Paperwork Submission object(s).
Authorizations
Body
application/json
Unique identifier for the paperwork template
Type of worker (Employee or Contractor)
Available options:
Employee, Contractor Unique identifier for the company
Additional fields for the paperwork submission
Unique identifier for the employee. Nullable if the worker type is contractor
Unique identifier for the contractor. Nullable if the worker type is employee
⌘I
cURL
curl --request PUT \
--url https://api.zeal.com/paperwork/submissions \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"templateID": "<string>",
"companyID": "<string>",
"fields": {},
"employeeID": "<string>",
"contractorID": "<string>"
}
'import requests
url = "https://api.zeal.com/paperwork/submissions"
payload = {
"templateID": "<string>",
"companyID": "<string>",
"fields": {},
"employeeID": "<string>",
"contractorID": "<string>"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
templateID: '<string>',
companyID: '<string>',
fields: {},
employeeID: '<string>',
contractorID: '<string>'
})
};
fetch('https://api.zeal.com/paperwork/submissions', 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/paperwork/submissions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'templateID' => '<string>',
'companyID' => '<string>',
'fields' => [
],
'employeeID' => '<string>',
'contractorID' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"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://api.zeal.com/paperwork/submissions"
payload := strings.NewReader("{\n \"templateID\": \"<string>\",\n \"companyID\": \"<string>\",\n \"fields\": {},\n \"employeeID\": \"<string>\",\n \"contractorID\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "<api-key>")
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.put("https://api.zeal.com/paperwork/submissions")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"templateID\": \"<string>\",\n \"companyID\": \"<string>\",\n \"fields\": {},\n \"employeeID\": \"<string>\",\n \"contractorID\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zeal.com/paperwork/submissions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"templateID\": \"<string>\",\n \"companyID\": \"<string>\",\n \"fields\": {},\n \"employeeID\": \"<string>\",\n \"contractorID\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {}
}{
"success": false,
"errors": [
{
"message": "<string>",
"code": 123
}
]
}