Agreement Records

Get agreement

Returns a single agreement record, including agreement JSON and hosted record context.

get/v0/agreements/{id}

Request

  • Base URL: https://test-api.shodai.network
  • URL: https://test-api.shodai.network/v0/agreements/{id}
  • Auth: one of:
    • API key in header X-API-Key
    • HTTP bearer

Path parameters

idstring required

Agreement ID or deployed agreement address.

Response

Agreement record.

Example response

{
  "data": {
    "id": "agr_123",
    "address": "0x3333333333333333333333333333333333333333",
    "chainId": 59141,
    "displayName": "Advisory Retainer",
    "status": "Deployed",
    "json": {
      "metadata": {
        "templateId": "did:template:service-retainer-v0-1",
        "name": "Service Retainer"
      },
      "variables": {
        "serviceProviderRepresentative": {
          "type": "address",
          "subtype": "participant",
          "validation": {
            "required": true
          }
        },
        "clientRepresentative": {
          "type": "address",
          "subtype": "participant",
          "validation": {
            "required": true
          }
        },
        "retainerTitle": {
          "type": "string",
          "validation": {
            "required": true
          }
        }
      },
      "content": {
        "type": "md",
        "data": "# ${variables.retainerTitle}\n\nService agreement between provider and client."
      },
      "execution": {
        "initialize": {
          "initialState": "AWAITING_PAYMENT",
          "data": {}
        },
        "states": {
          "AWAITING_PAYMENT": {
            "description": "Waiting for initial payment proof."
          },
          "WORK_IN_PROGRESS": {
            "description": "Provider is performing the service."
          }
        },
        "inputs": {
          "submitInitialPaymentProof": {
            "issuer": {
              "type": "participant",
              "variable": "clientRepresentative"
            },
            "schema": {
              "paymentReference": {
                "type": "string",
                "validation": {
                  "required": true
                }
              }
            }
          }
        },
        "transitions": [
          {
            "from": "AWAITING_PAYMENT",
            "to": "WORK_IN_PROGRESS",
            "conditions": [
              {
                "input": "submitInitialPaymentProof"
              }
            ]
          }
        ]
      }
    },
    "state": "AWAITING_PAYMENT",
    "variables": {
      "serviceProviderRepresentative": "0x1111111111111111111111111111111111111111",
      "clientRepresentative": "0x2222222222222222222222222222222222222222",
      "retainerTitle": "Advisory Retainer"
    },
    "owner": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
    "documentId": "7b0f6c2d-3e4f-4a5b-8c9d-0e1f2a3b4c5d",
    "docUri": "https://test-api.shodai.network/v0/agreements/documents/7b0f6c2d-3e4f-4a5b-8c9d-0e1f2a3b4c5d",
    "contributors": [
      "0x1111111111111111111111111111111111111111",
      "0x2222222222222222222222222222222222222222"
    ],
    "participants": [
      {
        "variableKey": "serviceProviderRepresentative",
        "walletAddress": "0x1111111111111111111111111111111111111111"
      },
      {
        "variableKey": "clientRepresentative",
        "walletAddress": "0x2222222222222222222222222222222222222222",
        "email": "client@example.com"
      }
    ],
    "observers": [
      "legal@example.com"
    ],
    "createdAt": "2026-04-27T16:00:00.000Z",
    "updatedAt": "2026-04-27T16:05:00.000Z"
  },
  "meta": {
    "apiVersion": "v0"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.