Stakeholder

Stakeholder Routes

One of the most interesting and important routes - given the issuerId, stakeholders can be added to the cap table.

stakeholder/create

  • Description: Creates a new stakeholder.
  • Method: POST
  • Parameters (body):
    • issuerId: The ID of the issuer (string).
    • data: The stakeholder data (object with the following fields):
      • name: The name of the stakeholder (object with legal_name, first_name, and last_name).
      • issuer_assigned_id: The ID assigned by the issuer (string).
      • stakeholder_type: The type of stakeholder (string, e.g., "INDIVIDUAL").
      • current_relationship: The current relationship (string).
      • primary_contact: The primary contact information (object with name, emails, and phone_numbers).
      • contact_info: Additional contact information (object with emails and phone_numbers).
      • comments: Additional comments (array of strings).
{
  "issuerId": "92dddedd-251d-47cd-83ac-342f00e3d5a1",
  "data": {
    "name": {
      "legal_name": "Alex Palmer",
      "first_name": "Alex",
      "last_name": "Palmer"
    },
    "issuer_assigned_id": "",
    "stakeholder_type": "INDIVIDUAL",
    "current_relationship": "FOUNDER",
    "primary_contact": {
      "name": {
        "legal_name": "Alex Palmer",
        "first_name": "Alex",
        "last_name": "Palmer"
      },
      "emails": [
        {
          "email_type": "PERSONAL",
          "email_address": "[email protected]" // this is real, you can ping me with questions
        }
      ],
      "phone_numbers": [
        {
          "phone_type": "MOBILE",
          "phone_number": "+1 212 420 6994" // this is fake guys
        }
      ]
    },
    "contact_info": {
      "emails": [
        {
          "email_type": "PERSONAL",
          "email_address": "[email protected]"
        }
      ],
      "phone_numbers": [
        {
          "phone_type": "MOBILE",
          "phone_number": "+1 212 420 6994"
        }
      ]
    },
    "comments": []
  }
}

stakeholder/add-wallet

This is used to add a wallet that the stakeholder is using to custody shares on the cap table, by issuer

  • Description: Adds a wallet to a stakeholder.
  • Method: POST
  • Parameters (body):
    • issuerId: The ID of the issuer (string).
    • wallet: The wallet address to add (string).
{
	"issuerId": "92dddedd-251d-47cd-83ac-342f00e3d5a1",
    "wallet": "0x3601a913fD3466f30f5ABb978E484d1B37Ce995D"
}

stakeholder/remove-wallet

Something bad happened to the wallet? Does the stakeholder want to use another one and remove the current one? This is how we do it.

  • Description: Removes a wallet from a stakeholder.
  • Method: POST
  • Parameters (body):
    • id: The ID of the stakeholder (string).
    • wallet: The wallet address to remove (string).
{
	"issuerId": "92dddedd-251d-47cd-83ac-342f00e3d5a1",
    "wallet": "0x3601a913fD3466f30f5ABb978E484d1B37Ce995D"
}

stakeholder/onchain/id/:id

  • Description: Retrieves onchain details of a stakeholder by ID.
  • Method: GET
  • Parameters (URL):
    • id: The ID of the stakeholder (string).

stakeholder/total-number

  • Description: Retrieves the total number of stakeholders.
  • Method: GET