Skip to main content
POST
/
v1
/
worker-beneficiaries
Create a worker beneficiary
curl --request POST \
  --url https://api.plane.com/v1/worker-beneficiaries \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "worker": "<string>",
  "name": {},
  "type": "<string>",
  "relationship": "<string>",
  "dob": "<string>",
  "status": "<string>"
}
'
import requests

url = "https://api.plane.com/v1/worker-beneficiaries"

payload = {
"worker": "<string>",
"name": {},
"type": "<string>",
"relationship": "<string>",
"dob": "<string>",
"status": "<string>"
}
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({
worker: '<string>',
name: {},
type: '<string>',
relationship: '<string>',
dob: '<string>',
status: '<string>'
})
};

fetch('https://api.plane.com/v1/worker-beneficiaries', 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.plane.com/v1/worker-beneficiaries",
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([
'worker' => '<string>',
'name' => [

],
'type' => '<string>',
'relationship' => '<string>',
'dob' => '<string>',
'status' => '<string>'
]),
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://api.plane.com/v1/worker-beneficiaries"

payload := strings.NewReader("{\n \"worker\": \"<string>\",\n \"name\": {},\n \"type\": \"<string>\",\n \"relationship\": \"<string>\",\n \"dob\": \"<string>\",\n \"status\": \"<string>\"\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://api.plane.com/v1/worker-beneficiaries")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"worker\": \"<string>\",\n \"name\": {},\n \"type\": \"<string>\",\n \"relationship\": \"<string>\",\n \"dob\": \"<string>\",\n \"status\": \"<string>\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.plane.com/v1/worker-beneficiaries")

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 \"worker\": \"<string>\",\n \"name\": {},\n \"type\": \"<string>\",\n \"relationship\": \"<string>\",\n \"dob\": \"<string>\",\n \"status\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
{
  "worker": "wrkr_8oWZpQ2rL4sk",
  "name": { "first": "Amara", "last": "Okafor" },
  "dob": "1990-04-12",
  "relationship": "spouse"
}
{
  "id": "wben_8oWZpQ2rL4sk",
  "object": "worker_beneficiary",
  "worker": "wrkr_8oWZpQ2rL4sk",
  "type": "individual",
  "name": { "first": "Amara", "last": "Okafor", "full": "Amara Okafor" },
  "relationship": "spouse",
  "dob": "1990-04-12",
  "status": "active",
  "created": "2026-05-29T12:00:00Z",
  "updated": "2026-05-29T12:00:00Z"
}

Parameters

worker
string
required
ID of the worker this beneficiary belongs to.
name
object
required
The beneficiary’s name.
type
string
Beneficiary type. One of individual, trust, estate, or organization. Defaults to individual.
relationship
string
Relationship to the worker. One of spouse, child, domestic_partner, step_child, adopted_child, foster_child, grandchild, civil_union, legal_guardianship, ex_spouse, or other.
dob
string
Date of birth for an individual beneficiary.
status
string
Beneficiary status. One of active or inactive. Defaults to active.

Returns

Returns the created Worker beneficiary object.
{
  "worker": "wrkr_8oWZpQ2rL4sk",
  "name": { "first": "Amara", "last": "Okafor" },
  "dob": "1990-04-12",
  "relationship": "spouse"
}
{
  "id": "wben_8oWZpQ2rL4sk",
  "object": "worker_beneficiary",
  "worker": "wrkr_8oWZpQ2rL4sk",
  "type": "individual",
  "name": { "first": "Amara", "last": "Okafor", "full": "Amara Okafor" },
  "relationship": "spouse",
  "dob": "1990-04-12",
  "status": "active",
  "created": "2026-05-29T12:00:00Z",
  "updated": "2026-05-29T12:00:00Z"
}