Dynamic Waas API
The Waas API from Dynamic — 14 operation(s) for waas.
The Waas API from Dynamic — 14 operation(s) for waas.
openapi: 3.0.1
info:
title: Dashboard Allowlists Waas API
description: Dashboard API documentation
version: 1.0.0
servers:
- url: https://app.dynamicauth.com/api/v0
- url: https://app.dynamic.xyz/api/v0
- url: http://localhost:3333/api/v0
tags:
- name: Waas
paths:
/environments/{environmentId}/waas/create:
post:
operationId: createWaasWallet
description: Creates a new WAAS wallet for a user given an email or userId. If an email is provided and it is not associated with an existing user this call will also create a new user.
summary: Create a new WAAS for a user given an identifier
tags:
- Waas
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/environmentId'
requestBody:
description: Pregenerate WAAS wallet for a user given an identifier
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateUserWaasWalletsRequest'
responses:
'200':
description: Wallet already exists for the user
content:
application/json:
schema:
$ref: '#/components/schemas/UserResponse'
'201':
description: Successfully created new wallet for the user
content:
application/json:
schema:
$ref: '#/components/schemas/UserResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/authenticate:
post:
operationId: authenticateWaas
tags:
- Waas
summary: Authenticate for WAAS using api key
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/environmentId'
responses:
'200':
description: Successfully authenticated
content:
application/json:
schema:
$ref: '#/components/schemas/WaasAuthenticateResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/verifyApiKey:
post:
operationId: verifyApiKey
tags:
- Waas
summary: Verify if an API key is valid for a specific environment
description: Simple endpoint to verify if the provided API key (DYN_API_TOKEN) is valid and has access to the specified environment. Returns true if the token is verified, false otherwise.
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/environmentId'
responses:
'200':
description: API key verification result
content:
application/json:
schema:
$ref: '#/components/schemas/WaasVerifyApiKeyResponse'
'400':
description: Bad request - token is required
content:
application/json:
schema:
$ref: '#/components/schemas/WaasVerifyApiKeyErrorResponse'
'401':
description: Unauthorized - invalid or expired token
content:
application/json:
schema:
$ref: '#/components/schemas/WaasVerifyApiKeyErrorResponse'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/{walletId}/delegatedAccess/signMessage:
post:
operationId: delegatedSignMessage
tags:
- Waas
summary: Sign a message with a delegated waas account
parameters:
- $ref: '#/components/parameters/environmentId'
- $ref: '#/components/parameters/walletId'
requestBody:
description: Delegate Sign Message Request
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WaasDelegateSignMessageRequest'
responses:
'200':
description: Successfully created a room for delegated signing message ceremony
content:
application/json:
schema:
$ref: '#/components/schemas/OpenRoomResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/{walletId}/delegatedAccess:
delete:
operationId: deleteDelegatedAccess
tags:
- Waas
summary: Revoke delegated access for a single wallet
description: 'Allows developers to revoke their own delegated access for a specific wallet
'
parameters:
- $ref: '#/components/parameters/environmentId'
- $ref: '#/components/parameters/walletId'
responses:
'204':
description: Delegated access successfully revoked
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/delegatedAccess/revoke:
post:
operationId: revokeDelegatedAccess
tags:
- Waas
summary: Revoke delegated access for one or more wallets
description: 'Allows developers to revoke their own delegated access
'
parameters:
- $ref: '#/components/parameters/environmentId'
requestBody:
description: Revoke Delegated Access Request
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RevokeDelegatedAccessRequest'
responses:
'200':
description: Delegated access revocation processed
content:
application/json:
schema:
$ref: '#/components/schemas/RevokeDelegatedAccessResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/delegatedAccess/encryptionPublicKeys:
get:
operationId: getDelegatedAccessEncryptionPublicKeys
tags:
- Waas
summary: Get delegated access encryption public keys for an environment
description: 'Fetches the encryption public keys used for delegated access in a WAAS environment.
By default, returns only the latest active key. Use the includeAll query parameter to get all keys.
'
parameters:
- $ref: '#/components/parameters/environmentId'
- name: includeAll
in: query
description: If true, returns all encryption public keys. Otherwise, returns only the latest active key.
required: false
schema:
type: boolean
default: false
responses:
'200':
description: Encryption public keys fetched successfully
content:
application/json:
schema:
$ref: '#/components/schemas/DelegatedAccessEncryptionPublicKeysUnifiedResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
post:
operationId: createDelegatedCredentials
tags:
- Waas
summary: Create credentials for waas wallet delegation
parameters:
- $ref: '#/components/parameters/environmentId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WaasDelegationCredentialsRequest'
responses:
'201':
description: Credentials for waas wallet delegation created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasDelegationCredentialsResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/delegatedAccess/encryptionPublicKeys/{keyId}:
get:
operationId: getDelegatedAccessEncryptionPublicKeyById
tags:
- Waas
summary: Get a specific delegated access encryption public key by ID
parameters:
- $ref: '#/components/parameters/environmentId'
- name: keyId
in: path
description: The ID of the encryption public key
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Encryption public key fetched successfully
content:
application/json:
schema:
$ref: '#/components/schemas/DelegatedAccessEncryptionPublicKeyResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/{walletId}:
get:
operationId: getWaasWalletByWalletId
tags:
- Waas
summary: Get a specific WAAS wallet by walletId
parameters:
- $ref: '#/components/parameters/environmentId'
- name: walletId
in: path
description: The ID of the WAAS wallet
required: true
schema:
type: string
format: uuid
responses:
'200':
description: WAAS wallet fetched successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasWalletResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/{walletId}/keyShares/backup/locations:
post:
operationId: backupKeySharesToLocationsForPregen
tags:
- Waas
summary: Create backup action for key shares using API token authentication
description: 'Creates backup locations for wallet key shares. Requires API token authentication. Validates that the user belongs to the environment and that no client key shares exist for the wallet. This endpoint is intended for server-side integrations that need to backup key shares on behalf of users.
'
parameters:
- $ref: '#/components/parameters/environmentId'
- $ref: '#/components/parameters/walletId'
requestBody:
description: Backup locations request with userId
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/BackupKeySharesToLocationsWithUserIdRequest'
responses:
'201':
description: Backup action and event created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/BackupKeySharesToLocationsResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
security:
- bearerAuth: []
/environments/{environmentId}/waas/policies:
post:
operationId: createWaasPolicy
tags:
- Waas
summary: Create a new WAAS policy for an environment or add new rules to an existing policy
parameters:
- $ref: '#/components/parameters/environmentId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WaasPolicyCreateRequest'
responses:
'201':
description: WAAS policy created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasPolicyResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
get:
operationId: getWaasPolicy
tags:
- Waas
summary: Get the WAAS policy for an environment
parameters:
- $ref: '#/components/parameters/environmentId'
responses:
'200':
description: WAAS policy fetched successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasPolicyResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
put:
operationId: updateWaasPolicy
tags:
- Waas
summary: Update the WAAS policy for an environment by ruleId
parameters:
- $ref: '#/components/parameters/environmentId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WaasPolicyUpdateRequest'
responses:
'200':
description: WAAS policy updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasPolicyResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
delete:
operationId: deleteWaasPolicy
tags:
- Waas
summary: Delete a WAAS policy rule by ruleId
parameters:
- $ref: '#/components/parameters/environmentId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WaasPolicyDeleteRequest'
responses:
'200':
description: WAAS policy rules deleted successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasPolicyResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/{walletId}/signaturePolicy:
post:
operationId: createWaasSignaturePolicy
tags:
- Waas
summary: Create a new WAAS signature policy for a wallet
parameters:
- $ref: '#/components/parameters/environmentId'
- $ref: '#/components/parameters/walletId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WaasWalletSignaturePolicyTmpCreateRequest'
responses:
'201':
description: WAAS signature policy created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasWalletSignaturePolicyTmpResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
get:
operationId: getWaasSignaturePolicies
tags:
- Waas
summary: Get all active WAAS signature policies for a wallet
parameters:
- $ref: '#/components/parameters/environmentId'
- $ref: '#/components/parameters/walletId'
responses:
'200':
description: WAAS signature policies fetched successfully
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/WaasWalletSignaturePolicyTmpResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
/environments/{environmentId}/waas/{walletId}/signaturePolicy/{policyId}:
get:
operationId: getWaasSignaturePolicyByWalletIdAndPolicyId
tags:
- Waas
summary: Get a WAAS signature policy by walletId and policyId
parameters:
- $ref: '#/components/parameters/environmentId'
- $ref: '#/components/parameters/walletId'
- name: policyId
in: path
description: The ID of the signature policy for the wallet
required: true
schema:
type: string
format: uuid
responses:
'200':
description: WAAS signature policy fetched successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasWalletSignaturePolicyTmpResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
put:
operationId: updateWaasSignaturePolicyByWalletIdAndPolicyId
tags:
- Waas
summary: Update a WAAS signature policy by walletId and policyId
parameters:
- $ref: '#/components/parameters/environmentId'
- $ref: '#/components/parameters/walletId'
- name: policyId
in: path
description: The ID of the signature policy for the wallet
required: true
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WaasWalletSignaturePolicyTmpCreateRequest'
responses:
'200':
description: WAAS signature policy updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasWalletSignaturePolicyTmpResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
delete:
operationId: deleteWaasSignaturePolicyByWalletIdAndPolicyId
tags:
- Waas
summary: Delete a WAAS signature policy by walletId and policyId
parameters:
- $ref: '#/components/parameters/environmentId'
- $ref: '#/components/parameters/walletId'
- name: policyId
in: path
description: The ID of the signature policy for the wallet
required: true
schema:
type: string
format: uuid
responses:
'200':
description: WAAS signature policy deleted successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WaasWalletSignaturePolicyTmpResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
/sdk/{environmentId}/waas/delegatedAccess/encryptionPublicKey:
get:
operationId: getDelegatedAccessEncryptionPublicKey
tags:
- Waas
summary: Get delegated access encryption public key for an environment
description: 'Fetches the encryption public key used for delegated access in a WAAS environment.
By default, returns only the latest active key.
'
parameters:
- $ref: '#/components/parameters/environmentId'
responses:
'200':
description: Encryption public key fetched successfully
content:
application/json:
schema:
$ref: '#/components/schemas/DelegatedAccessEncryptionPublicKeyResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalServerError'
components:
schemas:
UnprocessableEntity:
type: object
properties:
error:
type: string
example: Resources already exists for this Object
code:
$ref: '#/components/schemas/UnprocessableEntityErrorCode'
payload:
$ref: '#/components/schemas/UnprocessableEntityErrorPayload'
required:
- error
ProjectSettingsKyc:
type: object
properties:
name:
type: string
required:
type: boolean
enabled:
type: boolean
unique:
type: boolean
verify:
type: boolean
type:
$ref: '#/components/schemas/KycFieldType'
validationRules:
$ref: '#/components/schemas/CustomFieldValidationRules'
validationType:
$ref: '#/components/schemas/CustomFieldType'
label:
type: string
position:
type: number
required:
- name
- required
- enabled
- unique
- verify
ThresholdSignatureScheme:
type: string
enum:
- TWO_OF_TWO
- TWO_OF_THREE
- THREE_OF_FIVE
OptionalNullableNonEmptyStringWith255MaxLength:
type: string
pattern: ^$|^(?=\S)[\p{L}\p{N} _.,:!?&%@\/+-]+(?<=\S)$
example: An example name
nullable: true
maxLength: 255
NonEmptyStringWith4096MaxLength:
type: string
maxLength: 4096
description: A string with a max length of 4096 characters
WaasVerifyApiKeyErrorResponse:
type: object
required:
- message
- verified
properties:
message:
type: string
description: Error message describing why verification failed
verified:
type: boolean
description: Always false for error responses
ChainalysisCheck:
type: object
properties:
id:
$ref: '#/components/schemas/uuid'
createdAt:
type: string
format: date-time
result:
$ref: '#/components/schemas/ChainalysisCheckResultEnum'
walletPublicKey:
$ref: '#/components/schemas/WalletPublicKey'
response:
type: string
required:
- id
- createdAt
- result
- walletPublicKey
- response
WaasDelegationCredentialsRequest:
type: object
required:
- publicKey
properties:
publicKey:
$ref: '#/components/schemas/NonEmptyStringWith4096MaxLength'
alg:
$ref: '#/components/schemas/NonEmptyStringWith50MaxLength'
type:
$ref: '#/components/schemas/WaasDelegatedAccessEncryptionPublicKeyType'
NotFound:
type: object
required:
- error
- code
properties:
error:
type: string
example: Not Found
code:
type: string
example: not_found
WaasWalletSettings:
type: object
properties:
hasDeniedDelegatedAccess:
type: boolean
shouldRefreshOnNextSignOn:
type: boolean
reshareOnNextSignOn:
$ref: '#/components/schemas/ThresholdSignatureScheme'
revokeOnNextSignOn:
type: boolean
WaasDelegationCredentialsResponse:
type: object
required:
- publicKey
- kid
- alg
- createdAt
- updatedAt
properties:
publicKey:
$ref: '#/components/schemas/NonEmptyStringWith4096MaxLength'
kid:
type: string
description: Short identifier referenced in webhook envelopes so the developer knows which private key to use
maxLength: 64
alg:
type: string
enum:
- RSA-OAEP-256
- HYBRID-RSA-AES-256
description: Algorithm for how this key is used
type:
$ref: '#/components/schemas/WaasDelegatedAccessEncryptionPublicKeyType'
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
WaasPolicyResponse:
type: object
required:
- policyId
- projectEnvironmentId
- createdAt
- updatedAt
- policyContent
properties:
message:
type: string
description: Message describing the operation result
policyId:
type: string
projectEnvironmentId:
$ref: '#/components/schemas/uuid'
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
policyContent:
type: array
items:
$ref: '#/components/schemas/WaasPolicyRule'
NonEmptyIsoCountryCode:
type: string
pattern: ^[a-zA-Z]{2,4}\d?$
maxLength: 4
example: US
OpenRoomResponse:
type: object
required:
- roomId
properties:
roomId:
type: string
serverKeygenIds:
type: array
items:
$ref: '#/components/schemas/NonEmptyBase58StringWith100MaxLength'
newServerKeygenIds:
type: array
items:
$ref: '#/components/schemas/NonEmptyBase58StringWith100MaxLength'
walletId:
$ref: '#/components/schemas/uuid'
WaasPolicyConstraintCondition:
type: string
enum:
- equal
- greater
- less
- greaterEqual
- lessEqual
- notEqual
description: Comparison operator for argument validation
WalletKeyShareInfo:
type: object
required:
- id
- backupLocation
- passwordEncrypted
properties:
id:
$ref: '#/components/schemas/uuid'
backupLocation:
type: string
passwordEncrypted:
type: boolean
externalKeyShareId:
$ref: '#/components/schemas/uuid'
User:
allOf:
- $ref: '#/components/schemas/BaseUser'
- type: object
properties:
walletPublicKey:
type: string
wallet:
type: string
chain:
$ref: '#/components/schemas/ChainEnum'
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
sessions:
type: array
items:
$ref: '#/components/schemas/Session'
wallets:
type: array
items:
$ref: '#/components/schemas/Wallet'
chainalysisChecks:
type: array
items:
$ref: '#/components/schemas/ChainalysisCheck'
oauthAccounts:
type: array
items:
$ref: '#/components/schemas/oAuthAccount'
mfaDevices:
type: array
items:
$ref: '#/components/schemas/MFADevice'
ecdsaValidatorOptions:
type: string
enum:
- zerodev_signer_to_ecdsa
- zerodev_multi_chain
UnprocessableEntityErrorPayload:
type: object
description: Contains information which the integrating client of this API can use to tailor an experience to a customer to fix the underlying issue that triggered this error.
properties:
email:
type: string
format: email
example: joe@email.com
loginProvider:
$ref: '#/components/schemas/ProviderEnum'
embeddedWalletName:
type: string
embeddedSocialSigninProvider:
$ref: '#/components/schemas/ProviderEnum'
mergeConflicts:
$ref: '#/components/schemas/MergeConflicts'
additionalMessages:
type: array
items:
type: string
JwtVerifiedCredentialFormatEnum:
type: string
enum:
- blockchain
- email
- oauth
- passkey
- phoneNumber
- externalUser
WaasPolicyDeleteRequest:
type: object
required:
- ruleIdsToDelete
properties:
ruleIdsToDelete:
type: array
items:
$ref: '#/components/schemas/uuid'
description: Array of rule IDs to delete from the policy
BackupKeySharesToLocationsWithUserIdRequest:
type: object
required:
- userId
- locations
properties:
userId:
type: string
format: uuid
description: The ID of the user who owns the wallet
locations:
type: array
items:
type: object
required:
- location
properties:
location:
$ref: '#/components/schemas/WaasBackupOptionsEnum'
keygenId:
$ref: '#/components/schemas/NonEmptyStringWith255MaxLength'
thresholdSignatureScheme:
$ref: '#/components/schemas/ThresholdSignatureScheme'
externalKeyShareId:
$ref: '#/components/schemas/NonEmptyString'
MergeUserConflict:
type: object
description: Contains a merge conflict between two users with different values for the same user field data
required:
- field
- fromUser
- currentUser
properties:
field:
$ref: '#/components/schemas/ProjectSettingsKyc'
fromUser:
$ref: '#/components/schemas/MergeUser'
currentUser:
$ref: '#/components/schemas/MergeUser'
UserResponse:
type: object
properties:
user:
$ref: '#/components/schemas/User'
InternalServerError:
type: object
properties:
error:
type: string
example: Internal Server Error
oAuthAccount:
type: object
properties:
id:
$ref: '#/components/schemas/uuid'
provider:
$ref: '#/components/schemas/ProviderEnum'
accountUsername:
type: string
SolanaPublicKey:
type: string
pattern: ^[1-9A-HJ-NP-Za-km-z]{43,44}$
description: Valid
# --- truncated at 32 KB (71 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dynamic-xyz/refs/heads/main/openapi/dynamic-xyz-waas-api-openapi.yml