curl --request POST \
--url https://api.endaoment.org/v2/donation-pledges/stock \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"stockPledgeData": {
"shares": 100,
"ticker": "AAPL",
"donorData": {
"addressLine1": "123 Main St",
"city": "San Francisco",
"country": "USA",
"firstName": "John",
"lastName": "Doe",
"receiptEmail": "john.doe@example.com",
"state": "CA",
"zipcode": "94105",
"addressLine2": "Apt 4B"
},
"brokerData": {
"brokerContactName": "Jane Smith",
"brokerEmail": "jane.smith@brokerage.com",
"brokerName": "Fidelity",
"brokerPhone": "+1 (555) 987-6543",
"brokerageAccountNumber": "123456789",
"customBrokerName": "Local Investment Partners LLC"
},
"signature": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"lots": [
{
"numberOfShares": 50,
"purchasePrice": 150.75,
"purchaseDate": "2023-01-15T00:00:00.000Z",
"employeeStockPlan": "RSU",
"lotId": "LOT123"
}
]
},
"receivingEntityType": "fund",
"receivingEntityId": "123e4567-e89b-12d3-a456-426614174000",
"idempotencyKey": "123e4567-e89b-12d3-a456-426614174000",
"updateIdentity": true,
"shareMyEmail": false,
"recommendationId": "123e4567-e89b-12d3-a456-426614174000",
"isRebalanceRequested": false,
"donationValueMicroDollars": "50000000000",
"partnerOperationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
'import requests
url = "https://api.endaoment.org/v2/donation-pledges/stock"
payload = {
"stockPledgeData": {
"shares": 100,
"ticker": "AAPL",
"donorData": {
"addressLine1": "123 Main St",
"city": "San Francisco",
"country": "USA",
"firstName": "John",
"lastName": "Doe",
"receiptEmail": "john.doe@example.com",
"state": "CA",
"zipcode": "94105",
"addressLine2": "Apt 4B"
},
"brokerData": {
"brokerContactName": "Jane Smith",
"brokerEmail": "jane.smith@brokerage.com",
"brokerName": "Fidelity",
"brokerPhone": "+1 (555) 987-6543",
"brokerageAccountNumber": "123456789",
"customBrokerName": "Local Investment Partners LLC"
},
"signature": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"lots": [
{
"numberOfShares": 50,
"purchasePrice": 150.75,
"purchaseDate": "2023-01-15T00:00:00.000Z",
"employeeStockPlan": "RSU",
"lotId": "LOT123"
}
]
},
"receivingEntityType": "fund",
"receivingEntityId": "123e4567-e89b-12d3-a456-426614174000",
"idempotencyKey": "123e4567-e89b-12d3-a456-426614174000",
"updateIdentity": True,
"shareMyEmail": False,
"recommendationId": "123e4567-e89b-12d3-a456-426614174000",
"isRebalanceRequested": False,
"donationValueMicroDollars": "50000000000",
"partnerOperationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
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({
stockPledgeData: {
shares: 100,
ticker: 'AAPL',
donorData: {
addressLine1: '123 Main St',
city: 'San Francisco',
country: 'USA',
firstName: 'John',
lastName: 'Doe',
receiptEmail: 'john.doe@example.com',
state: 'CA',
zipcode: '94105',
addressLine2: 'Apt 4B'
},
brokerData: {
brokerContactName: 'Jane Smith',
brokerEmail: 'jane.smith@brokerage.com',
brokerName: 'Fidelity',
brokerPhone: '+1 (555) 987-6543',
brokerageAccountNumber: '123456789',
customBrokerName: 'Local Investment Partners LLC'
},
signature: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...',
lots: [
{
numberOfShares: 50,
purchasePrice: 150.75,
purchaseDate: '2023-01-15T00:00:00.000Z',
employeeStockPlan: 'RSU',
lotId: 'LOT123'
}
]
},
receivingEntityType: 'fund',
receivingEntityId: '123e4567-e89b-12d3-a456-426614174000',
idempotencyKey: '123e4567-e89b-12d3-a456-426614174000',
updateIdentity: true,
shareMyEmail: false,
recommendationId: '123e4567-e89b-12d3-a456-426614174000',
isRebalanceRequested: false,
donationValueMicroDollars: '50000000000',
partnerOperationId: 'a1b2c3d4-e5f6-7890-abcd-ef1234567890'
})
};
fetch('https://api.endaoment.org/v2/donation-pledges/stock', 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.endaoment.org/v2/donation-pledges/stock",
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([
'stockPledgeData' => [
'shares' => 100,
'ticker' => 'AAPL',
'donorData' => [
'addressLine1' => '123 Main St',
'city' => 'San Francisco',
'country' => 'USA',
'firstName' => 'John',
'lastName' => 'Doe',
'receiptEmail' => 'john.doe@example.com',
'state' => 'CA',
'zipcode' => '94105',
'addressLine2' => 'Apt 4B'
],
'brokerData' => [
'brokerContactName' => 'Jane Smith',
'brokerEmail' => 'jane.smith@brokerage.com',
'brokerName' => 'Fidelity',
'brokerPhone' => '+1 (555) 987-6543',
'brokerageAccountNumber' => '123456789',
'customBrokerName' => 'Local Investment Partners LLC'
],
'signature' => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...',
'lots' => [
[
'numberOfShares' => 50,
'purchasePrice' => 150.75,
'purchaseDate' => '2023-01-15T00:00:00.000Z',
'employeeStockPlan' => 'RSU',
'lotId' => 'LOT123'
]
]
],
'receivingEntityType' => 'fund',
'receivingEntityId' => '123e4567-e89b-12d3-a456-426614174000',
'idempotencyKey' => '123e4567-e89b-12d3-a456-426614174000',
'updateIdentity' => true,
'shareMyEmail' => false,
'recommendationId' => '123e4567-e89b-12d3-a456-426614174000',
'isRebalanceRequested' => false,
'donationValueMicroDollars' => '50000000000',
'partnerOperationId' => 'a1b2c3d4-e5f6-7890-abcd-ef1234567890'
]),
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.endaoment.org/v2/donation-pledges/stock"
payload := strings.NewReader("{\n \"stockPledgeData\": {\n \"shares\": 100,\n \"ticker\": \"AAPL\",\n \"donorData\": {\n \"addressLine1\": \"123 Main St\",\n \"city\": \"San Francisco\",\n \"country\": \"USA\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"receiptEmail\": \"john.doe@example.com\",\n \"state\": \"CA\",\n \"zipcode\": \"94105\",\n \"addressLine2\": \"Apt 4B\"\n },\n \"brokerData\": {\n \"brokerContactName\": \"Jane Smith\",\n \"brokerEmail\": \"jane.smith@brokerage.com\",\n \"brokerName\": \"Fidelity\",\n \"brokerPhone\": \"+1 (555) 987-6543\",\n \"brokerageAccountNumber\": \"123456789\",\n \"customBrokerName\": \"Local Investment Partners LLC\"\n },\n \"signature\": \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\n \"lots\": [\n {\n \"numberOfShares\": 50,\n \"purchasePrice\": 150.75,\n \"purchaseDate\": \"2023-01-15T00:00:00.000Z\",\n \"employeeStockPlan\": \"RSU\",\n \"lotId\": \"LOT123\"\n }\n ]\n },\n \"receivingEntityType\": \"fund\",\n \"receivingEntityId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"idempotencyKey\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"updateIdentity\": true,\n \"shareMyEmail\": false,\n \"recommendationId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"isRebalanceRequested\": false,\n \"donationValueMicroDollars\": \"50000000000\",\n \"partnerOperationId\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\"\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.endaoment.org/v2/donation-pledges/stock")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"stockPledgeData\": {\n \"shares\": 100,\n \"ticker\": \"AAPL\",\n \"donorData\": {\n \"addressLine1\": \"123 Main St\",\n \"city\": \"San Francisco\",\n \"country\": \"USA\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"receiptEmail\": \"john.doe@example.com\",\n \"state\": \"CA\",\n \"zipcode\": \"94105\",\n \"addressLine2\": \"Apt 4B\"\n },\n \"brokerData\": {\n \"brokerContactName\": \"Jane Smith\",\n \"brokerEmail\": \"jane.smith@brokerage.com\",\n \"brokerName\": \"Fidelity\",\n \"brokerPhone\": \"+1 (555) 987-6543\",\n \"brokerageAccountNumber\": \"123456789\",\n \"customBrokerName\": \"Local Investment Partners LLC\"\n },\n \"signature\": \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\n \"lots\": [\n {\n \"numberOfShares\": 50,\n \"purchasePrice\": 150.75,\n \"purchaseDate\": \"2023-01-15T00:00:00.000Z\",\n \"employeeStockPlan\": \"RSU\",\n \"lotId\": \"LOT123\"\n }\n ]\n },\n \"receivingEntityType\": \"fund\",\n \"receivingEntityId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"idempotencyKey\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"updateIdentity\": true,\n \"shareMyEmail\": false,\n \"recommendationId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"isRebalanceRequested\": false,\n \"donationValueMicroDollars\": \"50000000000\",\n \"partnerOperationId\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.endaoment.org/v2/donation-pledges/stock")
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 \"stockPledgeData\": {\n \"shares\": 100,\n \"ticker\": \"AAPL\",\n \"donorData\": {\n \"addressLine1\": \"123 Main St\",\n \"city\": \"San Francisco\",\n \"country\": \"USA\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"receiptEmail\": \"john.doe@example.com\",\n \"state\": \"CA\",\n \"zipcode\": \"94105\",\n \"addressLine2\": \"Apt 4B\"\n },\n \"brokerData\": {\n \"brokerContactName\": \"Jane Smith\",\n \"brokerEmail\": \"jane.smith@brokerage.com\",\n \"brokerName\": \"Fidelity\",\n \"brokerPhone\": \"+1 (555) 987-6543\",\n \"brokerageAccountNumber\": \"123456789\",\n \"customBrokerName\": \"Local Investment Partners LLC\"\n },\n \"signature\": \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\n \"lots\": [\n {\n \"numberOfShares\": 50,\n \"purchasePrice\": 150.75,\n \"purchaseDate\": \"2023-01-15T00:00:00.000Z\",\n \"employeeStockPlan\": \"RSU\",\n \"lotId\": \"LOT123\"\n }\n ]\n },\n \"receivingEntityType\": \"fund\",\n \"receivingEntityId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"idempotencyKey\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"updateIdentity\": true,\n \"shareMyEmail\": false,\n \"recommendationId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"isRebalanceRequested\": false,\n \"donationValueMicroDollars\": \"50000000000\",\n \"partnerOperationId\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\"\n}"
response = http.request(request)
puts response.read_body{
"id": "123e4567-e89b-12d3-a456-426614174000"
}Create stock donation pledge
Creates a new donation pledge for a stock donation to Endaoment.
Authentication is optional:
- Authenticated users will have the pledge associated with their account
- Unauthenticated users can still create pledges but won’t have them linked to any account
This endpoint allows users to:
- Register their intention to donate stocks to Endaoment
- Provide broker and stock details
- Specify the receiving fund
- Provide donor identity information for the donation receipt
- Include optional lot information for tax purposes
curl --request POST \
--url https://api.endaoment.org/v2/donation-pledges/stock \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"stockPledgeData": {
"shares": 100,
"ticker": "AAPL",
"donorData": {
"addressLine1": "123 Main St",
"city": "San Francisco",
"country": "USA",
"firstName": "John",
"lastName": "Doe",
"receiptEmail": "john.doe@example.com",
"state": "CA",
"zipcode": "94105",
"addressLine2": "Apt 4B"
},
"brokerData": {
"brokerContactName": "Jane Smith",
"brokerEmail": "jane.smith@brokerage.com",
"brokerName": "Fidelity",
"brokerPhone": "+1 (555) 987-6543",
"brokerageAccountNumber": "123456789",
"customBrokerName": "Local Investment Partners LLC"
},
"signature": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"lots": [
{
"numberOfShares": 50,
"purchasePrice": 150.75,
"purchaseDate": "2023-01-15T00:00:00.000Z",
"employeeStockPlan": "RSU",
"lotId": "LOT123"
}
]
},
"receivingEntityType": "fund",
"receivingEntityId": "123e4567-e89b-12d3-a456-426614174000",
"idempotencyKey": "123e4567-e89b-12d3-a456-426614174000",
"updateIdentity": true,
"shareMyEmail": false,
"recommendationId": "123e4567-e89b-12d3-a456-426614174000",
"isRebalanceRequested": false,
"donationValueMicroDollars": "50000000000",
"partnerOperationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
'import requests
url = "https://api.endaoment.org/v2/donation-pledges/stock"
payload = {
"stockPledgeData": {
"shares": 100,
"ticker": "AAPL",
"donorData": {
"addressLine1": "123 Main St",
"city": "San Francisco",
"country": "USA",
"firstName": "John",
"lastName": "Doe",
"receiptEmail": "john.doe@example.com",
"state": "CA",
"zipcode": "94105",
"addressLine2": "Apt 4B"
},
"brokerData": {
"brokerContactName": "Jane Smith",
"brokerEmail": "jane.smith@brokerage.com",
"brokerName": "Fidelity",
"brokerPhone": "+1 (555) 987-6543",
"brokerageAccountNumber": "123456789",
"customBrokerName": "Local Investment Partners LLC"
},
"signature": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"lots": [
{
"numberOfShares": 50,
"purchasePrice": 150.75,
"purchaseDate": "2023-01-15T00:00:00.000Z",
"employeeStockPlan": "RSU",
"lotId": "LOT123"
}
]
},
"receivingEntityType": "fund",
"receivingEntityId": "123e4567-e89b-12d3-a456-426614174000",
"idempotencyKey": "123e4567-e89b-12d3-a456-426614174000",
"updateIdentity": True,
"shareMyEmail": False,
"recommendationId": "123e4567-e89b-12d3-a456-426614174000",
"isRebalanceRequested": False,
"donationValueMicroDollars": "50000000000",
"partnerOperationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
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({
stockPledgeData: {
shares: 100,
ticker: 'AAPL',
donorData: {
addressLine1: '123 Main St',
city: 'San Francisco',
country: 'USA',
firstName: 'John',
lastName: 'Doe',
receiptEmail: 'john.doe@example.com',
state: 'CA',
zipcode: '94105',
addressLine2: 'Apt 4B'
},
brokerData: {
brokerContactName: 'Jane Smith',
brokerEmail: 'jane.smith@brokerage.com',
brokerName: 'Fidelity',
brokerPhone: '+1 (555) 987-6543',
brokerageAccountNumber: '123456789',
customBrokerName: 'Local Investment Partners LLC'
},
signature: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...',
lots: [
{
numberOfShares: 50,
purchasePrice: 150.75,
purchaseDate: '2023-01-15T00:00:00.000Z',
employeeStockPlan: 'RSU',
lotId: 'LOT123'
}
]
},
receivingEntityType: 'fund',
receivingEntityId: '123e4567-e89b-12d3-a456-426614174000',
idempotencyKey: '123e4567-e89b-12d3-a456-426614174000',
updateIdentity: true,
shareMyEmail: false,
recommendationId: '123e4567-e89b-12d3-a456-426614174000',
isRebalanceRequested: false,
donationValueMicroDollars: '50000000000',
partnerOperationId: 'a1b2c3d4-e5f6-7890-abcd-ef1234567890'
})
};
fetch('https://api.endaoment.org/v2/donation-pledges/stock', 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.endaoment.org/v2/donation-pledges/stock",
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([
'stockPledgeData' => [
'shares' => 100,
'ticker' => 'AAPL',
'donorData' => [
'addressLine1' => '123 Main St',
'city' => 'San Francisco',
'country' => 'USA',
'firstName' => 'John',
'lastName' => 'Doe',
'receiptEmail' => 'john.doe@example.com',
'state' => 'CA',
'zipcode' => '94105',
'addressLine2' => 'Apt 4B'
],
'brokerData' => [
'brokerContactName' => 'Jane Smith',
'brokerEmail' => 'jane.smith@brokerage.com',
'brokerName' => 'Fidelity',
'brokerPhone' => '+1 (555) 987-6543',
'brokerageAccountNumber' => '123456789',
'customBrokerName' => 'Local Investment Partners LLC'
],
'signature' => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...',
'lots' => [
[
'numberOfShares' => 50,
'purchasePrice' => 150.75,
'purchaseDate' => '2023-01-15T00:00:00.000Z',
'employeeStockPlan' => 'RSU',
'lotId' => 'LOT123'
]
]
],
'receivingEntityType' => 'fund',
'receivingEntityId' => '123e4567-e89b-12d3-a456-426614174000',
'idempotencyKey' => '123e4567-e89b-12d3-a456-426614174000',
'updateIdentity' => true,
'shareMyEmail' => false,
'recommendationId' => '123e4567-e89b-12d3-a456-426614174000',
'isRebalanceRequested' => false,
'donationValueMicroDollars' => '50000000000',
'partnerOperationId' => 'a1b2c3d4-e5f6-7890-abcd-ef1234567890'
]),
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.endaoment.org/v2/donation-pledges/stock"
payload := strings.NewReader("{\n \"stockPledgeData\": {\n \"shares\": 100,\n \"ticker\": \"AAPL\",\n \"donorData\": {\n \"addressLine1\": \"123 Main St\",\n \"city\": \"San Francisco\",\n \"country\": \"USA\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"receiptEmail\": \"john.doe@example.com\",\n \"state\": \"CA\",\n \"zipcode\": \"94105\",\n \"addressLine2\": \"Apt 4B\"\n },\n \"brokerData\": {\n \"brokerContactName\": \"Jane Smith\",\n \"brokerEmail\": \"jane.smith@brokerage.com\",\n \"brokerName\": \"Fidelity\",\n \"brokerPhone\": \"+1 (555) 987-6543\",\n \"brokerageAccountNumber\": \"123456789\",\n \"customBrokerName\": \"Local Investment Partners LLC\"\n },\n \"signature\": \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\n \"lots\": [\n {\n \"numberOfShares\": 50,\n \"purchasePrice\": 150.75,\n \"purchaseDate\": \"2023-01-15T00:00:00.000Z\",\n \"employeeStockPlan\": \"RSU\",\n \"lotId\": \"LOT123\"\n }\n ]\n },\n \"receivingEntityType\": \"fund\",\n \"receivingEntityId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"idempotencyKey\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"updateIdentity\": true,\n \"shareMyEmail\": false,\n \"recommendationId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"isRebalanceRequested\": false,\n \"donationValueMicroDollars\": \"50000000000\",\n \"partnerOperationId\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\"\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.endaoment.org/v2/donation-pledges/stock")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"stockPledgeData\": {\n \"shares\": 100,\n \"ticker\": \"AAPL\",\n \"donorData\": {\n \"addressLine1\": \"123 Main St\",\n \"city\": \"San Francisco\",\n \"country\": \"USA\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"receiptEmail\": \"john.doe@example.com\",\n \"state\": \"CA\",\n \"zipcode\": \"94105\",\n \"addressLine2\": \"Apt 4B\"\n },\n \"brokerData\": {\n \"brokerContactName\": \"Jane Smith\",\n \"brokerEmail\": \"jane.smith@brokerage.com\",\n \"brokerName\": \"Fidelity\",\n \"brokerPhone\": \"+1 (555) 987-6543\",\n \"brokerageAccountNumber\": \"123456789\",\n \"customBrokerName\": \"Local Investment Partners LLC\"\n },\n \"signature\": \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\n \"lots\": [\n {\n \"numberOfShares\": 50,\n \"purchasePrice\": 150.75,\n \"purchaseDate\": \"2023-01-15T00:00:00.000Z\",\n \"employeeStockPlan\": \"RSU\",\n \"lotId\": \"LOT123\"\n }\n ]\n },\n \"receivingEntityType\": \"fund\",\n \"receivingEntityId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"idempotencyKey\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"updateIdentity\": true,\n \"shareMyEmail\": false,\n \"recommendationId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"isRebalanceRequested\": false,\n \"donationValueMicroDollars\": \"50000000000\",\n \"partnerOperationId\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.endaoment.org/v2/donation-pledges/stock")
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 \"stockPledgeData\": {\n \"shares\": 100,\n \"ticker\": \"AAPL\",\n \"donorData\": {\n \"addressLine1\": \"123 Main St\",\n \"city\": \"San Francisco\",\n \"country\": \"USA\",\n \"firstName\": \"John\",\n \"lastName\": \"Doe\",\n \"receiptEmail\": \"john.doe@example.com\",\n \"state\": \"CA\",\n \"zipcode\": \"94105\",\n \"addressLine2\": \"Apt 4B\"\n },\n \"brokerData\": {\n \"brokerContactName\": \"Jane Smith\",\n \"brokerEmail\": \"jane.smith@brokerage.com\",\n \"brokerName\": \"Fidelity\",\n \"brokerPhone\": \"+1 (555) 987-6543\",\n \"brokerageAccountNumber\": \"123456789\",\n \"customBrokerName\": \"Local Investment Partners LLC\"\n },\n \"signature\": \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\n \"lots\": [\n {\n \"numberOfShares\": 50,\n \"purchasePrice\": 150.75,\n \"purchaseDate\": \"2023-01-15T00:00:00.000Z\",\n \"employeeStockPlan\": \"RSU\",\n \"lotId\": \"LOT123\"\n }\n ]\n },\n \"receivingEntityType\": \"fund\",\n \"receivingEntityId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"idempotencyKey\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"updateIdentity\": true,\n \"shareMyEmail\": false,\n \"recommendationId\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"isRebalanceRequested\": false,\n \"donationValueMicroDollars\": \"50000000000\",\n \"partnerOperationId\": \"a1b2c3d4-e5f6-7890-abcd-ef1234567890\"\n}"
response = http.request(request)
puts response.read_body{
"id": "123e4567-e89b-12d3-a456-426614174000"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Stock pledge details including donor and broker information
Show child attributes
Show child attributes
Type of entity receiving the pledge
org, fund, subproject "fund"
Unique identifier of the receiving entity
"123e4567-e89b-12d3-a456-426614174000"
Client-generated key to ensure idempotency of the request
"123e4567-e89b-12d3-a456-426614174000"
Whether to update the user global identity with the provided donor information
true
Whether to share donor email with the receiving organization
false
Unique identifier of the recommendation that led to this pledge
"123e4567-e89b-12d3-a456-426614174000"
Whether the fund needs its investments rebalanced after the pledge is fulfilled
false
Settled donation value in microdollars. Required at runtime when the resolved partner has reportsSettledOperations: true; ignored otherwise.
"50000000000"
Partner-owned reference for this operation. Required at runtime when the resolved partner has reportsSettledOperations: true; ignored otherwise.
36"a1b2c3d4-e5f6-7890-abcd-ef1234567890"
Response
Stock donation pledge successfully created
Unique identifier of the created donation pledge
"123e4567-e89b-12d3-a456-426614174000"
Was this page helpful?