Sign a capacity request's document
Reserved clusters: sign the document as read (termsSha256 from the GET), with the time, the IP address and the browser recorded. The term sheet: the buyer’s signature on the live sheet; once both sides signed it and accepted the terms, the introduction follows on its own. Signing twice returns the first signature (created false). Owners and admins of the workspace signed in to the dashboard only: an API key or an agent is refused (403). Signing is closed while a template is a draft or the legal text is not approved (409).
curl --request POST \
--url https://api.runcrate.ai/v1/capacity/requests/{id}/documents/{kind} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"title": "<string>",
"company": "<string>",
"agreed": true,
"termsSha256": "<string>",
"entity": "<string>",
"registeredAddress": "<string>",
"noticeEmail": "jsmith@example.com"
}
'import requests
url = "https://api.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}"
payload = {
"name": "<string>",
"title": "<string>",
"company": "<string>",
"agreed": True,
"termsSha256": "<string>",
"entity": "<string>",
"registeredAddress": "<string>",
"noticeEmail": "jsmith@example.com"
}
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({
name: '<string>',
title: '<string>',
company: '<string>',
agreed: true,
termsSha256: '<string>',
entity: '<string>',
registeredAddress: '<string>',
noticeEmail: 'jsmith@example.com'
})
};
fetch('https://api.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}', 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.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}",
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([
'name' => '<string>',
'title' => '<string>',
'company' => '<string>',
'agreed' => true,
'termsSha256' => '<string>',
'entity' => '<string>',
'registeredAddress' => '<string>',
'noticeEmail' => 'jsmith@example.com'
]),
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.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"title\": \"<string>\",\n \"company\": \"<string>\",\n \"agreed\": true,\n \"termsSha256\": \"<string>\",\n \"entity\": \"<string>\",\n \"registeredAddress\": \"<string>\",\n \"noticeEmail\": \"jsmith@example.com\"\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.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"title\": \"<string>\",\n \"company\": \"<string>\",\n \"agreed\": true,\n \"termsSha256\": \"<string>\",\n \"entity\": \"<string>\",\n \"registeredAddress\": \"<string>\",\n \"noticeEmail\": \"jsmith@example.com\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}")
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 \"name\": \"<string>\",\n \"title\": \"<string>\",\n \"company\": \"<string>\",\n \"agreed\": true,\n \"termsSha256\": \"<string>\",\n \"entity\": \"<string>\",\n \"registeredAddress\": \"<string>\",\n \"noticeEmail\": \"jsmith@example.com\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"kind": "nda",
"signedAt": "2023-11-07T05:31:56Z",
"signerName": "<string>",
"documentSha256": "<string>",
"pdfUrl": "<string>",
"created": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}Authorizations
Use a Runcrate API key with the rc_live_* prefix as the bearer token. Create one at https://www.runcrate.ai/dashboard/api-keys.
Path Parameters
The capacity request.
nda: the mutual NDA with non-circumvention; loi: the letter of intent; term_sheet: the agreed term sheet (no names), signed by both sides before the introduction; introduction: Runcrate's introduction terms, stating the deal's commission and its schedule.
nda, loi, term_sheet, introduction Body
2 - 200true ^[0-9a-f]{64}$NDA only: the entity type and jurisdiction ("Delaware corporation").
NDA only.
NDA only.
Response
Signed.
Show child attributes
Show child attributes
curl --request POST \
--url https://api.runcrate.ai/v1/capacity/requests/{id}/documents/{kind} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"title": "<string>",
"company": "<string>",
"agreed": true,
"termsSha256": "<string>",
"entity": "<string>",
"registeredAddress": "<string>",
"noticeEmail": "jsmith@example.com"
}
'import requests
url = "https://api.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}"
payload = {
"name": "<string>",
"title": "<string>",
"company": "<string>",
"agreed": True,
"termsSha256": "<string>",
"entity": "<string>",
"registeredAddress": "<string>",
"noticeEmail": "jsmith@example.com"
}
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({
name: '<string>',
title: '<string>',
company: '<string>',
agreed: true,
termsSha256: '<string>',
entity: '<string>',
registeredAddress: '<string>',
noticeEmail: 'jsmith@example.com'
})
};
fetch('https://api.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}', 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.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}",
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([
'name' => '<string>',
'title' => '<string>',
'company' => '<string>',
'agreed' => true,
'termsSha256' => '<string>',
'entity' => '<string>',
'registeredAddress' => '<string>',
'noticeEmail' => 'jsmith@example.com'
]),
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.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"title\": \"<string>\",\n \"company\": \"<string>\",\n \"agreed\": true,\n \"termsSha256\": \"<string>\",\n \"entity\": \"<string>\",\n \"registeredAddress\": \"<string>\",\n \"noticeEmail\": \"jsmith@example.com\"\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.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"title\": \"<string>\",\n \"company\": \"<string>\",\n \"agreed\": true,\n \"termsSha256\": \"<string>\",\n \"entity\": \"<string>\",\n \"registeredAddress\": \"<string>\",\n \"noticeEmail\": \"jsmith@example.com\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.runcrate.ai/v1/capacity/requests/{id}/documents/{kind}")
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 \"name\": \"<string>\",\n \"title\": \"<string>\",\n \"company\": \"<string>\",\n \"agreed\": true,\n \"termsSha256\": \"<string>\",\n \"entity\": \"<string>\",\n \"registeredAddress\": \"<string>\",\n \"noticeEmail\": \"jsmith@example.com\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"kind": "nda",
"signedAt": "2023-11-07T05:31:56Z",
"signerName": "<string>",
"documentSha256": "<string>",
"pdfUrl": "<string>",
"created": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}