Documentation/Canton Network Docs/Splice APIsToken Standard APIsAllocation V2 APIView on Canton Network Docs ↗
POST /registry/allocations/v2/:allocationId/choice-contexts/cancel
cURL
Python
JavaScript
PHP
Go
Java
Ruby
curl --request POST \
--url 'https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel' \
--header 'Content-Type: application/json' \
--data '{
"meta": {},
"excludeDebugFields": false
}'
import json
import requests
url = "https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel"
headers = {'Content-Type': 'application/json'}
payload = json.loads(r'''{
"meta": {},
"excludeDebugFields": false
}''')
response = requests.request(
"POST", url, headers=headers, json=payload
)
print(response.text)
const response = await fetch('https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel', {
method: 'POST',
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
"meta": {},
"excludeDebugFields": false
}),
});
console.log(await response.text());
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => <<<'JSON'
{
"meta": {},
"excludeDebugFields": false
}
JSON,
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
echo $response;
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("POST", "https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel", bytes.NewBufferString(`{
"meta": {},
"excludeDebugFields": false
}`))
req.Header.Set("Content-Type", "application/json")
response, _ := http.DefaultClient.Do(req)
defer response.Body.Close()
body, _ := io.ReadAll(response.Body)
fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel"))
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("""
{
"meta": {},
"excludeDebugFields": false
}
"""))
.build();
var response = HttpClient.newHttpClient().send(
request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'
uri = URI('https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel')
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request.body = <<~JSON
{
"meta": {},
"excludeDebugFields": false
}
JSON
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
http.request(request)
end
puts response.body
200
400
404
409
{
"choiceContextData": {},
"disclosedContracts": [
{
"templateId": "<string>",
"contractId": "<string>",
"createdEventBlob": "<string>",
"synchronizerId": "<string>",
"debugPackageName": "<string>",
"debugPayload": {},
"debugCreatedAt": "2026-01-01T00:00:00Z"
}
]
}
{
"error": "<string>"
}
{
"error": "<string>"
}
{
"error": "<string>"
}
POST
/
registry
/
allocations
/
v2
/
{allocationId}
/
choice-contexts
/
cancel
cURL
Python
JavaScript
PHP
Go
Java
Ruby
curl --request POST \
--url 'https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel' \
--header 'Content-Type: application/json' \
--data '{
"meta": {},
"excludeDebugFields": false
}'
import json
import requests
url = "https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel"
headers = {'Content-Type': 'application/json'}
payload = json.loads(r'''{
"meta": {},
"excludeDebugFields": false
}''')
response = requests.request(
"POST", url, headers=headers, json=payload
)
print(response.text)
const response = await fetch('https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel', {
method: 'POST',
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
"meta": {},
"excludeDebugFields": false
}),
});
console.log(await response.text());
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => <<<'JSON'
{
"meta": {},
"excludeDebugFields": false
}
JSON,
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
echo $response;
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("POST", "https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel", bytes.NewBufferString(`{
"meta": {},
"excludeDebugFields": false
}`))
req.Header.Set("Content-Type", "application/json")
response, _ := http.DefaultClient.Do(req)
defer response.Body.Close()
body, _ := io.ReadAll(response.Body)
fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel"))
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("""
{
"meta": {},
"excludeDebugFields": false
}
"""))
.build();
var response = HttpClient.newHttpClient().send(
request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'
uri = URI('https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel')
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request.body = <<~JSON
{
"meta": {},
"excludeDebugFields": false
}
JSON
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
http.request(request)
end
puts response.body
200
400
404
409
{
"choiceContextData": {},
"disclosedContracts": [
{
"templateId": "<string>",
"contractId": "<string>",
"createdEventBlob": "<string>",
"synchronizerId": "<string>",
"debugPackageName": "<string>",
"debugPayload": {},
"debugCreatedAt": "2026-01-01T00:00:00Z"
}
]
}
{
"error": "<string>"
}
{
"error": "<string>"
}
{
"error": "<string>"
}
Get the choice context to cancel an allocation.
OpenAPIAdded 0.6.11
cURL
Python
JavaScript
PHP
Go
Java
Ruby
curl --request POST \
--url 'https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel' \
--header 'Content-Type: application/json' \
--data '{
"meta": {},
"excludeDebugFields": false
}'
import json
import requests
url = "https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel"
headers = {'Content-Type': 'application/json'}
payload = json.loads(r'''{
"meta": {},
"excludeDebugFields": false
}''')
response = requests.request(
"POST", url, headers=headers, json=payload
)
print(response.text)
const response = await fetch('https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel', {
method: 'POST',
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
"meta": {},
"excludeDebugFields": false
}),
});
console.log(await response.text());
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => <<<'JSON'
{
"meta": {},
"excludeDebugFields": false
}
JSON,
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
echo $response;
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("POST", "https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel", bytes.NewBufferString(`{
"meta": {},
"excludeDebugFields": false
}`))
req.Header.Set("Content-Type", "application/json")
response, _ := http.DefaultClient.Do(req)
defer response.Body.Close()
body, _ := io.ReadAll(response.Body)
fmt.Println(string(body))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel"))
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("""
{
"meta": {},
"excludeDebugFields": false
}
"""))
.build();
var response = HttpClient.newHttpClient().send(
request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
require 'net/http'
require 'uri'
uri = URI('https://example.com/registry/allocations/v2/{allocationId}/choice-contexts/cancel')
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request.body = <<~JSON
{
"meta": {},
"excludeDebugFields": false
}
JSON
response = Net::HTTP.start(uri.hostname, uri.port) do |http|
http.request(request)
end
puts response.body
200
400
404
409
{
"choiceContextData": {},
"disclosedContracts": [
{
"templateId": "<string>",
"contractId": "<string>",
"createdEventBlob": "<string>",
"synchronizerId": "<string>",
"debugPackageName": "<string>",
"debugPayload": {},
"debugCreatedAt": "2026-01-01T00:00:00Z"
}
]
}
{
"error": "<string>"
}
{
"error": "<string>"
}
{
"error": "<string>"
}
Path parameters
allocationId
string
required
The contract ID of the allocation to cancel.
Body
application/json
meta
object
Metadata that will be passed to the choice, and should be incorporated into the choice context. Provided for extensibility.
excludeDebugFields
boolean
default:"false"
If set to true, the response will not include fields prefixed with ‘debug’. Useful to save bandwidth.
Responses
200
okapplication/json
choiceContextData
object
required
The additional data to use when exercising the choice.
disclosedContracts
DisclosedContract[]
required
The contracts that are required to be disclosed to the participant node for exercising the choice.
Show child attributes
Show child attributes
templateId
string
required
The fully qualified template identifier of the disclosed contract.
contractId
string
required
The contract ID of the disclosed contract.
createdEventBlob
string
required
The serialized created event of the disclosed contract, forwarded unchanged as retrieved from the JSON Ledger API.
synchronizerId
string
required
The synchronizer to which the contract is currently assigned. If the contract is in the process of being reassigned, then a “409” response is returned.
debugPackageName
string
The name of the Daml package that was used to create the contract. Use this data only if you trust the provider, as it might not match the data in the
createdEventBlob.debugPayload
object
The contract arguments that were used to create the contract. Use this data only if you trust the provider, as it might not match the data in the
createdEventBlob.debugCreatedAt
string (date-time)
The ledger effective time at which the contract was created. Use this data only if you trust the provider, as it might not match the data in the
createdEventBlob.400
bad requestapplication/json
error
string
required
404
not foundapplication/json
error
string
required
409
conflictapplication/json
error
string
required
History
Added
0.6.11