Skip to content

domain.setCredentials()

[Source]

Update the accepted credentials of an existing permissioned domain.

Signature

domain.setCredentials(
  params: DomainSetCredentialsParams,
  options?: DomainWriteOptions,
): Promise<SubmissionResult<DomainIntent>>

Parameters

ParameterTypeRequiredDescription
domainstringYesThe domain id to update.
credListAcceptedCredential[]YesThe credentials the domain accepts (at least one).

Each AcceptedCredential is:

FieldTypeRequiredDescription
issuerstringYesThe issuer r-address.
credTypestringYesThe credential type, as a plain string (hex-encoded on the ledger).

Options

options is an optional second argument that sets the source account and overrides the fee.

OptionTypeRequiredDescription
fromAccountSelectorNoThe account to act as — an r-address string, or an object { address } or { signer, account? }. Defaults to the primary signer's primary account. (For IOU operations, this is the issuer.)
feeFeeIntentNoFee override — a priority tier and/or a maxFeeDrops cap.
idempotencyKeystringNoA prior submission's idempotencyKey, to retry to the same intent instead of creating a duplicate. Auto-generated when omitted.

Returns

Resolves to a SubmissionResult<DomainIntent>.

Every simpleXRPL write resolves to a SubmissionResult<T> — a union tagged by source, with the backend's raw response preserved verbatim. Its common fields are:

FieldTypeDescription
intentTThe operation-specific output — see the operation's own return fields.
source'xrpld' | 'custody' | 'palisade'Which backend produced the result; discriminates response.
responseTxResponse | custody record | Palisade recordThe backend's raw response, preserved verbatim.
txHashstring (optional)The XRPL transaction hash, once the transaction is on-ledger.
intentIdstring (optional)The custodian intent id, when the path produced one. Hold onto this to resume via client.intent.
idempotencyKeystring (optional)The UUIDv7 this submission carried. Pass it back as a later call's idempotencyKey to retry to the same intent rather than creating a duplicate.

Return fields

For Domain.setCredentials, the intent (DomainIntent) echoes:

FieldTypeDescription
domainIDstringThe domain id that was updated.

Underlying XRPL transactor

Builds and submits a single PermissionedDomainSet transaction naming the existing domain id.

Example

await client.domain.setCredentials({
  domain: 'A1B2...',
  credList: [{ issuer: 'rIssuer...', credType: 'KYC' }],
})