Andamio LogoAndamio
Andamio API/Atlas tx builder api/Atlas Instance Admin/Atlas Self Service

Add Escrow Validator (Self-Service)

Atlas TX Builder APIAtlas Instance AdminAtlas Self Service

This endpoint allows an instance administrator to add an escrow validator to a project instance via self-service. This validator is crucial for managing and verifying escrow operations within the instance.

POST
/atlas-tx-builder/instance-admin/self-service/add-escrow
X-API-Key<token>

API Key for authentication. Example: "YOUR_API_KEY"

In: header

Add Escrow Validator Request Body - Contains all necessary information to add an escrow validator, including used addresses, change address, collateral UTxO, optional multisig CBOR, the instance admin UTxO, project NFT policy ID, and project NFT mint UTxO.

changeAddress?string
collateralUTxO?object
instanceAdminUTxO?object
maybeMultisigCbor?string
projectNftMintUTxO?object
projectNftPolicyId?string
usedAddresses?array<string>

Response Body

curl -X POST "https://andamio-api-308006323670.us-central1.run.app/api/v1/atlas-tx-builder/instance-admin/self-service/add-escrow" \
  -H "Content-Type: application/json" \
  -d '{}'
const body = JSON.stringify({})

fetch("https://andamio-api-308006323670.us-central1.run.app/api/v1/atlas-tx-builder/instance-admin/self-service/add-escrow", {
  body
})
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
  "strings"
)

func main() {
  url := "https://andamio-api-308006323670.us-central1.run.app/api/v1/atlas-tx-builder/instance-admin/self-service/add-escrow"
  body := strings.NewReader(`{}`)
  req, _ := http.NewRequest("POST", url, body)
  req.Header.Add("Content-Type", "application/json")
  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := ioutil.ReadAll(res.Body)

  fmt.Println(res)
  fmt.Println(string(body))
}
import requests

url = "https://andamio-api-308006323670.us-central1.run.app/api/v1/atlas-tx-builder/instance-admin/self-service/add-escrow"
body = {}
response = requests.request("POST", url, json = body, headers = {
  "Content-Type": "application/json"
})

print(response.text)
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
import java.time.Duration;
import java.net.http.HttpRequest.BodyPublishers;

var body = BodyPublishers.ofString("""{}""");
HttpClient client = HttpClient.newBuilder()
  .connectTimeout(Duration.ofSeconds(10))
  .build();

HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
  .uri(URI.create("https://andamio-api-308006323670.us-central1.run.app/api/v1/atlas-tx-builder/instance-admin/self-service/add-escrow"))
  .header("Content-Type", "application/json")
  .POST(body)
  .build();

try {
  HttpResponse<String> response = client.send(requestBuilder.build(), BodyHandlers.ofString());
  System.out.println("Status code: " + response.statusCode());
  System.out.println("Response body: " + response.body());
} catch (Exception e) {
  e.printStackTrace();
}
using System;
using System.Net.Http;
using System.Text;

var body = new StringContent("""
{}
""", Encoding.UTF8, "application/json");

var client = new HttpClient();
var response = await client.PostAsync("https://andamio-api-308006323670.us-central1.run.app/api/v1/atlas-tx-builder/instance-admin/self-service/add-escrow", body);
var responseBody = await response.Content.ReadAsStringAsync();
{
  "instanceNftPolicyId": "policy_id",
  "signedTxCBOR": "58..."
}
{
  "details": "string",
  "message": "Bad Request: Invalid input.",
  "status_code": 400
}
{
  "details": "string",
  "message": "Unauthorized: Invalid or missing credentials.",
  "status_code": 401
}
{
  "details": "string",
  "message": "Forbidden: Insufficient permissions or tier access.",
  "status_code": 403
}
{
  "details": "string",
  "message": "Unprocessable Entity: Invalid request structure or data.",
  "status_code": 422
}
{
  "details": "string",
  "message": "Too Many Requests: Rate limit or quota exceeded.",
  "status_code": 429
}
{
  "details": "string",
  "message": "Internal Server Error: An unexpected error occurred.",
  "status_code": 500
}