curl --request POST \
--url https://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"emails": [
"<string>"
],
"allowedDeliveryMethods": [],
"plaidRequired": true
}
'import requests
url = "https://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails"
payload = {
"emails": ["<string>"],
"allowedDeliveryMethods": [],
"plaidRequired": True
}
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({emails: ['<string>'], allowedDeliveryMethods: [], plaidRequired: true})
};
fetch('https://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails', 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://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails",
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([
'emails' => [
'<string>'
],
'allowedDeliveryMethods' => [
],
'plaidRequired' => true
]),
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://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails"
payload := strings.NewReader("{\n \"emails\": [\n \"<string>\"\n ],\n \"allowedDeliveryMethods\": [],\n \"plaidRequired\": true\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://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"emails\": [\n \"<string>\"\n ],\n \"allowedDeliveryMethods\": [],\n \"plaidRequired\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails")
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 \"emails\": [\n \"<string>\"\n ],\n \"allowedDeliveryMethods\": [],\n \"plaidRequired\": true\n}"
response = http.request(request)
puts response.read_body{
"url": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "The logged in user is not allowed to perform that action."
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Request delivery details from a vendor
curl --request POST \
--url https://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"emails": [
"<string>"
],
"allowedDeliveryMethods": [],
"plaidRequired": true
}
'import requests
url = "https://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails"
payload = {
"emails": ["<string>"],
"allowedDeliveryMethods": [],
"plaidRequired": True
}
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({emails: ['<string>'], allowedDeliveryMethods: [], plaidRequired: true})
};
fetch('https://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails', 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://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails",
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([
'emails' => [
'<string>'
],
'allowedDeliveryMethods' => [
],
'plaidRequired' => true
]),
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://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails"
payload := strings.NewReader("{\n \"emails\": [\n \"<string>\"\n ],\n \"allowedDeliveryMethods\": [],\n \"plaidRequired\": true\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://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"emails\": [\n \"<string>\"\n ],\n \"allowedDeliveryMethods\": [],\n \"plaidRequired\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://rest.staging.nickel.com/vendor/{vendorId}/requestDeliveryDetails")
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 \"emails\": [\n \"<string>\"\n ],\n \"allowedDeliveryMethods\": [],\n \"plaidRequired\": true\n}"
response = http.request(request)
puts response.read_body{
"url": "<string>"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "The logged in user is not allowed to perform that action."
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
ID of the vendor
Body
Recipient email addresses and optional settings controlling which delivery methods the hosted form offers
Email addresses to send the request to. When omitted, Nickel emails the addresses on the vendor record.
Allow-list of delivery methods the hosted form offers the vendor. WIRE is international wire (SWIFT), for vendors banking outside the US. Must include ACH — bank transfer is always available. Whether CHECK is allowed is saved on the vendor (the dashboard's Require ACH setting) — leaving it out keeps check off for this vendor's later links and for check addresses imported from QuickBooks, and including it turns check back on. Omitting the field keeps the vendor's saved setting — ["ACH", "CHECK"] unless check has been turned off.
ACH, CHECK, WIRE When true, the vendor must verify their bank account by logging into it through Plaid instead of typing routing and account numbers manually. Defaults to false.
Response
Successful operation
