Skip to main content
POST
Seller Financing is in beta and runs on Ethereum Sepolia instances only for now (DEVELOPMENT instances on Ethereum). A PRODUCTION instance, or one on another network, answers 503 SELLER_FINANCING_UNAVAILABLE. See Seller Financing.
Builds setIdentityRegistry on the market for a holder of OPERATOR_ROLE to sign. The market identity register screens the seller at listing and the buyer at purchase. Name a new register, or send null to remove it, so that listings and purchases are screened by the asset token only. Use it to repair a market whose register refuses everyone: one deployed with the asset token or a contract that does not answer isVerified(address) as its register, or one still reading the retired Trusset ID Register. Get Market reports such a market with identityGate.usable: false, and Build Deployment names this route in details.repair when you try to deploy the same market again. A new register is probed before any calldata exists, with the checks a deployment runs:
  • It must not be the market’s asset token or payment token: 422 IDENTITY_REGISTRY_INCOMPATIBLE.
  • It must have contract code: 400 INVALID_IDENTITY_REGISTRY.
  • It must not be the previous Trusset ID Register, which takes no new identities: 422 IDENTITY_REGISTRY_RETIRED, with the current register in details.currentRegistry.
  • It must answer isVerified(address), probed for from: 422 IDENTITY_REGISTRY_INCOMPATIBLE when it does not, 503 IDENTITY_REGISTRY_UNREADABLE when it could not be reached.
The API then simulates the change from from. The change stays open while the market is paused.
The register applies to new business only. Listings and loans that exist already keep running under the new register, and a seller or buyer it refuses can no longer list or buy. Open listings of a seller the new register refuses stay open and can still be bought, because a purchase checks the buyer against the register, not the seller. The operator withdraws them with Cancel Listing.

Path Parameters

string
required
The market’s record ID, as id on List Markets, not its contract address.

Body Parameters

string
required
The register the market should read from now on: an ERC-3643 identity registry or the Trusset ID Register, anything that answers isVerified(address). Send null or "" to remove the register. The key must be present: a body without it answers 400 VALIDATION_ERROR with the message “Pass identityRegistry: the register address, or null to remove the market register.” and details[0].field set to identityRegistry. The register the market already reads answers 409 IDENTITY_REGISTRY_UNCHANGED.
string
required
The wallet that signs: a holder of OPERATOR_ROLE on the market, the operator named at deployment unless the admin moved the role. Without it the answer is 400 FROM_REQUIRED. Any other wallet answers 409 TX_WOULD_REVERT with AccessControlUnauthorizedAccount, details.requiredRole and details.roleHolders.

Response Fields

object

Error Codes