{ "openapi": "3.0.0", "paths": { "/about": { "get": { "operationId": "aboutGetAbout", "parameters": [], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/About" } } } } }, "tags": ["about"] } }, "/v1/accounts": { "post": { "operationId": "accountsCreateAccountV1", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateAccountDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Account" } } } } }, "tags": ["accounts"] } }, "/v1/accounts/data-types": { "get": { "operationId": "accountsGetDataTypesV1", "parameters": [], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AccountDataType" } } } } } }, "tags": ["accounts"] } }, "/v1/accounts/{address}/data-settings": { "get": { "operationId": "accountsGetAccountDataSettingsV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AccountDataSetting" } } } } } }, "tags": ["accounts"] }, "put": { "operationId": "accountsUpsertAccountDataSettingsV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpsertAccountDataSettingsDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AccountDataSetting" } } } } } }, "tags": ["accounts"] } }, "/v1/accounts/{address}": { "get": { "operationId": "accountsGetAccountV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Account" } } } } }, "tags": ["accounts"] }, "delete": { "operationId": "accountsDeleteAccountV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "204": { "description": "" } }, "tags": ["accounts"] } }, "/v1/accounts/{address}/address-books/{chainId}": { "get": { "operationId": "addressBooksGetAddressBookV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AddressBook" } } } } }, "tags": ["accounts"] }, "post": { "operationId": "addressBooksCreateAddressBookItemV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateAddressBookItemDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AddressBookItem" } } } } }, "tags": ["accounts"] }, "delete": { "operationId": "addressBooksDeleteAddressBookV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "tags": ["accounts"] } }, "/v1/accounts/{address}/address-books/{chainId}/{addressBookItemId}": { "delete": { "operationId": "addressBooksDeleteAddressBookItemV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "addressBookItemId", "required": true, "in": "path", "schema": { "type": "number" } } ], "responses": { "200": { "description": "" } }, "tags": ["accounts"] } }, "/v1/accounts/{address}/counterfactual-safes/{chainId}/{predictedAddress}": { "get": { "operationId": "counterfactualSafesGetCounterfactualSafeV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "predictedAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CounterfactualSafe" } } } } }, "tags": ["accounts"] }, "delete": { "operationId": "counterfactualSafesDeleteCounterfactualSafeV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "predictedAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "tags": ["accounts"] } }, "/v1/accounts/{address}/counterfactual-safes": { "get": { "operationId": "counterfactualSafesGetCounterfactualSafesV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CounterfactualSafe" } } } } } }, "tags": ["accounts"] }, "put": { "operationId": "counterfactualSafesCreateCounterfactualSafeV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateCounterfactualSafeDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CounterfactualSafe" } } } } }, "tags": ["accounts"] }, "delete": { "operationId": "counterfactualSafesDeleteCounterfactualSafesV1", "parameters": [ { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "tags": ["accounts"] } }, "/v1/auth/nonce": { "get": { "operationId": "authGetNonceV1", "parameters": [], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuthNonce" } } } } }, "tags": ["auth"] } }, "/v1/auth/verify": { "post": { "operationId": "authVerifyV1", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SiweDto" } } } }, "responses": { "200": { "description": "Empty response body. JWT token is set as response cookie." } }, "tags": ["auth"] } }, "/v1/auth/logout": { "post": { "operationId": "authLogoutV1", "parameters": [], "responses": { "200": { "description": "Empty response body. Cookie value is removed and set to expire." } }, "tags": ["auth"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/balances/{fiatCode}": { "get": { "operationId": "balancesGetBalancesV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "fiatCode", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "trusted", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "exclude_spam", "required": false, "in": "query", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Balances" } } } } }, "tags": ["balances"] } }, "/v1/balances/supported-fiat-codes": { "get": { "operationId": "balancesGetSupportedFiatCodesV1", "parameters": [], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "string" } } } } } }, "tags": ["balances"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/positions/{fiatCode}": { "get": { "operationId": "positionsGetPositionsV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "fiatCode", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Protocol" } } } } } }, "tags": ["positions"] } }, "/v1/chains": { "get": { "operationId": "chainsGetChainsV1", "parameters": [ { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ChainPage" } } } } }, "tags": ["chains"] } }, "/v1/chains/{chainId}": { "get": { "operationId": "chainsGetChainV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Chain" } } } } }, "tags": ["chains"] } }, "/v1/chains/{chainId}/about": { "get": { "operationId": "chainsGetAboutChainV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AboutChain" } } } } }, "tags": ["chains"] } }, "/v1/chains/{chainId}/about/backbone": { "get": { "operationId": "chainsGetBackboneV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Backbone" } } } } }, "tags": ["chains"] } }, "/v1/chains/{chainId}/about/master-copies": { "get": { "operationId": "chainsGetMasterCopiesV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/MasterCopy" } } } } } }, "tags": ["chains"] } }, "/v1/chains/{chainId}/about/indexing": { "get": { "operationId": "chainsGetIndexingStatusV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IndexingStatus" } } } } }, "tags": ["chains"] } }, "/v2/chains/{chainId}/safes/{safeAddress}/collectibles": { "get": { "operationId": "collectiblesGetCollectiblesV2", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "trusted", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "exclude_spam", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CollectiblePage" } } } } }, "tags": ["collectibles"] } }, "/v1/community/campaigns": { "get": { "operationId": "communityGetCampaignsV1", "parameters": [ { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CampaignPage" } } } } }, "tags": ["community"] } }, "/v1/community/campaigns/{resourceId}": { "get": { "operationId": "communityGetCampaignByIdV1", "parameters": [ { "name": "resourceId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Campaign" } } } } }, "tags": ["community"] } }, "/v1/community/campaigns/{resourceId}/activities": { "get": { "operationId": "communityGetCampaignActivitiesV1", "parameters": [ { "name": "resourceId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "holder", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "tags": ["community"] } }, "/v1/community/campaigns/{resourceId}/leaderboard": { "get": { "operationId": "communityGetCampaignLeaderboardV1", "parameters": [ { "name": "resourceId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CampaignRankPage" } } } } }, "tags": ["community"] } }, "/v1/community/campaigns/{resourceId}/leaderboard/{safeAddress}": { "get": { "operationId": "communityGetCampaignRankV1", "parameters": [ { "name": "resourceId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CampaignRank" } } } } }, "tags": ["community"] } }, "/v1/community/eligibility": { "post": { "operationId": "communityCheckEligibilityV1", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EligibilityRequest" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Eligibility" } } } } }, "tags": ["community"] } }, "/v1/community/locking/leaderboard": { "get": { "operationId": "communityGetLeaderboardV1", "parameters": [ { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LockingRankPage" } } } } }, "tags": ["community"] } }, "/v1/community/locking/{safeAddress}/rank": { "get": { "operationId": "communityGetLockingRankV1", "parameters": [ { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LockingRank" } } } } }, "tags": ["community"] } }, "/v1/community/locking/{safeAddress}/history": { "get": { "operationId": "communityGetLockingHistoryV1", "parameters": [ { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LockingEventPage" } } } } }, "tags": ["community"] } }, "/v1/chains/{chainId}/contracts/{contractAddress}": { "get": { "operationId": "contractsGetContractV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "contractAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Contract" } } } } }, "tags": ["contracts"] } }, "/v1/export/chains/{chainId}/{safeAddress}": { "post": { "operationId": "csvExportLaunchExportV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": false, "description": "Transaction export request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TransactionExportDto" } } } }, "responses": { "202": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobStatusDto" } } } } }, "tags": ["export"] } }, "/v1/export/{jobId}/status": { "get": { "operationId": "csvExportGetExportStatusV1", "parameters": [ { "name": "jobId", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "CSV export status retrieved successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobStatusDto" } } } }, "404": { "description": "CSV export not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobStatusErrorDto" } } } } }, "tags": ["export"] } }, "/v1/chains/{chainId}/data-decoder": { "post": { "operationId": "dataDecodedGetDataDecodedV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TransactionDataDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataDecoded" } } } } }, "tags": ["data-decoded"] } }, "/v1/chains/{chainId}/delegates": { "get": { "deprecated": true, "operationId": "delegatesGetDelegatesV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safe", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "delegate", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "delegator", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "label", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DelegatePage" } } } } }, "summary": "", "tags": ["delegates"] }, "post": { "deprecated": true, "operationId": "delegatesPostDelegateV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateDelegateDto" } } } }, "responses": { "200": { "description": "" } }, "summary": "", "tags": ["delegates"] } }, "/v1/chains/{chainId}/delegates/{delegateAddress}": { "delete": { "deprecated": true, "operationId": "delegatesDeleteDelegateV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "delegateAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteDelegateDto" } } } }, "responses": { "200": { "description": "" } }, "summary": "", "tags": ["delegates"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/delegates/{delegateAddress}": { "delete": { "deprecated": true, "operationId": "delegatesDeleteSafeDelegateV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteSafeDelegateDto" } } } }, "responses": { "200": { "description": "" } }, "summary": "", "tags": ["delegates"] } }, "/v2/chains/{chainId}/delegates": { "get": { "operationId": "delegatesGetDelegatesV2", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safe", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "delegate", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "delegator", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "label", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DelegatePage" } } } } }, "tags": ["delegates"] }, "post": { "operationId": "delegatesPostDelegateV2", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateDelegateDto" } } } }, "responses": { "200": { "description": "" } }, "tags": ["delegates"] } }, "/v2/chains/{chainId}/delegates/{delegateAddress}": { "delete": { "operationId": "delegatesDeleteDelegateV2", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "delegateAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteDelegateV2Dto" } } } }, "responses": { "200": { "description": "" } }, "tags": ["delegates"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/recovery": { "post": { "operationId": "recoveryAddRecoveryModuleV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AddRecoveryModuleDto" } } } }, "responses": { "200": { "description": "" } }, "tags": ["recovery"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/recovery/{moduleAddress}": { "delete": { "operationId": "recoveryDeleteRecoveryModuleV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "moduleAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "204": { "description": "" } }, "tags": ["recovery"] } }, "/v2/chains/{chainId}/safes/{address}/multisig-transactions/estimations": { "post": { "operationId": "estimationsGetEstimationV2", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetEstimationDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EstimationResponse" } } } } }, "tags": ["estimations"] } }, "/v2/register/notifications": { "post": { "operationId": "notificationsUpsertSubscriptionsV2", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpsertSubscriptionsDto" } } } }, "responses": { "201": { "description": "" } }, "tags": ["notifications"] } }, "/v2/chains/{chainId}/notifications/devices/{deviceUuid}/safes/{safeAddress}": { "get": { "operationId": "notificationsGetSafeSubscriptionV2", "parameters": [ { "name": "deviceUuid", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "tags": ["notifications"] }, "delete": { "operationId": "notificationsDeleteSubscriptionV2", "parameters": [ { "name": "deviceUuid", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "tags": ["notifications"] } }, "/v2/notifications/subscriptions": { "delete": { "description": "Delete all subscriptions of a Safe on a device. This will delete all subscriptions of a Safe on a device for all chains passed in the request body.", "operationId": "notificationsDeleteAllSubscriptionsV2", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteAllSubscriptionsDto" } } } }, "responses": { "404": { "description": "No subscription was found" }, "422": { "description": "The request body is invalid" } }, "summary": "Delete all subscriptions of a device", "tags": ["notifications"] } }, "/v2/chains/{chainId}/notifications/devices/{deviceUuid}": { "delete": { "operationId": "notificationsDeleteDeviceV2", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "deviceUuid", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "tags": ["notifications"] } }, "/v1/chains/{chainId}/messages/{messageHash}": { "get": { "operationId": "messagesGetMessageByHashV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "messageHash", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Message" } } } } }, "tags": ["messages"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/messages": { "get": { "operationId": "messagesGetMessagesBySafeV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MessagePage" } } } } }, "tags": ["messages"] }, "post": { "operationId": "messagesCreateMessageV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateMessageDto" } } } }, "responses": { "200": { "description": "" } }, "tags": ["messages"] } }, "/v1/chains/{chainId}/messages/{messageHash}/signatures": { "post": { "operationId": "messagesUpdateMessageSignatureV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "messageHash", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateMessageSignatureDto" } } } }, "responses": { "200": { "description": "" } }, "tags": ["messages"] } }, "/v1/register/notifications": { "post": { "deprecated": true, "operationId": "notificationsRegisterDeviceV1", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RegisterDeviceDto" } } } }, "responses": { "200": { "description": "" } }, "summary": "", "tags": ["notifications"] } }, "/v1/chains/{chainId}/notifications/devices/{uuid}": { "delete": { "deprecated": true, "operationId": "notificationsUnregisterDeviceV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "uuid", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "summary": "", "tags": ["notifications"] } }, "/v1/chains/{chainId}/notifications/devices/{uuid}/safes/{safeAddress}": { "delete": { "deprecated": true, "operationId": "notificationsUnregisterSafeV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "uuid", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "" } }, "summary": "", "tags": ["notifications"] } }, "/v1/users": { "get": { "operationId": "usersGetWithWalletsV1", "parameters": [], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserWithWallets" } } } }, "401": { "description": "Signer address not provided" }, "404": { "description": "User (wallet) not found" } }, "tags": ["users"] }, "delete": { "operationId": "usersDeleteV1", "parameters": [], "responses": { "200": { "description": "User deleted" }, "401": { "description": "Signer address not provided" }, "404": { "description": "User (wallet) not found" } }, "tags": ["users"] } }, "/v1/users/wallet": { "post": { "operationId": "usersCreateWithWalletV1", "parameters": [], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreatedUserWithWallet" } } } }, "401": { "description": "Signer address not provided" }, "409": { "description": "Wallet already exists" } }, "tags": ["users"] } }, "/v1/users/wallet/add": { "post": { "operationId": "usersAddWalletToUserV1", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SiweDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WalletAddedToUser" } } } }, "401": { "description": "Signer address not provided OR invalid message/signature" }, "404": { "description": "User not found" }, "409": { "description": "Wallet already exists" } }, "tags": ["users"] } }, "/v1/users/wallet/{walletAddress}": { "delete": { "operationId": "usersDeleteWalletFromUserV1", "parameters": [ { "name": "walletAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Wallet removed from user and deleted" }, "401": { "description": "Signer address not provided" }, "404": { "description": "User OR provided wallet not found" }, "409": { "description": "Cannot remove the current wallet" } }, "tags": ["users"] } }, "/v1/spaces/{spaceId}/address-book": { "get": { "operationId": "addressBooksGetAddressBookItemsV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "responses": { "200": { "description": "Address Book Items found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SpaceAddressBookDto" } } } }, "401": { "description": "Signer address not provided" }, "403": { "description": "Signer not authorized." }, "404": { "description": "User, member or space not found" } }, "tags": ["spaces"] }, "put": { "operationId": "addressBooksUpsertAddressBookItemsV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpsertAddressBookItemsDto" } } } }, "responses": { "200": { "description": "Address Book updated", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SpaceAddressBookDto" } } } }, "400": { "description": "Address book items limit exceeded." }, "401": { "description": "Signer address not provided" }, "403": { "description": "Signer not authorized." }, "404": { "description": "User, member or space not found" } }, "tags": ["spaces"] } }, "/v1/spaces/{spaceId}/address-book/{address}": { "delete": { "operationId": "addressBooksDeleteByAddressV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } }, { "name": "address", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Address book item deleted" }, "403": { "description": "Signer address not present or not authorized" }, "404": { "description": "User, member or Space not found" } }, "tags": ["spaces"] } }, "/v1/spaces": { "post": { "operationId": "spacesCreateV1", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSpaceDto" } } } }, "responses": { "200": { "description": "Space created", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSpaceResponse" } } } }, "401": { "description": "Signer address not provided" }, "403": { "description": "Forbidden resource" }, "404": { "description": "User not found." } }, "tags": ["spaces"] }, "get": { "operationId": "spacesGetV1", "parameters": [], "responses": { "200": { "description": "Spaces found", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/GetSpaceResponse" } } } } }, "401": { "description": "Signer address not provided" }, "403": { "description": "Forbidden resource" }, "404": { "description": "User not found." } }, "tags": ["spaces"] } }, "/v1/spaces/create-with-user": { "post": { "operationId": "spacesCreateWithUserV1", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSpaceDto" } } } }, "responses": { "200": { "description": "Space created", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSpaceResponse" } } } }, "401": { "description": "Signer address not provided" }, "403": { "description": "Forbidden resource" } }, "tags": ["spaces"] } }, "/v1/spaces/{id}": { "get": { "operationId": "spacesGetOneV1", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "type": "number" } } ], "responses": { "200": { "description": "Space found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetSpaceResponse" } } } }, "401": { "description": "Signer address not provided" }, "403": { "description": "Forbidden resource" }, "404": { "description": "Space not found. OR User not found." } }, "tags": ["spaces"] }, "patch": { "operationId": "spacesUpdateV1", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateSpaceDto" } } } }, "responses": { "200": { "description": "Space updated", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateSpaceResponse" } } } }, "401": { "description": "Signer address not provided OR User is unauthorized" }, "403": { "description": "Forbidden resource" }, "404": { "description": "User not found." } }, "tags": ["spaces"] }, "delete": { "operationId": "spacesDeleteV1", "parameters": [ { "name": "id", "required": true, "in": "path", "schema": { "type": "number" } } ], "responses": { "204": { "description": "Spaces deleted" }, "401": { "description": "Signer address not provided OR User is unauthorized" }, "403": { "description": "Forbidden resource" }, "404": { "description": "User not found." } }, "tags": ["spaces"] } }, "/v1/spaces/{spaceId}/safes": { "post": { "operationId": "spaceSafesCreateV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSpaceSafesDto" } } } }, "responses": { "201": { "description": "Safes created successfully" }, "401": { "description": "User unauthorize OR signer address not provided" }, "404": { "description": "User not found." } }, "tags": ["spaces"] }, "get": { "operationId": "spaceSafesGetV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "responses": { "200": { "description": "Safes fetched successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetSpaceSafeResponse" } } } }, "401": { "description": "User unauthorized OR signer address not provided" }, "404": { "description": "User not found." } }, "tags": ["spaces"] }, "delete": { "operationId": "spaceSafesDeleteV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteSpaceSafesDto" } } } }, "responses": { "204": { "description": "Safes deleted successfully" }, "401": { "description": "User unauthorized OR signer address not provided" }, "404": { "description": "Space has no Safes OR user not found." } }, "tags": ["spaces"] } }, "/v1/spaces/{spaceId}/members/invite": { "post": { "operationId": "membersInviteUserV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InviteUsersDto" } } } }, "responses": { "200": { "description": "Users invited", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Invitation" } } } } }, "401": { "description": "User not admin OR signer address not provided OR member is not active" }, "403": { "description": "User not authorized" }, "409": { "description": "Too many invites" } }, "tags": ["spaces"] } }, "/v1/spaces/{spaceId}/members/accept": { "post": { "operationId": "membersAcceptInviteV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AcceptInviteDto" } } } }, "responses": { "200": { "description": "Invite accepted" }, "403": { "description": "Signer not authorized" }, "404": { "description": "Signer, space or membership not found" }, "409": { "description": "User invite not pending" } }, "tags": ["spaces"] } }, "/v1/spaces/{spaceId}/members/decline": { "post": { "operationId": "membersDeclineInviteV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "responses": { "200": { "description": "Invite declined" }, "403": { "description": "Signer not authorized" }, "404": { "description": "Signer, space or membership not found" }, "409": { "description": "User invite not pending" } }, "tags": ["spaces"] } }, "/v1/spaces/{spaceId}/members": { "get": { "operationId": "membersGetUsersV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "responses": { "200": { "description": "Space and members list", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MembersDto" } } } }, "403": { "description": "Signer not authorized" }, "404": { "description": "Signer or space not found" } }, "tags": ["spaces"] }, "delete": { "description": "Remove own membership from a space.", "operationId": "membersSelfRemoveV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "responses": { "200": { "description": "Membership deleted" }, "401": { "description": "Signer address not provided" }, "403": { "description": "Signer not authorized" }, "404": { "description": "Signer or space not found" }, "409": { "description": "Cannot remove last admin" } }, "summary": "Leave a space", "tags": ["spaces"] } }, "/v1/spaces/{spaceId}/members/{userId}/role": { "patch": { "operationId": "membersUpdateRoleV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } }, { "name": "userId", "required": true, "in": "path", "schema": { "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateRoleDto" } } } }, "responses": { "200": { "description": "Role updated" }, "401": { "description": "Signer not active or admin" }, "403": { "description": "Signer not authorized" }, "404": { "description": "Signer, space or signer/user-to-update membership not found" }, "409": { "description": "Cannot remove last admin" } }, "tags": ["spaces"] } }, "/v1/spaces/{spaceId}/members/alias": { "patch": { "description": "Update the alias of the authenticated member in a space. Users can only update their own alias.", "operationId": "membersUpdateAliasV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateMemberAliasDto" } } } }, "responses": { "200": { "description": "Alias updated" }, "403": { "description": "Signer not authorized" }, "404": { "description": "Signer, space or member not found" } }, "summary": "Update member alias", "tags": ["spaces"] } }, "/v1/spaces/{spaceId}/members/{userId}": { "delete": { "operationId": "membersRemoveUserV1", "parameters": [ { "name": "spaceId", "required": true, "in": "path", "schema": { "type": "number" } }, { "name": "userId", "required": true, "in": "path", "schema": { "type": "number" } } ], "responses": { "200": { "description": "Membership deleted" }, "401": { "description": "Signer not active or admin" }, "403": { "description": "Signer not authorized" }, "404": { "description": "Signer or space not found" }, "409": { "description": "Cannot remove last admin" } }, "tags": ["spaces"] } }, "/v1/chains/{chainId}/owners/{ownerAddress}/safes": { "get": { "operationId": "ownersGetSafesByOwnerV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "ownerAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SafeList" } } } } }, "tags": ["owners"] } }, "/v1/owners/{ownerAddress}/safes": { "get": { "deprecated": true, "operationId": "ownersGetAllSafesByOwnerV1", "parameters": [ { "name": "ownerAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SafeList" } } } } }, "summary": "Deprecated", "tags": ["owners"] } }, "/v2/owners/{ownerAddress}/safes": { "get": { "operationId": "ownersGetAllSafesByOwnerV2", "parameters": [ { "name": "ownerAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "additionalProperties": { "type": "array", "items": { "type": "string" } } } } } } }, "tags": ["owners"] } }, "/v1/chains/{chainId}/relay": { "post": { "operationId": "relayRelayV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RelayDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Relay" } } } } }, "tags": ["relay"] } }, "/v1/chains/{chainId}/relay/{safeAddress}": { "get": { "operationId": "relayGetRelaysRemainingV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RelaysRemaining" } } } } }, "tags": ["relay"] } }, "/v1/chains/{chainId}/safe-apps": { "get": { "operationId": "safeAppsGetSafeAppsV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "clientUrl", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "url", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/SafeApp" } } } } } }, "tags": ["safe-apps"] } }, "/v1/chains/{chainId}/safes/{safeAddress}": { "get": { "operationId": "safesGetSafeV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SafeState" } } } } }, "tags": ["safes"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/nonces": { "get": { "operationId": "safesGetNoncesV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SafeNonces" } } } } }, "tags": ["safes"] } }, "/v1/safes": { "get": { "operationId": "safesGetSafeOverviewV1", "parameters": [ { "name": "currency", "required": true, "in": "query", "schema": { "type": "string" } }, { "name": "safes", "required": true, "in": "query", "schema": { "type": "string" } }, { "name": "trusted", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "exclude_spam", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "wallet_address", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/SafeOverview" } } } } } }, "tags": ["safes"] } }, "/v1/targeted-messaging/outreaches/{outreachId}/chains/{chainId}/safes/{safeAddress}": { "get": { "operationId": "targetedMessagingGetTargetedSafeV1", "parameters": [ { "name": "outreachId", "required": true, "in": "path", "schema": { "type": "number" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TargetedSafe" } } } }, "404": { "description": "Safe not targeted." } }, "tags": ["targeted-messaging"] } }, "/v1/targeted-messaging/outreaches/{outreachId}/chains/{chainId}/safes/{safeAddress}/signers/{signerAddress}/submissions": { "get": { "operationId": "targetedMessagingGetSubmissionV1", "parameters": [ { "name": "outreachId", "required": true, "in": "path", "schema": { "type": "number" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "signerAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Submission" } } } } }, "tags": ["targeted-messaging"] }, "post": { "operationId": "targetedMessagingCreateSubmissionV1", "parameters": [ { "name": "outreachId", "required": true, "in": "path", "schema": { "type": "number" } }, { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "signerAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSubmissionDto" } } } }, "responses": { "201": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Submission" } } } } }, "tags": ["targeted-messaging"] } }, "/v1/chains/{chainId}/transactions/{id}": { "get": { "operationId": "transactionsGetTransactionByIdV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "id", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TransactionDetails" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/multisig-transactions/{safeTxHash}/raw": { "get": { "deprecated": true, "operationId": "transactionsGetDomainMultisigTransactionBySafeTxHashV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeTxHash", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TXSMultisigTransaction" } } } } }, "summary": "Deprecated", "tags": ["transactions"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/multisig-transactions/raw": { "get": { "deprecated": true, "operationId": "transactionsGetDomainMultisigTransactionsV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "failed", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "modified__lt", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "modified__gt", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "modified__lte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "modified__gte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "nonce__lt", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "nonce__gt", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "nonce__lte", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "nonce__gte", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "nonce", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "safe_tx_hash", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "to", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "value__lt", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "value__gt", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "value", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "executed", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "has_confirmations", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "trusted", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "execution_date__gte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "execution_date__lte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "submission_date__gte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "submission_date__lte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "transaction_hash", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "ordering", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "number" } }, { "name": "offset", "required": false, "in": "query", "schema": { "type": "number" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TXSMultisigTransactionPage" } } } } }, "summary": "Deprecated", "tags": ["transactions"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/multisig-transactions": { "get": { "operationId": "transactionsGetMultisigTransactionsV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "execution_date__gte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "execution_date__lte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "to", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "value", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "nonce", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "executed", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultisigTransactionPage" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/transactions/{safeTxHash}": { "delete": { "operationId": "transactionsDeleteTransactionV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeTxHash", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteTransactionDto" } } } }, "responses": { "200": { "description": "" } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/module-transactions": { "get": { "operationId": "transactionsGetModuleTransactionsV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "to", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "module", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "transaction_hash", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ModuleTransactionPage" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/transactions/{safeTxHash}/confirmations": { "post": { "operationId": "transactionsAddConfirmationV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeTxHash", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AddConfirmationDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Transaction" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/incoming-transfers": { "get": { "operationId": "transactionsGetIncomingTransfersV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "trusted", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "execution_date__gte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "execution_date__lte", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "to", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "value", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "token_address", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncomingTransferPage" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/transactions/{safeAddress}/preview": { "post": { "operationId": "transactionsPreviewTransactionV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PreviewTransactionDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TransactionPreview" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/transactions/queued": { "get": { "operationId": "transactionsGetTransactionQueueV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "trusted", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueuedItemPage" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/transactions/history": { "get": { "operationId": "transactionsGetTransactionsHistoryV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "timezone_offset", "required": false, "in": "query", "deprecated": true, "schema": { "type": "string" } }, { "name": "trusted", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "imitation", "required": false, "in": "query", "schema": { "type": "boolean" } }, { "name": "timezone", "required": false, "in": "query", "schema": { "type": "string" } }, { "name": "cursor", "required": false, "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TransactionItemPage" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/transactions/{safeAddress}/propose": { "post": { "operationId": "transactionsProposeTransactionV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProposeTransactionDto" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Transaction" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/transactions/creation": { "get": { "operationId": "transactionsGetCreationTransactionV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreationTransaction" } } } } }, "tags": ["transactions"] } }, "/v1/chains/{chainId}/safes/{safeAddress}/creation/raw": { "get": { "deprecated": true, "operationId": "transactionsGetDomainCreationTransactionV1", "parameters": [ { "name": "chainId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "safeAddress", "required": true, "in": "path", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TXSCreationTransaction" } } } } }, "summary": "Deprecated", "tags": ["transactions"] } } }, "info": { "title": "Safe Client Gateway", "description": "", "version": "main", "contact": {} }, "tags": [], "servers": [], "components": { "schemas": { "About": { "type": "object", "properties": { "name": { "type": "string" }, "version": { "type": "string", "nullable": true }, "buildNumber": { "type": "string", "nullable": true } }, "required": ["name"] }, "CreateAccountDto": { "type": "object", "properties": { "address": { "type": "string", "minLength": 3, "maxLength": 30 }, "name": { "type": "string" } }, "required": ["address", "name"] }, "Account": { "type": "object", "properties": { "id": { "type": "string" }, "groupId": { "type": "string", "nullable": true }, "address": { "type": "string" }, "name": { "type": "string" } }, "required": ["id", "address", "name"] }, "AccountDataType": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "description": { "type": "string", "nullable": true }, "isActive": { "type": "boolean" } }, "required": ["id", "name", "isActive"] }, "AccountDataSetting": { "type": "object", "properties": { "dataTypeId": { "type": "string" }, "enabled": { "type": "boolean" } }, "required": ["dataTypeId", "enabled"] }, "UpsertAccountDataSettingDto": { "type": "object", "properties": { "dataTypeId": { "type": "string" }, "enabled": { "type": "boolean" } }, "required": ["dataTypeId", "enabled"] }, "UpsertAccountDataSettingsDto": { "type": "object", "properties": { "accountDataSettings": { "type": "array", "items": { "$ref": "#/components/schemas/UpsertAccountDataSettingDto" } } }, "required": ["accountDataSettings"] }, "AddressBookItem": { "type": "object", "properties": { "name": { "type": "string" }, "address": { "type": "string" }, "chainIds": { "type": "array", "items": { "type": "string" } } }, "required": ["name", "address", "chainIds"] }, "AddressBook": { "type": "object", "properties": { "id": { "type": "string" }, "accountId": { "type": "string" }, "chainId": { "type": "string" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/AddressBookItem" } } }, "required": ["id", "accountId", "chainId", "data"] }, "CreateAddressBookItemDto": { "type": "object", "properties": { "name": { "type": "string", "minLength": 3, "maxLength": 30 }, "address": { "type": "string" } }, "required": ["name", "address"] }, "CounterfactualSafe": { "type": "object", "properties": { "chainId": { "type": "string" }, "creator": { "type": "string" }, "fallbackHandler": { "type": "string" }, "owners": { "type": "array", "items": { "type": "string" } }, "predictedAddress": { "type": "string" }, "saltNonce": { "type": "string" }, "singletonAddress": { "type": "string" }, "threshold": { "type": "number" } }, "required": [ "chainId", "creator", "fallbackHandler", "owners", "predictedAddress", "saltNonce", "singletonAddress", "threshold" ] }, "CreateCounterfactualSafeDto": { "type": "object", "properties": { "chainId": { "type": "string" }, "fallbackHandler": { "type": "string" }, "owners": { "type": "array", "items": { "type": "string" } }, "predictedAddress": { "type": "string" }, "saltNonce": { "type": "string" }, "singletonAddress": { "type": "string" }, "threshold": { "type": "number" } }, "required": [ "chainId", "fallbackHandler", "owners", "predictedAddress", "saltNonce", "singletonAddress", "threshold" ] }, "AuthNonce": { "type": "object", "properties": { "nonce": { "type": "string" } }, "required": ["nonce"] }, "SiweDto": { "type": "object", "properties": { "message": { "type": "string" }, "signature": { "type": "string" } }, "required": ["message", "signature"] }, "NativeToken": { "type": "object", "properties": { "address": { "type": "string" }, "decimals": { "type": "number" }, "logoUri": { "type": "string" }, "name": { "type": "string" }, "symbol": { "type": "string" }, "type": { "type": "string", "enum": ["NATIVE_TOKEN"] } }, "required": ["address", "decimals", "logoUri", "name", "symbol", "type"] }, "Erc20Token": { "type": "object", "properties": { "address": { "type": "string" }, "decimals": { "type": "number" }, "logoUri": { "type": "string" }, "name": { "type": "string" }, "symbol": { "type": "string" }, "type": { "type": "string", "enum": ["ERC20"] } }, "required": ["address", "decimals", "logoUri", "name", "symbol", "type"] }, "Erc721Token": { "type": "object", "properties": { "address": { "type": "string" }, "decimals": { "type": "number" }, "logoUri": { "type": "string" }, "name": { "type": "string" }, "symbol": { "type": "string" }, "type": { "type": "string", "enum": ["ERC721"] } }, "required": ["address", "decimals", "logoUri", "name", "symbol", "type"] }, "Balance": { "type": "object", "properties": { "balance": { "type": "string" }, "fiatBalance": { "type": "string" }, "fiatConversion": { "type": "string" }, "tokenInfo": { "oneOf": [ { "$ref": "#/components/schemas/NativeToken" }, { "$ref": "#/components/schemas/Erc20Token" }, { "$ref": "#/components/schemas/Erc721Token" } ] }, "fiatBalance24hChange": { "type": "string", "nullable": true } }, "required": ["balance", "fiatBalance", "fiatConversion", "tokenInfo"] }, "Balances": { "type": "object", "properties": { "fiatTotal": { "type": "string" }, "items": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/Balance" } ] } } }, "required": ["fiatTotal", "items"] }, "Position": { "type": "object", "properties": { "balance": { "type": "string" }, "fiatBalance": { "type": "string" }, "fiatConversion": { "type": "string" }, "tokenInfo": { "oneOf": [ { "$ref": "#/components/schemas/NativeToken" }, { "$ref": "#/components/schemas/Erc20Token" }, { "$ref": "#/components/schemas/Erc721Token" } ] }, "fiatBalance24hChange": { "type": "string", "nullable": true }, "position_type": { "type": "string", "enum": ["deposit", "loan", "locked", "staked", "reward", "wallet", "airdrop", "margin", "unknown"], "nullable": true } }, "required": ["balance", "fiatBalance", "fiatConversion", "tokenInfo", "fiatBalance24hChange", "position_type"] }, "PositionGroup": { "type": "object", "properties": { "name": { "type": "string" }, "items": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/Position" } ] } } }, "required": ["name", "items"] }, "ProtocolIcon": { "type": "object", "properties": { "url": { "type": "string", "nullable": true } }, "required": ["url"] }, "ProtocolMetadata": { "type": "object", "properties": { "name": { "type": "string" }, "icon": { "$ref": "#/components/schemas/ProtocolIcon" } }, "required": ["name", "icon"] }, "Protocol": { "type": "object", "properties": { "protocol": { "type": "string" }, "protocol_metadata": { "$ref": "#/components/schemas/ProtocolMetadata" }, "fiatTotal": { "type": "string" }, "items": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/PositionGroup" } ] } } }, "required": ["protocol", "protocol_metadata", "fiatTotal", "items"] }, "GasPriceOracle": { "type": "object", "properties": { "type": { "type": "string" }, "gasParameter": { "type": "string" }, "gweiFactor": { "type": "string" }, "uri": { "type": "string" } }, "required": ["type", "gasParameter", "gweiFactor", "uri"] }, "GasPriceFixed": { "type": "object", "properties": { "type": { "type": "string" }, "weiValue": { "type": "string" } }, "required": ["type", "weiValue"] }, "GasPriceFixedEIP1559": { "type": "object", "properties": { "type": { "type": "string" }, "maxFeePerGas": { "type": "string" }, "maxPriorityFeePerGas": { "type": "string" } }, "required": ["type", "maxFeePerGas", "maxPriorityFeePerGas"] }, "NativeCurrency": { "type": "object", "properties": { "decimals": { "type": "number" }, "logoUri": { "type": "string" }, "name": { "type": "string" }, "symbol": { "type": "string" } }, "required": ["decimals", "logoUri", "name", "symbol"] }, "BlockExplorerUriTemplate": { "type": "object", "properties": { "address": { "type": "string" }, "api": { "type": "string" }, "txHash": { "type": "string" } }, "required": ["address", "api", "txHash"] }, "BalancesProvider": { "type": "object", "properties": { "chainName": { "type": "number", "nullable": true }, "enabled": { "type": "boolean" } }, "required": ["enabled"] }, "ContractAddresses": { "type": "object", "properties": { "safeSingletonAddress": { "type": "string", "nullable": true }, "safeProxyFactoryAddress": { "type": "string", "nullable": true }, "multiSendAddress": { "type": "string", "nullable": true }, "multiSendCallOnlyAddress": { "type": "string", "nullable": true }, "fallbackHandlerAddress": { "type": "string", "nullable": true }, "signMessageLibAddress": { "type": "string", "nullable": true }, "createCallAddress": { "type": "string", "nullable": true }, "simulateTxAccessorAddress": { "type": "string", "nullable": true }, "safeWebAuthnSignerFactoryAddress": { "type": "string", "nullable": true } } }, "RpcUri": { "type": "object", "properties": { "authentication": { "type": "string", "enum": ["API_KEY_PATH", "NO_AUTHENTICATION", "UNKNOWN"] }, "value": { "type": "string" } }, "required": ["authentication", "value"] }, "Theme": { "type": "object", "properties": { "backgroundColor": { "type": "string" }, "textColor": { "type": "string" } }, "required": ["backgroundColor", "textColor"] }, "Chain": { "type": "object", "properties": { "chainId": { "type": "string" }, "chainName": { "type": "string" }, "description": { "type": "string" }, "chainLogoUri": { "type": "string", "nullable": true }, "l2": { "type": "boolean" }, "isTestnet": { "type": "boolean" }, "zk": { "type": "boolean" }, "nativeCurrency": { "$ref": "#/components/schemas/NativeCurrency" }, "transactionService": { "type": "string" }, "blockExplorerUriTemplate": { "$ref": "#/components/schemas/BlockExplorerUriTemplate" }, "beaconChainExplorerUriTemplate": { "type": "object" }, "disabledWallets": { "type": "array", "items": { "type": "string" } }, "ensRegistryAddress": { "type": "string", "nullable": true }, "balancesProvider": { "$ref": "#/components/schemas/BalancesProvider" }, "contractAddresses": { "$ref": "#/components/schemas/ContractAddresses" }, "features": { "type": "array", "items": { "type": "string" } }, "gasPrice": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/GasPriceOracle" }, { "$ref": "#/components/schemas/GasPriceFixed" }, { "$ref": "#/components/schemas/GasPriceFixedEIP1559" } ] } }, "publicRpcUri": { "$ref": "#/components/schemas/RpcUri" }, "rpcUri": { "$ref": "#/components/schemas/RpcUri" }, "safeAppsRpcUri": { "$ref": "#/components/schemas/RpcUri" }, "shortName": { "type": "string" }, "theme": { "$ref": "#/components/schemas/Theme" }, "recommendedMasterCopyVersion": { "type": "string", "nullable": true } }, "required": [ "chainId", "chainName", "description", "l2", "isTestnet", "zk", "nativeCurrency", "transactionService", "blockExplorerUriTemplate", "beaconChainExplorerUriTemplate", "disabledWallets", "balancesProvider", "contractAddresses", "features", "gasPrice", "publicRpcUri", "rpcUri", "safeAppsRpcUri", "shortName", "theme" ] }, "ChainPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/Chain" } } }, "required": ["results"] }, "AboutChain": { "type": "object", "properties": { "transactionServiceBaseUri": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" }, "buildNumber": { "type": "string" } }, "required": ["transactionServiceBaseUri", "name", "version", "buildNumber"] }, "Backbone": { "type": "object", "properties": { "api_version": { "type": "string" }, "headers": { "type": "string", "nullable": true }, "host": { "type": "string" }, "name": { "type": "string" }, "secure": { "type": "boolean" }, "settings": { "type": "object", "nullable": true }, "version": { "type": "string" } }, "required": ["api_version", "host", "name", "secure", "settings", "version"] }, "MasterCopy": { "type": "object", "properties": { "address": { "type": "string" }, "version": { "type": "string" } }, "required": ["address", "version"] }, "IndexingStatus": { "type": "object", "properties": { "lastSync": { "type": "number" }, "synced": { "type": "boolean" } }, "required": ["lastSync", "synced"] }, "Collectible": { "type": "object", "properties": { "address": { "type": "string" }, "tokenName": { "type": "string" }, "tokenSymbol": { "type": "string" }, "logoUri": { "type": "string" }, "id": { "type": "string" }, "uri": { "type": "string", "nullable": true }, "name": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true }, "imageUri": { "type": "string", "nullable": true }, "metadata": { "type": "object", "nullable": true } }, "required": ["address", "tokenName", "tokenSymbol", "logoUri", "id"] }, "CollectiblePage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/Collectible" } } }, "required": ["results"] }, "ActivityMetadata": { "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "maxPoints": { "type": "number" } }, "required": ["name", "description", "maxPoints"] }, "Campaign": { "type": "object", "properties": { "resourceId": { "type": "string" }, "name": { "type": "string" }, "description": { "type": "string" }, "startDate": { "type": "string" }, "endDate": { "type": "string" }, "lastUpdated": { "type": "string", "nullable": true }, "activitiesMetadata": { "nullable": true, "type": "array", "items": { "$ref": "#/components/schemas/ActivityMetadata" } }, "rewardValue": { "type": "string", "nullable": true }, "rewardText": { "type": "string", "nullable": true }, "iconUrl": { "type": "string", "nullable": true }, "safeAppUrl": { "type": "string", "nullable": true }, "partnerUrl": { "type": "string", "nullable": true }, "isPromoted": { "type": "boolean" } }, "required": ["resourceId", "name", "description", "startDate", "endDate", "isPromoted"] }, "CampaignPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/Campaign" } } }, "required": ["results"] }, "CampaignRank": { "type": "object", "properties": { "holder": { "type": "string" }, "position": { "type": "number" }, "boost": { "type": "number" }, "totalPoints": { "type": "number" }, "totalBoostedPoints": { "type": "number" } }, "required": ["holder", "position", "boost", "totalPoints", "totalBoostedPoints"] }, "CampaignRankPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/CampaignRank" } } }, "required": ["results"] }, "EligibilityRequest": { "type": "object", "properties": { "requestId": { "type": "string" }, "sealedData": { "type": "string" } }, "required": ["requestId", "sealedData"] }, "Eligibility": { "type": "object", "properties": { "requestId": { "type": "string" }, "isAllowed": { "type": "boolean" }, "isVpn": { "type": "boolean" } }, "required": ["requestId", "isAllowed", "isVpn"] }, "LockingRank": { "type": "object", "properties": { "holder": { "type": "string" }, "position": { "type": "number" }, "lockedAmount": { "type": "string" }, "unlockedAmount": { "type": "string" }, "withdrawnAmount": { "type": "string" } }, "required": ["holder", "position", "lockedAmount", "unlockedAmount", "withdrawnAmount"] }, "LockingRankPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/LockingRank" } } }, "required": ["results"] }, "LockEventItem": { "type": "object", "properties": { "eventType": { "type": "string", "enum": ["LOCKED"] }, "executionDate": { "type": "string" }, "transactionHash": { "type": "string" }, "holder": { "type": "string" }, "amount": { "type": "string" }, "logIndex": { "type": "string" } }, "required": ["eventType", "executionDate", "transactionHash", "holder", "amount", "logIndex"] }, "UnlockEventItem": { "type": "object", "properties": { "eventType": { "type": "string", "enum": ["UNLOCKED"] }, "executionDate": { "type": "string" }, "transactionHash": { "type": "string" }, "holder": { "type": "string" }, "amount": { "type": "string" }, "logIndex": { "type": "string" }, "unlockIndex": { "type": "string" } }, "required": ["eventType", "executionDate", "transactionHash", "holder", "amount", "logIndex", "unlockIndex"] }, "WithdrawEventItem": { "type": "object", "properties": { "eventType": { "type": "string", "enum": ["WITHDRAWN"] }, "executionDate": { "type": "string" }, "transactionHash": { "type": "string" }, "holder": { "type": "string" }, "amount": { "type": "string" }, "logIndex": { "type": "string" }, "unlockIndex": { "type": "string" } }, "required": ["eventType", "executionDate", "transactionHash", "holder", "amount", "logIndex", "unlockIndex"] }, "LockingEventPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/LockEventItem" }, { "$ref": "#/components/schemas/UnlockEventItem" }, { "$ref": "#/components/schemas/WithdrawEventItem" } ] } } }, "required": ["results"] }, "Contract": { "type": "object", "properties": { "address": { "type": "string" }, "name": { "type": "string" }, "displayName": { "type": "string" }, "logoUri": { "type": "string" }, "contractAbi": { "type": "object", "nullable": true }, "trustedForDelegateCall": { "type": "boolean" } }, "required": ["address", "name", "displayName", "logoUri", "trustedForDelegateCall"] }, "TransactionExportDto": { "type": "object", "properties": { "executionDateGte": { "type": "string", "description": "Execution date greater than or equal to (ISO date string)" }, "executionDateLte": { "type": "string", "description": "Execution date less than or equal to (ISO date string)" }, "limit": { "type": "number", "description": "Maximum number of transactions to export" }, "offset": { "type": "number", "description": "Number of transactions to start from" } } }, "JobStatusDto": { "type": "object", "properties": { "id": { "type": "string", "description": "Job ID" }, "name": { "type": "string", "description": "Job name" }, "data": { "type": "object", "description": "Job data payload" }, "timestamp": { "type": "number", "description": "Timestamp when the job was created" }, "progress": { "description": "Job progress", "oneOf": [ { "type": "number", "example": 50 }, { "type": "string", "example": "50%" }, { "type": "boolean", "example": false }, { "type": "object", "example": { "current": 5, "total": 10 } } ] }, "processedOn": { "type": "number", "description": "Timestamp when job processing started" }, "finishedOn": { "type": "number", "description": "Timestamp when job finished" }, "failedReason": { "type": "string", "description": "Reason for job failure" }, "returnValue": { "type": "object", "description": "Job return value" } }, "required": [ "id", "name", "data", "timestamp", "progress", "processedOn", "finishedOn", "failedReason", "returnValue" ] }, "JobStatusErrorDto": { "type": "object", "properties": { "error": { "type": "string", "description": "Error message" } }, "required": ["error"] }, "TransactionDataDto": { "type": "object", "properties": { "data": { "type": "string", "description": "Hexadecimal value" }, "to": { "type": "string", "description": "The target Ethereum address" } }, "required": ["data"] }, "BaseDataDecoded": { "type": "object", "properties": { "method": { "type": "string" }, "parameters": { "type": "array", "items": { "$ref": "#/components/schemas/DataDecodedParameter" } } }, "required": ["method"] }, "MultiSend": { "type": "object", "properties": { "operation": { "type": "number", "enum": [0, 1] }, "value": { "type": "string" }, "dataDecoded": { "$ref": "#/components/schemas/BaseDataDecoded" }, "to": { "type": "string" }, "data": { "type": "object" } }, "required": ["operation", "value", "to"] }, "DataDecodedParameter": { "type": "object", "properties": { "name": { "type": "string" }, "type": { "type": "string" }, "value": { "type": "object" }, "valueDecoded": { "oneOf": [ { "$ref": "#/components/schemas/BaseDataDecoded" }, { "type": "array", "items": { "$ref": "#/components/schemas/MultiSend" } }, { "type": "null" } ] } }, "required": ["name", "type", "value"] }, "DataDecoded": { "type": "object", "properties": { "method": { "type": "string" }, "parameters": { "nullable": true, "type": "array", "items": { "$ref": "#/components/schemas/DataDecodedParameter" } }, "accuracy": { "type": "string", "enum": ["FULL_MATCH", "PARTIAL_MATCH", "ONLY_FUNCTION_MATCH", "NO_MATCH", "UNKNOWN"], "default": "UNKNOWN" } }, "required": ["method"] }, "Delegate": { "type": "object", "properties": { "safe": { "type": "string", "nullable": true }, "delegate": { "type": "string" }, "delegator": { "type": "string" }, "label": { "type": "string" } }, "required": ["delegate", "delegator", "label"] }, "DelegatePage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/Delegate" } } }, "required": ["results"] }, "CreateDelegateDto": { "type": "object", "properties": { "safe": { "type": "string", "nullable": true }, "delegate": { "type": "string" }, "delegator": { "type": "string" }, "signature": { "type": "string" }, "label": { "type": "string" } }, "required": ["delegate", "delegator", "signature", "label"] }, "DeleteDelegateDto": { "type": "object", "properties": { "delegate": { "type": "string" }, "delegator": { "type": "string" }, "signature": { "type": "string" } }, "required": ["delegate", "delegator", "signature"] }, "DeleteSafeDelegateDto": { "type": "object", "properties": { "delegate": { "type": "string" }, "safe": { "type": "string" }, "signature": { "type": "string" } }, "required": ["delegate", "safe", "signature"] }, "DeleteDelegateV2Dto": { "type": "object", "properties": { "delegator": { "type": "string", "nullable": true }, "safe": { "type": "string", "nullable": true }, "signature": { "type": "string" } }, "required": ["signature"] }, "AddRecoveryModuleDto": { "type": "object", "properties": { "moduleAddress": { "type": "string" } }, "required": ["moduleAddress"] }, "GetEstimationDto": { "type": "object", "properties": { "to": { "type": "string" }, "value": { "type": "string" }, "data": { "type": "string", "nullable": true }, "operation": { "type": "number" } }, "required": ["to", "value", "operation"] }, "EstimationResponse": { "type": "object", "properties": { "currentNonce": { "type": "number" }, "recommendedNonce": { "type": "number" }, "safeTxGas": { "type": "string" } }, "required": ["currentNonce", "recommendedNonce", "safeTxGas"] }, "NotificationType": { "type": "string", "enum": [ "CONFIRMATION_REQUEST", "DELETED_MULTISIG_TRANSACTION", "EXECUTED_MULTISIG_TRANSACTION", "INCOMING_ETHER", "INCOMING_TOKEN", "MESSAGE_CONFIRMATION_REQUEST", "MODULE_TRANSACTION" ] }, "UpsertSubscriptionsSafesDto": { "type": "object", "properties": { "chainId": { "type": "string" }, "address": { "type": "string" }, "notificationTypes": { "type": "array", "items": { "$ref": "#/components/schemas/NotificationType" } } }, "required": ["chainId", "address", "notificationTypes"] }, "DeviceType": { "type": "string", "enum": ["ANDROID", "IOS", "WEB"] }, "UpsertSubscriptionsDto": { "type": "object", "properties": { "cloudMessagingToken": { "type": "string" }, "safes": { "type": "array", "items": { "$ref": "#/components/schemas/UpsertSubscriptionsSafesDto" } }, "deviceType": { "allOf": [ { "$ref": "#/components/schemas/DeviceType" } ] }, "deviceUuid": { "type": "string", "nullable": true } }, "required": ["cloudMessagingToken", "safes", "deviceType"] }, "DeleteAllSubscriptionItemDto": { "type": "object", "properties": { "chainId": { "type": "string" }, "deviceUuid": { "type": "string" }, "safeAddress": { "type": "string" }, "signerAddress": { "type": "string", "nullable": true, "description": "Optional signer address filter:\n• Omitted (undefined): Deletes subscriptions regardless of signer address\n• null: Deletes only subscriptions with no signer address\n• Valid address: Deletes only subscriptions with that specific signer address", "example": "0x1234567890123456789012345678901234567890" } }, "required": ["chainId", "deviceUuid", "safeAddress"] }, "DeleteAllSubscriptionsDto": { "type": "object", "properties": { "subscriptions": { "minItems": 1, "description": "At least one subscription is required", "type": "array", "items": { "$ref": "#/components/schemas/DeleteAllSubscriptionItemDto" } } }, "required": ["subscriptions"] }, "TypedDataParameter": { "type": "object", "properties": { "name": { "type": "string" }, "type": { "type": "string" } }, "required": ["name", "type"] }, "TypedDataDomain": { "type": "object", "properties": { "chainId": { "type": "number" }, "name": { "type": "string" }, "salt": { "type": "string" }, "verifyingContract": { "type": "string" }, "version": { "type": "string" } } }, "TypedData": { "type": "object", "properties": { "domain": { "$ref": "#/components/schemas/TypedDataDomain" }, "primaryType": { "type": "string" }, "types": { "type": "object", "additionalProperties": { "items": { "$ref": "#/components/schemas/TypedDataParameter" }, "type": "array" } }, "message": { "type": "object", "additionalProperties": true } }, "required": ["domain", "primaryType", "types", "message"] }, "AddressInfo": { "type": "object", "properties": { "value": { "type": "string" }, "name": { "type": "string", "nullable": true }, "logoUri": { "type": "string", "nullable": true } }, "required": ["value"] }, "MessageConfirmation": { "type": "object", "properties": { "owner": { "$ref": "#/components/schemas/AddressInfo" }, "signature": { "type": "string" } }, "required": ["owner", "signature"] }, "Message": { "type": "object", "properties": { "messageHash": { "type": "string" }, "status": { "type": "string", "enum": ["NEEDS_CONFIRMATION", "CONFIRMED"] }, "logoUri": { "type": "string", "nullable": true }, "name": { "type": "string", "nullable": true }, "message": { "oneOf": [ { "type": "string" }, { "$ref": "#/components/schemas/TypedData" } ] }, "creationTimestamp": { "type": "number" }, "modifiedTimestamp": { "type": "number" }, "confirmationsSubmitted": { "type": "number" }, "confirmationsRequired": { "type": "number" }, "proposedBy": { "$ref": "#/components/schemas/AddressInfo" }, "confirmations": { "type": "array", "items": { "$ref": "#/components/schemas/MessageConfirmation" } }, "preparedSignature": { "type": "string", "nullable": true }, "origin": { "type": "string", "nullable": true } }, "required": [ "messageHash", "status", "message", "creationTimestamp", "modifiedTimestamp", "confirmationsSubmitted", "confirmationsRequired", "proposedBy", "confirmations" ] }, "MessageItem": { "type": "object", "properties": { "messageHash": { "type": "string" }, "status": { "type": "string", "enum": ["NEEDS_CONFIRMATION", "CONFIRMED"] }, "logoUri": { "type": "string", "nullable": true }, "name": { "type": "string", "nullable": true }, "message": { "oneOf": [ { "type": "string" }, { "$ref": "#/components/schemas/TypedData" } ] }, "creationTimestamp": { "type": "number" }, "modifiedTimestamp": { "type": "number" }, "confirmationsSubmitted": { "type": "number" }, "confirmationsRequired": { "type": "number" }, "proposedBy": { "$ref": "#/components/schemas/AddressInfo" }, "confirmations": { "type": "array", "items": { "$ref": "#/components/schemas/MessageConfirmation" } }, "preparedSignature": { "type": "string", "nullable": true }, "origin": { "type": "string", "nullable": true }, "type": { "type": "string", "enum": ["MESSAGE"] } }, "required": [ "messageHash", "status", "message", "creationTimestamp", "modifiedTimestamp", "confirmationsSubmitted", "confirmationsRequired", "proposedBy", "confirmations", "type" ] }, "DateLabel": { "type": "object", "properties": { "type": { "type": "string", "enum": ["DATE_LABEL"] }, "timestamp": { "type": "number" } }, "required": ["type", "timestamp"] }, "MessagePage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/MessageItem" }, { "$ref": "#/components/schemas/DateLabel" } ] } } }, "required": ["results"] }, "CreateMessageDto": { "type": "object", "properties": { "message": { "oneOf": [ { "type": "string" }, { "$ref": "#/components/schemas/TypedData" } ] }, "safeAppId": { "type": "number", "nullable": true, "deprecated": true }, "signature": { "type": "string" }, "origin": { "type": "string", "nullable": true } }, "required": ["message", "signature"] }, "UpdateMessageSignatureDto": { "type": "object", "properties": { "signature": { "type": "string" } }, "required": ["signature"] }, "SafeRegistration": { "type": "object", "properties": { "chainId": { "type": "string" }, "safes": { "type": "array", "items": { "type": "string" } }, "signatures": { "type": "array", "items": { "type": "string" } } }, "required": ["chainId", "safes", "signatures"] }, "RegisterDeviceDto": { "type": "object", "properties": { "uuid": { "type": "string", "nullable": true }, "cloudMessagingToken": { "type": "string" }, "buildNumber": { "type": "string" }, "bundle": { "type": "string" }, "deviceType": { "type": "string" }, "version": { "type": "string" }, "timestamp": { "type": "string", "nullable": true }, "safeRegistrations": { "type": "array", "items": { "$ref": "#/components/schemas/SafeRegistration" } } }, "required": ["cloudMessagingToken", "buildNumber", "bundle", "deviceType", "version", "safeRegistrations"] }, "UserWallet": { "type": "object", "properties": { "id": { "type": "number" }, "address": { "type": "string" } }, "required": ["id", "address"] }, "UserWithWallets": { "type": "object", "properties": { "id": { "type": "number" }, "status": { "type": "number", "enum": [0, 1] }, "wallets": { "type": "array", "items": { "$ref": "#/components/schemas/UserWallet" } } }, "required": ["id", "status", "wallets"] }, "CreatedUserWithWallet": { "type": "object", "properties": { "id": { "type": "number" } }, "required": ["id"] }, "WalletAddedToUser": { "type": "object", "properties": { "id": { "type": "number" } }, "required": ["id"] }, "SpaceAddressBookItemDto": { "type": "object", "properties": { "name": { "type": "string" }, "address": { "type": "string" }, "chainIds": { "type": "array", "items": { "type": "string" } }, "createdBy": { "type": "string" }, "lastUpdatedBy": { "type": "string" } }, "required": ["name", "address", "chainIds", "createdBy", "lastUpdatedBy"] }, "SpaceAddressBookDto": { "type": "object", "properties": { "spaceId": { "type": "string" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/SpaceAddressBookItemDto" } } }, "required": ["spaceId", "data"] }, "UpsertAddressBookItemsDto": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/AddressBookItem" } } }, "required": ["items"] }, "CreateSpaceDto": { "type": "object", "properties": { "name": { "type": "string" } }, "required": ["name"] }, "CreateSpaceResponse": { "type": "object", "properties": { "name": { "type": "string" }, "id": { "type": "number" } }, "required": ["name", "id"] }, "UserDto": { "type": "object", "properties": { "id": { "type": "number" }, "status": { "type": "string", "enum": ["PENDING", "ACTIVE"] } }, "required": ["id", "status"] }, "MemberDto": { "type": "object", "properties": { "id": { "type": "number" }, "role": { "type": "string", "enum": ["ADMIN", "MEMBER"] }, "name": { "type": "string" }, "invitedBy": { "type": "string" }, "status": { "type": "string", "enum": ["INVITED", "ACTIVE", "DECLINED"] }, "createdAt": { "format": "date-time", "type": "string" }, "updatedAt": { "format": "date-time", "type": "string" }, "user": { "$ref": "#/components/schemas/UserDto" } }, "required": ["id", "role", "name", "invitedBy", "status", "createdAt", "updatedAt", "user"] }, "GetSpaceResponse": { "type": "object", "properties": { "id": { "type": "number" }, "name": { "type": "string" }, "status": { "type": "string", "enum": ["ACTIVE"] }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/MemberDto" } } }, "required": ["id", "name", "status", "members"] }, "UpdateSpaceDto": { "type": "object", "properties": { "name": { "type": "string" }, "status": { "type": "string", "enum": ["ACTIVE"] } } }, "UpdateSpaceResponse": { "type": "object", "properties": { "id": { "type": "number" } }, "required": ["id"] }, "CreateSpaceSafeDto": { "type": "object", "properties": { "chainId": { "type": "string" }, "address": { "type": "string" } }, "required": ["chainId", "address"] }, "CreateSpaceSafesDto": { "type": "object", "properties": { "safes": { "type": "array", "items": { "$ref": "#/components/schemas/CreateSpaceSafeDto" } } }, "required": ["safes"] }, "GetSpaceSafeResponse": { "type": "object", "properties": { "safes": { "type": "object", "additionalProperties": { "type": "array", "items": { "type": "string" } }, "example": { "{chainId}": ["0x..."] } } }, "required": ["safes"] }, "DeleteSpaceSafeDto": { "type": "object", "properties": { "chainId": { "type": "string" }, "address": { "type": "string" } }, "required": ["chainId", "address"] }, "DeleteSpaceSafesDto": { "type": "object", "properties": { "safes": { "type": "array", "items": { "$ref": "#/components/schemas/DeleteSpaceSafeDto" } } }, "required": ["safes"] }, "InviteUserDto": { "type": "object", "properties": { "address": { "type": "string" }, "name": { "type": "string", "minLength": 3, "maxLength": 30 }, "role": { "type": "string", "enum": ["ADMIN", "MEMBER"] } }, "required": ["address", "name", "role"] }, "InviteUsersDto": { "type": "object", "properties": { "users": { "type": "array", "items": { "$ref": "#/components/schemas/InviteUserDto" } } }, "required": ["users"] }, "Invitation": { "type": "object", "properties": { "userId": { "type": "number" }, "name": { "type": "string" }, "spaceId": { "type": "number" }, "role": { "type": "string", "enum": ["ADMIN", "MEMBER"] }, "status": { "type": "string", "enum": ["INVITED", "ACTIVE", "DECLINED"] }, "invitedBy": { "type": "string", "nullable": true } }, "required": ["userId", "name", "spaceId", "role", "status"] }, "AcceptInviteDto": { "type": "object", "properties": { "name": { "type": "string", "minLength": 3, "maxLength": 30 } }, "required": ["name"] }, "MemberUser": { "type": "object", "properties": { "id": { "type": "number" }, "status": { "type": "string", "enum": ["PENDING", "ACTIVE"] } }, "required": ["id", "status"] }, "Member": { "type": "object", "properties": { "id": { "type": "number" }, "role": { "type": "string", "enum": ["ADMIN", "MEMBER"] }, "status": { "type": "string", "enum": ["INVITED", "ACTIVE", "DECLINED"] }, "name": { "type": "string" }, "alias": { "type": "string", "nullable": true }, "invitedBy": { "type": "string", "nullable": true }, "createdAt": { "format": "date-time", "type": "string" }, "updatedAt": { "format": "date-time", "type": "string" }, "user": { "$ref": "#/components/schemas/MemberUser" } }, "required": ["id", "role", "status", "name", "createdAt", "updatedAt", "user"] }, "MembersDto": { "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/Member" } } }, "required": ["members"] }, "UpdateRoleDto": { "type": "object", "properties": { "role": { "type": "string", "enum": ["ADMIN", "MEMBER"] } }, "required": ["role"] }, "UpdateMemberAliasDto": { "type": "object", "properties": { "alias": { "type": "string", "description": "The new alias for the member" } }, "required": ["alias"] }, "SafeList": { "type": "object", "properties": { "safes": { "type": "array", "items": { "type": "string" } } }, "required": ["safes"] }, "RelayDto": { "type": "object", "properties": { "version": { "type": "string" }, "to": { "type": "string" }, "data": { "type": "string" }, "gasLimit": { "type": "string", "nullable": true, "description": "If specified, a gas buffer of 150k will be added on top of the expected gas usage for the transaction.\n This is for the \n Gelato Relay execution overhead, reducing the chance of the task cancelling before it is executed on-chain." } }, "required": ["version", "to", "data"] }, "Relay": { "type": "object", "properties": { "taskId": { "type": "string" } }, "required": ["taskId"] }, "RelaysRemaining": { "type": "object", "properties": { "remaining": { "type": "number" }, "limit": { "type": "number" } }, "required": ["remaining", "limit"] }, "SafeAppProvider": { "type": "object", "properties": { "url": { "type": "string" }, "name": { "type": "string" } }, "required": ["url", "name"] }, "SafeAppAccessControl": { "type": "object", "properties": { "type": { "type": "string" }, "value": { "nullable": true, "type": "array", "items": { "type": "string" } } }, "required": ["type"] }, "SafeAppSocialProfile": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["DISCORD", "GITHUB", "TWITTER", "TELEGRAM", "UNKNOWN"] }, "url": { "type": "string" } }, "required": ["platform", "url"] }, "SafeApp": { "type": "object", "properties": { "id": { "type": "number" }, "url": { "type": "string" }, "name": { "type": "string" }, "iconUrl": { "type": "string", "nullable": true }, "description": { "type": "string" }, "chainIds": { "type": "array", "items": { "type": "string" } }, "provider": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/SafeAppProvider" } ] }, "accessControl": { "$ref": "#/components/schemas/SafeAppAccessControl" }, "tags": { "type": "array", "items": { "type": "string" } }, "features": { "type": "array", "items": { "type": "string" } }, "developerWebsite": { "type": "string", "nullable": true }, "socialProfiles": { "type": "array", "items": { "$ref": "#/components/schemas/SafeAppSocialProfile" } }, "featured": { "type": "boolean" } }, "required": [ "id", "url", "name", "description", "chainIds", "accessControl", "tags", "features", "socialProfiles", "featured" ] }, "SafeState": { "type": "object", "properties": { "address": { "$ref": "#/components/schemas/AddressInfo" }, "chainId": { "type": "string" }, "nonce": { "type": "number" }, "threshold": { "type": "number" }, "owners": { "type": "array", "items": { "$ref": "#/components/schemas/AddressInfo" } }, "implementation": { "$ref": "#/components/schemas/AddressInfo" }, "modules": { "nullable": true, "type": "array", "items": { "$ref": "#/components/schemas/AddressInfo" } }, "fallbackHandler": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/AddressInfo" } ] }, "guard": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/AddressInfo" } ] }, "version": { "type": "string", "nullable": true }, "implementationVersionState": { "type": "string", "enum": ["UP_TO_DATE", "OUTDATED", "UNKNOWN"] }, "collectiblesTag": { "type": "string", "nullable": true }, "txQueuedTag": { "type": "string", "nullable": true }, "txHistoryTag": { "type": "string", "nullable": true }, "messagesTag": { "type": "string", "nullable": true } }, "required": [ "address", "chainId", "nonce", "threshold", "owners", "implementation", "implementationVersionState" ] }, "SafeNonces": { "type": "object", "properties": { "currentNonce": { "type": "number" }, "recommendedNonce": { "type": "number" } }, "required": ["currentNonce", "recommendedNonce"] }, "SafeOverview": { "type": "object", "properties": { "address": { "$ref": "#/components/schemas/AddressInfo" }, "chainId": { "type": "string" }, "threshold": { "type": "number" }, "owners": { "type": "array", "items": { "$ref": "#/components/schemas/AddressInfo" } }, "fiatTotal": { "type": "string" }, "queued": { "type": "number" }, "awaitingConfirmation": { "type": "number", "nullable": true } }, "required": ["address", "chainId", "threshold", "owners", "fiatTotal", "queued"] }, "TargetedSafe": { "type": "object", "properties": { "outreachId": { "type": "number" }, "address": { "type": "string" } }, "required": ["outreachId", "address"] }, "Submission": { "type": "object", "properties": { "outreachId": { "type": "number" }, "targetedSafeId": { "type": "number" }, "signerAddress": { "type": "string" }, "completionDate": { "format": "date-time", "type": "string", "nullable": true } }, "required": ["outreachId", "targetedSafeId", "signerAddress"] }, "CreateSubmissionDto": { "type": "object", "properties": { "completed": { "type": "boolean" } }, "required": ["completed"] }, "TransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "Bridge", "Creation", "Custom", "NativeStakingDeposit", "NativeStakingValidatorsExit", "NativeStakingWithdraw", "SettingsChange", "Swap", "SwapAndBridge", "SwapOrder", "SwapTransfer", "Transfer", "TwapOrder", "VaultDeposit", "VaultRedeem" ] }, "humanDescription": { "type": "string", "nullable": true } }, "required": ["type"] }, "CreationTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["Creation"] }, "humanDescription": { "type": "string", "nullable": true }, "creator": { "$ref": "#/components/schemas/AddressInfo" }, "transactionHash": { "type": "string" }, "implementation": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/AddressInfo" } ] }, "factory": { "$ref": "#/components/schemas/AddressInfo" }, "saltNonce": { "type": "string", "nullable": true } }, "required": ["type", "creator", "transactionHash"] }, "CustomTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["Custom"] }, "humanDescription": { "type": "string", "nullable": true }, "to": { "$ref": "#/components/schemas/AddressInfo" }, "dataSize": { "type": "string" }, "value": { "type": "string", "nullable": true }, "isCancellation": { "type": "boolean" }, "methodName": { "type": "string", "nullable": true }, "actionCount": { "type": "number", "nullable": true } }, "required": ["type", "to", "dataSize", "isCancellation"] }, "AddOwner": { "type": "object", "properties": { "type": { "type": "string", "enum": ["ADD_OWNER"] }, "owner": { "$ref": "#/components/schemas/AddressInfo" }, "threshold": { "type": "number" } }, "required": ["type", "owner", "threshold"] }, "ChangeMasterCopy": { "type": "object", "properties": { "type": { "type": "string", "enum": ["CHANGE_MASTER_COPY"] }, "implementation": { "$ref": "#/components/schemas/AddressInfo" } }, "required": ["type", "implementation"] }, "ChangeThreshold": { "type": "object", "properties": { "type": { "type": "string", "enum": ["CHANGE_THRESHOLD"] }, "threshold": { "type": "number" } }, "required": ["type", "threshold"] }, "DeleteGuard": { "type": "object", "properties": { "type": { "type": "string", "enum": ["DELETE_GUARD"] } }, "required": ["type"] }, "DisableModule": { "type": "object", "properties": { "type": { "type": "string", "enum": ["DISABLE_MODULE"] }, "module": { "$ref": "#/components/schemas/AddressInfo" } }, "required": ["type", "module"] }, "EnableModule": { "type": "object", "properties": { "type": { "type": "string", "enum": ["ENABLE_MODULE"] }, "module": { "$ref": "#/components/schemas/AddressInfo" } }, "required": ["type", "module"] }, "RemoveOwner": { "type": "object", "properties": { "type": { "type": "string", "enum": ["REMOVE_OWNER"] }, "owner": { "$ref": "#/components/schemas/AddressInfo" }, "threshold": { "type": "number" } }, "required": ["type", "owner", "threshold"] }, "SetFallbackHandler": { "type": "object", "properties": { "type": { "type": "string", "enum": ["SET_FALLBACK_HANDLER"] }, "handler": { "$ref": "#/components/schemas/AddressInfo" } }, "required": ["type", "handler"] }, "SetGuard": { "type": "object", "properties": { "type": { "type": "string", "enum": ["SET_GUARD"] }, "guard": { "$ref": "#/components/schemas/AddressInfo" } }, "required": ["type", "guard"] }, "SettingsChange": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "ADD_OWNER", "CHANGE_MASTER_COPY", "CHANGE_THRESHOLD", "DELETE_GUARD", "DISABLE_MODULE", "ENABLE_MODULE", "REMOVE_OWNER", "SET_FALLBACK_HANDLER", "SET_GUARD", "SWAP_OWNER" ] } }, "required": ["type"] }, "SwapOwner": { "type": "object", "properties": { "type": { "type": "string", "enum": ["SWAP_OWNER"] }, "oldOwner": { "$ref": "#/components/schemas/AddressInfo" }, "newOwner": { "$ref": "#/components/schemas/AddressInfo" } }, "required": ["type", "oldOwner", "newOwner"] }, "SettingsChangeTransaction": { "type": "object", "properties": { "type": { "type": "string", "enum": ["SettingsChange"] }, "humanDescription": { "type": "string", "nullable": true }, "dataDecoded": { "$ref": "#/components/schemas/DataDecoded" }, "settingsInfo": { "oneOf": [ { "$ref": "#/components/schemas/AddOwner" }, { "$ref": "#/components/schemas/ChangeMasterCopy" }, { "$ref": "#/components/schemas/ChangeThreshold" }, { "$ref": "#/components/schemas/DeleteGuard" }, { "$ref": "#/components/schemas/DisableModule" }, { "$ref": "#/components/schemas/EnableModule" }, { "$ref": "#/components/schemas/RemoveOwner" }, { "$ref": "#/components/schemas/SetFallbackHandler" }, { "$ref": "#/components/schemas/SetGuard" }, { "$ref": "#/components/schemas/SwapOwner" } ] } }, "required": ["type", "dataDecoded", "settingsInfo"] }, "Erc20Transfer": { "type": "object", "properties": { "type": { "type": "string", "enum": ["ERC20"] }, "tokenAddress": { "type": "string" }, "value": { "type": "string" }, "tokenName": { "type": "string", "nullable": true }, "tokenSymbol": { "type": "string", "nullable": true }, "logoUri": { "type": "string", "nullable": true }, "decimals": { "type": "number", "nullable": true }, "trusted": { "type": "boolean", "nullable": true }, "imitation": { "type": "boolean" } }, "required": ["type", "tokenAddress", "value", "imitation"] }, "Erc721Transfer": { "type": "object", "properties": { "type": { "type": "string", "enum": ["ERC721"] }, "tokenAddress": { "type": "string" }, "tokenId": { "type": "string" }, "tokenName": { "type": "string", "nullable": true }, "tokenSymbol": { "type": "string", "nullable": true }, "logoUri": { "type": "string", "nullable": true }, "trusted": { "type": "boolean", "nullable": true } }, "required": ["type", "tokenAddress", "tokenId"] }, "NativeCoinTransfer": { "type": "object", "properties": { "type": { "type": "string", "enum": ["NATIVE_COIN"] }, "value": { "type": "string", "nullable": true } }, "required": ["type"] }, "Transfer": { "type": "object", "properties": { "type": { "type": "string", "enum": ["NATIVE_COIN", "ERC20", "ERC721"] } }, "required": ["type"] }, "TransferTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["Transfer"] }, "humanDescription": { "type": "string", "nullable": true }, "sender": { "$ref": "#/components/schemas/AddressInfo" }, "recipient": { "$ref": "#/components/schemas/AddressInfo" }, "direction": { "type": "string", "enum": ["INCOMING", "OUTGOING", "UNKNOWN"] }, "transferInfo": { "oneOf": [ { "$ref": "#/components/schemas/Erc20Transfer" }, { "$ref": "#/components/schemas/Erc721Transfer" }, { "$ref": "#/components/schemas/NativeCoinTransfer" } ], "allOf": [ { "$ref": "#/components/schemas/Transfer" } ] } }, "required": ["type", "sender", "recipient", "direction", "transferInfo"] }, "BridgeFee": { "type": "object", "properties": { "tokenAddress": { "type": "string" }, "integratorFee": { "type": "string" }, "lifiFee": { "type": "string" } }, "required": ["tokenAddress", "integratorFee", "lifiFee"] }, "TokenInfo": { "type": "object", "properties": { "address": { "type": "string", "description": "The token address" }, "decimals": { "type": "number", "description": "The token decimals" }, "logoUri": { "type": "string", "nullable": true, "description": "The logo URI for the token" }, "name": { "type": "string", "description": "The token name" }, "symbol": { "type": "string", "description": "The token symbol" }, "trusted": { "type": "boolean", "description": "The token trusted status" } }, "required": ["address", "decimals", "name", "symbol", "trusted"] }, "BridgeAndSwapTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["SwapAndBridge"] }, "humanDescription": { "type": "string", "nullable": true }, "fromToken": { "$ref": "#/components/schemas/TokenInfo" }, "recipient": { "$ref": "#/components/schemas/AddressInfo" }, "explorerUrl": { "type": "string", "nullable": true }, "status": { "type": "string", "enum": ["NOT_FOUND", "INVALID", "PENDING", "DONE", "FAILED", "UNKNOWN", "AWAITING_EXECUTION"] }, "substatus": { "type": "string", "enum": [ "WAIT_SOURCE_CONFIRMATIONS", "WAIT_DESTINATION_TRANSACTION", "BRIDGE_NOT_AVAILABLE", "CHAIN_NOT_AVAILABLE", "REFUND_IN_PROGRESS", "UNKNOWN_ERROR", "COMPLETED", "PARTIAL", "REFUNDED", "INSUFFICIENT_ALLOWANCE", "INSUFFICIENT_BALANCE", "OUT_OF_GAS", "EXPIRED", "SLIPPAGE_EXCEEDED", "UNKNOWN_FAILED_ERROR", "UNKNOWN", "AWAITING_EXECUTION" ] }, "fees": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/BridgeFee" } ] }, "fromAmount": { "type": "string" }, "toChain": { "type": "string" }, "toToken": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/TokenInfo" } ] }, "toAmount": { "type": "string", "nullable": true } }, "required": [ "type", "fromToken", "recipient", "explorerUrl", "status", "substatus", "fees", "fromAmount", "toChain", "toToken", "toAmount" ] }, "SwapOrderTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["SwapOrder"] }, "humanDescription": { "type": "string", "nullable": true }, "uid": { "type": "string", "description": "The order UID" }, "status": { "type": "string", "enum": ["presignaturePending", "open", "fulfilled", "cancelled", "expired", "unknown"] }, "kind": { "type": "string", "enum": ["buy", "sell", "unknown"] }, "orderClass": { "type": "string", "enum": ["market", "limit", "liquidity", "unknown"] }, "validUntil": { "type": "number", "description": "The timestamp when the order expires" }, "sellAmount": { "type": "string", "description": "The sell token raw amount (no decimals)" }, "buyAmount": { "type": "string", "description": "The buy token raw amount (no decimals)" }, "executedSellAmount": { "type": "string", "description": "The executed sell token raw amount (no decimals)" }, "executedBuyAmount": { "type": "string", "description": "The executed buy token raw amount (no decimals)" }, "sellToken": { "description": "The sell token of the order", "allOf": [ { "$ref": "#/components/schemas/TokenInfo" } ] }, "buyToken": { "description": "The buy token of the order", "allOf": [ { "$ref": "#/components/schemas/TokenInfo" } ] }, "explorerUrl": { "type": "string", "description": "The URL to the explorer page of the order" }, "executedFee": { "type": "string", "description": "The amount of fees paid for this order." }, "executedFeeToken": { "type": "string", "description": "The token in which the fee was paid, expressed by SURPLUS tokens (BUY tokens for SELL orders and SELL tokens for BUY orders)." }, "receiver": { "type": "string", "nullable": true, "description": "The (optional) address to receive the proceeds of the trade" }, "owner": { "type": "string" }, "fullAppData": { "type": "object", "nullable": true, "description": "The App Data for this order" } }, "required": [ "type", "uid", "status", "kind", "orderClass", "validUntil", "sellAmount", "buyAmount", "executedSellAmount", "executedBuyAmount", "sellToken", "buyToken", "explorerUrl", "executedFee", "executedFeeToken", "owner" ] }, "SwapTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["Swap"] }, "humanDescription": { "type": "string", "nullable": true }, "recipient": { "$ref": "#/components/schemas/AddressInfo" }, "fees": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/BridgeFee" } ] }, "fromToken": { "$ref": "#/components/schemas/TokenInfo" }, "fromAmount": { "type": "string" }, "toToken": { "$ref": "#/components/schemas/TokenInfo" }, "toAmount": { "type": "string" }, "lifiExplorerUrl": { "type": "string", "nullable": true } }, "required": ["type", "recipient", "fees", "fromToken", "fromAmount", "toToken", "toAmount", "lifiExplorerUrl"] }, "SwapTransferTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["SwapTransfer"] }, "humanDescription": { "type": "string", "nullable": true }, "sender": { "$ref": "#/components/schemas/AddressInfo" }, "recipient": { "$ref": "#/components/schemas/AddressInfo" }, "direction": { "type": "string" }, "transferInfo": { "oneOf": [ { "$ref": "#/components/schemas/Erc20Transfer" }, { "$ref": "#/components/schemas/Erc721Transfer" }, { "$ref": "#/components/schemas/NativeCoinTransfer" } ], "allOf": [ { "$ref": "#/components/schemas/Transfer" } ] }, "uid": { "type": "string", "description": "The order UID" }, "status": { "type": "string", "enum": ["presignaturePending", "open", "fulfilled", "cancelled", "expired", "unknown"] }, "kind": { "type": "string", "enum": ["buy", "sell", "unknown"] }, "orderClass": { "type": "string", "enum": ["market", "limit", "liquidity", "unknown"] }, "validUntil": { "type": "number", "description": "The timestamp when the order expires" }, "sellAmount": { "type": "string", "description": "The sell token raw amount (no decimals)" }, "buyAmount": { "type": "string", "description": "The buy token raw amount (no decimals)" }, "executedSellAmount": { "type": "string", "description": "The executed sell token raw amount (no decimals)" }, "executedBuyAmount": { "type": "string", "description": "The executed buy token raw amount (no decimals)" }, "sellToken": { "description": "The sell token of the order", "allOf": [ { "$ref": "#/components/schemas/TokenInfo" } ] }, "buyToken": { "description": "The buy token of the order", "allOf": [ { "$ref": "#/components/schemas/TokenInfo" } ] }, "explorerUrl": { "type": "string", "description": "The URL to the explorer page of the order" }, "executedFee": { "type": "string", "description": "The amount of fees paid for this order." }, "executedFeeToken": { "description": "The token in which the fee was paid, expressed by SURPLUS tokens (BUY tokens for SELL orders and SELL tokens for BUY orders).", "allOf": [ { "$ref": "#/components/schemas/TokenInfo" } ] }, "receiver": { "type": "string", "nullable": true, "description": "The (optional) address to receive the proceeds of the trade" }, "owner": { "type": "string" }, "fullAppData": { "type": "object", "nullable": true, "description": "The App Data for this order" } }, "required": [ "type", "sender", "recipient", "direction", "transferInfo", "uid", "status", "kind", "orderClass", "validUntil", "sellAmount", "buyAmount", "executedSellAmount", "executedBuyAmount", "sellToken", "buyToken", "explorerUrl", "executedFee", "executedFeeToken", "owner" ] }, "DurationAuto": { "type": "object", "properties": { "durationType": { "type": "string", "enum": ["AUTO"] } }, "required": ["durationType"] }, "DurationLimit": { "type": "object", "properties": { "durationType": { "type": "string", "enum": ["LIMIT_DURATION"] }, "duration": { "type": "string" } }, "required": ["durationType", "duration"] }, "StartTimeAtMining": { "type": "object", "properties": { "startType": { "type": "string", "enum": ["AT_MINING_TIME"] } }, "required": ["startType"] }, "StartTimeAtEpoch": { "type": "object", "properties": { "startType": { "type": "string", "enum": ["AT_EPOCH"] }, "epoch": { "type": "number" } }, "required": ["startType", "epoch"] }, "TwapOrderTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["TwapOrder"] }, "humanDescription": { "type": "string", "nullable": true }, "status": { "type": "string", "description": "The TWAP status", "enum": ["presignaturePending", "open", "fulfilled", "cancelled", "expired", "unknown"] }, "kind": { "type": "string", "enum": ["buy", "sell", "unknown"] }, "class": { "type": "string", "enum": ["market", "limit", "liquidity", "unknown"] }, "activeOrderUid": { "type": "string", "nullable": true, "description": "The order UID of the active order, or null if none is active" }, "validUntil": { "type": "number", "description": "The timestamp when the TWAP expires" }, "sellAmount": { "type": "string", "description": "The sell token raw amount (no decimals)" }, "buyAmount": { "type": "string", "description": "The buy token raw amount (no decimals)" }, "executedSellAmount": { "type": "string", "nullable": true, "description": "The executed sell token raw amount (no decimals), or null if there are too many parts" }, "executedBuyAmount": { "type": "string", "nullable": true, "description": "The executed buy token raw amount (no decimals), or null if there are too many parts" }, "executedFee": { "type": "string", "nullable": true, "description": "The executed surplus fee raw amount (no decimals), or null if there are too many parts" }, "executedFeeToken": { "type": "string", "description": "The token in which the fee was paid, expressed by SURPLUS tokens (BUY tokens for SELL orders and SELL tokens for BUY orders)." }, "sellToken": { "description": "The sell token of the TWAP", "allOf": [ { "$ref": "#/components/schemas/TokenInfo" } ] }, "buyToken": { "description": "The buy token of the TWAP", "allOf": [ { "$ref": "#/components/schemas/TokenInfo" } ] }, "receiver": { "type": "string", "description": "The address to receive the proceeds of the trade" }, "owner": { "type": "string" }, "fullAppData": { "type": "object", "nullable": true, "description": "The App Data for this TWAP" }, "numberOfParts": { "type": "string", "description": "The number of parts in the TWAP" }, "partSellAmount": { "type": "string", "description": "The amount of sellToken to sell in each part" }, "minPartLimit": { "type": "string", "description": "The amount of buyToken that must be bought in each part" }, "timeBetweenParts": { "type": "number", "description": "The duration of the TWAP interval" }, "durationOfPart": { "description": "Whether the TWAP is valid for the entire interval or not", "oneOf": [ { "$ref": "#/components/schemas/DurationAuto" }, { "$ref": "#/components/schemas/DurationLimit" } ] }, "startTime": { "description": "The start time of the TWAP", "oneOf": [ { "$ref": "#/components/schemas/StartTimeAtMining" }, { "$ref": "#/components/schemas/StartTimeAtEpoch" } ] } }, "required": [ "type", "status", "kind", "validUntil", "sellAmount", "buyAmount", "executedFeeToken", "sellToken", "buyToken", "receiver", "owner", "numberOfParts", "partSellAmount", "minPartLimit", "timeBetweenParts", "durationOfPart", "startTime" ] }, "NativeStakingDepositTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["NativeStakingDeposit"] }, "humanDescription": { "type": "string", "nullable": true }, "status": { "type": "string", "enum": [ "NOT_STAKED", "ACTIVATING", "DEPOSIT_IN_PROGRESS", "ACTIVE", "EXIT_REQUESTED", "EXITING", "EXITED", "SLASHED" ] }, "estimatedEntryTime": { "type": "number" }, "estimatedExitTime": { "type": "number" }, "estimatedWithdrawalTime": { "type": "number" }, "fee": { "type": "number" }, "monthlyNrr": { "type": "number" }, "annualNrr": { "type": "number" }, "value": { "type": "string" }, "numValidators": { "type": "number" }, "expectedAnnualReward": { "type": "string" }, "expectedMonthlyReward": { "type": "string" }, "expectedFiatAnnualReward": { "type": "number" }, "expectedFiatMonthlyReward": { "type": "number" }, "tokenInfo": { "$ref": "#/components/schemas/TokenInfo" }, "validators": { "nullable": true, "description": "Populated after transaction has been executed", "type": "array", "items": { "type": "string" } } }, "required": [ "type", "status", "estimatedEntryTime", "estimatedExitTime", "estimatedWithdrawalTime", "fee", "monthlyNrr", "annualNrr", "value", "numValidators", "expectedAnnualReward", "expectedMonthlyReward", "expectedFiatAnnualReward", "expectedFiatMonthlyReward", "tokenInfo" ] }, "NativeStakingValidatorsExitTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["NativeStakingValidatorsExit"] }, "humanDescription": { "type": "string", "nullable": true }, "status": { "type": "string", "enum": [ "NOT_STAKED", "ACTIVATING", "DEPOSIT_IN_PROGRESS", "ACTIVE", "EXIT_REQUESTED", "EXITING", "EXITED", "SLASHED" ] }, "estimatedExitTime": { "type": "number" }, "estimatedWithdrawalTime": { "type": "number" }, "value": { "type": "string" }, "numValidators": { "type": "number" }, "tokenInfo": { "$ref": "#/components/schemas/TokenInfo" }, "validators": { "type": "array", "items": { "type": "string" } } }, "required": [ "type", "status", "estimatedExitTime", "estimatedWithdrawalTime", "value", "numValidators", "tokenInfo", "validators" ] }, "NativeStakingWithdrawTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["NativeStakingWithdraw"] }, "humanDescription": { "type": "string", "nullable": true }, "value": { "type": "string" }, "tokenInfo": { "$ref": "#/components/schemas/TokenInfo" }, "validators": { "type": "array", "items": { "type": "string" } } }, "required": ["type", "value", "tokenInfo", "validators"] }, "VaultInfo": { "type": "object", "properties": { "address": { "type": "string" }, "name": { "type": "string" }, "description": { "type": "string" }, "dashboardUri": { "type": "string", "nullable": true }, "logoUri": { "type": "string" } }, "required": ["address", "name", "description", "logoUri"] }, "VaultExtraReward": { "type": "object", "properties": { "tokenInfo": { "$ref": "#/components/schemas/TokenInfo" }, "nrr": { "type": "number" }, "claimable": { "type": "string" }, "claimableNext": { "type": "string" } }, "required": ["tokenInfo", "nrr", "claimable", "claimableNext"] }, "VaultDepositTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["VaultDeposit"] }, "humanDescription": { "type": "string", "nullable": true }, "value": { "type": "string" }, "baseNrr": { "type": "number" }, "fee": { "type": "number" }, "tokenInfo": { "$ref": "#/components/schemas/TokenInfo" }, "vaultInfo": { "$ref": "#/components/schemas/VaultInfo" }, "currentReward": { "type": "string" }, "additionalRewardsNrr": { "type": "number" }, "additionalRewards": { "type": "array", "items": { "$ref": "#/components/schemas/VaultExtraReward" } }, "expectedMonthlyReward": { "type": "string" }, "expectedAnnualReward": { "type": "string" } }, "required": [ "type", "value", "baseNrr", "fee", "tokenInfo", "vaultInfo", "currentReward", "additionalRewardsNrr", "additionalRewards", "expectedMonthlyReward", "expectedAnnualReward" ] }, "VaultRedeemTransactionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["VaultRedeem"] }, "humanDescription": { "type": "string", "nullable": true }, "value": { "type": "string" }, "baseNrr": { "type": "number" }, "fee": { "type": "number" }, "tokenInfo": { "$ref": "#/components/schemas/TokenInfo" }, "vaultInfo": { "$ref": "#/components/schemas/VaultInfo" }, "currentReward": { "type": "string" }, "additionalRewardsNrr": { "type": "number" }, "additionalRewards": { "type": "array", "items": { "$ref": "#/components/schemas/VaultExtraReward" } } }, "required": [ "type", "value", "baseNrr", "fee", "tokenInfo", "vaultInfo", "currentReward", "additionalRewardsNrr", "additionalRewards" ] }, "TransactionData": { "type": "object", "properties": { "hexData": { "type": "string", "nullable": true }, "dataDecoded": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/DataDecoded" } ] }, "to": { "$ref": "#/components/schemas/AddressInfo" }, "value": { "type": "string", "nullable": true }, "operation": { "type": "number" }, "trustedDelegateCallTarget": { "type": "boolean", "nullable": true }, "addressInfoIndex": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/AddressInfo" }, "nullable": true }, "tokenInfoIndex": { "type": "object", "additionalProperties": { "oneOf": [ { "$ref": "#/components/schemas/NativeToken" }, { "$ref": "#/components/schemas/Erc20Token" }, { "$ref": "#/components/schemas/Erc721Token" } ] }, "nullable": true } }, "required": ["to", "operation"] }, "MultisigConfirmationDetails": { "type": "object", "properties": { "signer": { "$ref": "#/components/schemas/AddressInfo" }, "signature": { "type": "string", "nullable": true }, "submittedAt": { "type": "number" } }, "required": ["signer", "submittedAt"] }, "MultisigExecutionDetails": { "type": "object", "properties": { "type": { "type": "string", "enum": ["MULTISIG"] }, "submittedAt": { "type": "number" }, "nonce": { "type": "number" }, "safeTxGas": { "type": "string" }, "baseGas": { "type": "string" }, "gasPrice": { "type": "string" }, "gasToken": { "type": "string" }, "refundReceiver": { "$ref": "#/components/schemas/AddressInfo" }, "safeTxHash": { "type": "string" }, "executor": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/AddressInfo" } ] }, "signers": { "type": "array", "items": { "$ref": "#/components/schemas/AddressInfo" } }, "confirmationsRequired": { "type": "number" }, "confirmations": { "type": "array", "items": { "$ref": "#/components/schemas/MultisigConfirmationDetails" } }, "rejectors": { "type": "array", "items": { "$ref": "#/components/schemas/AddressInfo" } }, "gasTokenInfo": { "oneOf": [ { "$ref": "#/components/schemas/NativeToken" }, { "$ref": "#/components/schemas/Erc20Token" }, { "$ref": "#/components/schemas/Erc721Token" } ], "nullable": true }, "trusted": { "type": "boolean" }, "proposer": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/AddressInfo" } ] }, "proposedByDelegate": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/AddressInfo" } ] } }, "required": [ "type", "submittedAt", "nonce", "safeTxGas", "baseGas", "gasPrice", "gasToken", "refundReceiver", "safeTxHash", "signers", "confirmationsRequired", "confirmations", "rejectors", "trusted" ] }, "ModuleExecutionDetails": { "type": "object", "properties": { "type": { "type": "string", "enum": ["MODULE"] }, "address": { "$ref": "#/components/schemas/AddressInfo" } }, "required": ["type", "address"] }, "SafeAppInfo": { "type": "object", "properties": { "name": { "type": "string" }, "url": { "type": "string" }, "logoUri": { "type": "string", "nullable": true } }, "required": ["name", "url"] }, "TransactionDetails": { "type": "object", "properties": { "txInfo": { "oneOf": [ { "$ref": "#/components/schemas/CreationTransactionInfo" }, { "$ref": "#/components/schemas/CustomTransactionInfo" }, { "$ref": "#/components/schemas/SettingsChangeTransaction" }, { "$ref": "#/components/schemas/TransferTransactionInfo" }, { "$ref": "#/components/schemas/SwapOrderTransactionInfo" }, { "$ref": "#/components/schemas/BridgeAndSwapTransactionInfo" }, { "$ref": "#/components/schemas/SwapTransactionInfo" }, { "$ref": "#/components/schemas/SwapTransferTransactionInfo" }, { "$ref": "#/components/schemas/TwapOrderTransactionInfo" }, { "$ref": "#/components/schemas/NativeStakingDepositTransactionInfo" }, { "$ref": "#/components/schemas/NativeStakingValidatorsExitTransactionInfo" }, { "$ref": "#/components/schemas/NativeStakingWithdrawTransactionInfo" }, { "$ref": "#/components/schemas/VaultDepositTransactionInfo" }, { "$ref": "#/components/schemas/VaultRedeemTransactionInfo" } ], "allOf": [ { "$ref": "#/components/schemas/TransactionInfo" } ] }, "safeAddress": { "type": "string" }, "txId": { "type": "string" }, "executedAt": { "type": "number", "nullable": true }, "txStatus": { "type": "string", "enum": ["SUCCESS", "FAILED", "CANCELLED", "AWAITING_CONFIRMATIONS", "AWAITING_EXECUTION"] }, "txData": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/TransactionData" } ] }, "detailedExecutionInfo": { "oneOf": [ { "$ref": "#/components/schemas/MultisigExecutionDetails" }, { "$ref": "#/components/schemas/ModuleExecutionDetails" } ], "nullable": true }, "txHash": { "type": "string", "nullable": true }, "safeAppInfo": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/SafeAppInfo" } ] }, "note": { "type": "string", "nullable": true } }, "required": ["txInfo", "safeAddress", "txId", "txStatus"] }, "TXSMultisigTransaction": { "type": "object", "properties": { "safe": { "type": "string" }, "to": { "type": "string" }, "value": { "type": "string" }, "data": { "type": "object" }, "operation": { "type": "number" }, "gasToken": { "type": "object" }, "safeTxGas": { "type": "object" }, "baseGas": { "type": "object" }, "gasPrice": { "type": "object" }, "proposer": { "type": "object" }, "proposedByDelegate": { "type": "object" }, "refundReceiver": { "type": "object" }, "nonce": { "type": "number" }, "executionDate": { "type": "object" }, "submissionDate": { "format": "date-time", "type": "string" }, "modified": { "type": "object" }, "blockNumber": { "type": "object" }, "transactionHash": { "type": "object" }, "safeTxHash": { "type": "string" }, "executor": { "type": "object" }, "isExecuted": { "type": "boolean" }, "isSuccessful": { "type": "object" }, "ethGasPrice": { "type": "object" }, "gasUsed": { "type": "object" }, "fee": { "type": "object" }, "origin": { "type": "object" }, "confirmationsRequired": { "type": "number" }, "confirmations": { "type": "object" }, "signatures": { "type": "object" }, "trusted": { "type": "boolean" } }, "required": [ "safe", "to", "value", "data", "operation", "gasToken", "safeTxGas", "baseGas", "gasPrice", "proposer", "proposedByDelegate", "refundReceiver", "nonce", "executionDate", "submissionDate", "modified", "blockNumber", "transactionHash", "safeTxHash", "executor", "isExecuted", "isSuccessful", "ethGasPrice", "gasUsed", "fee", "origin", "confirmationsRequired", "confirmations", "signatures", "trusted" ] }, "TXSMultisigTransactionPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/TXSMultisigTransaction" } } }, "required": ["results"] }, "ModuleExecutionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["MODULE"] }, "address": { "$ref": "#/components/schemas/AddressInfo" } }, "required": ["type", "address"] }, "MultisigExecutionInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["MULTISIG"] }, "nonce": { "type": "number" }, "confirmationsRequired": { "type": "number" }, "confirmationsSubmitted": { "type": "number" }, "missingSigners": { "nullable": true, "type": "array", "items": { "$ref": "#/components/schemas/AddressInfo" } } }, "required": ["type", "nonce", "confirmationsRequired", "confirmationsSubmitted"] }, "Transaction": { "type": "object", "properties": { "txInfo": { "oneOf": [ { "$ref": "#/components/schemas/CreationTransactionInfo" }, { "$ref": "#/components/schemas/CustomTransactionInfo" }, { "$ref": "#/components/schemas/SettingsChangeTransaction" }, { "$ref": "#/components/schemas/TransferTransactionInfo" }, { "$ref": "#/components/schemas/SwapOrderTransactionInfo" }, { "$ref": "#/components/schemas/BridgeAndSwapTransactionInfo" }, { "$ref": "#/components/schemas/SwapTransactionInfo" }, { "$ref": "#/components/schemas/SwapTransferTransactionInfo" }, { "$ref": "#/components/schemas/TwapOrderTransactionInfo" }, { "$ref": "#/components/schemas/NativeStakingDepositTransactionInfo" }, { "$ref": "#/components/schemas/NativeStakingValidatorsExitTransactionInfo" }, { "$ref": "#/components/schemas/NativeStakingWithdrawTransactionInfo" }, { "$ref": "#/components/schemas/VaultDepositTransactionInfo" }, { "$ref": "#/components/schemas/VaultRedeemTransactionInfo" } ], "allOf": [ { "$ref": "#/components/schemas/TransactionInfo" } ] }, "id": { "type": "string" }, "txHash": { "type": "string", "nullable": true }, "timestamp": { "type": "number" }, "txStatus": { "type": "string", "enum": ["SUCCESS", "FAILED", "CANCELLED", "AWAITING_CONFIRMATIONS", "AWAITING_EXECUTION"] }, "executionInfo": { "oneOf": [ { "$ref": "#/components/schemas/MultisigExecutionInfo" }, { "$ref": "#/components/schemas/ModuleExecutionInfo" } ], "nullable": true }, "safeAppInfo": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/SafeAppInfo" } ] } }, "required": ["txInfo", "id", "timestamp", "txStatus"] }, "MultisigTransaction": { "type": "object", "properties": { "type": { "type": "string", "enum": ["TRANSACTION"] }, "transaction": { "$ref": "#/components/schemas/Transaction" }, "conflictType": { "type": "string", "enum": ["None", "HasNext", "End"] } }, "required": ["type", "transaction", "conflictType"] }, "MultisigTransactionPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/MultisigTransaction" } } }, "required": ["results"] }, "DeleteTransactionDto": { "type": "object", "properties": { "signature": { "type": "string" } }, "required": ["signature"] }, "ModuleTransaction": { "type": "object", "properties": { "type": { "type": "string", "enum": ["TRANSACTION"] }, "transaction": { "$ref": "#/components/schemas/Transaction" }, "conflictType": { "type": "string", "enum": ["None"] } }, "required": ["type", "transaction", "conflictType"] }, "ModuleTransactionPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/ModuleTransaction" } } }, "required": ["results"] }, "AddConfirmationDto": { "type": "object", "properties": { "signature": { "type": "string" } }, "required": ["signature"] }, "IncomingTransfer": { "type": "object", "properties": { "type": { "type": "string", "enum": ["TRANSACTION"] }, "transaction": { "$ref": "#/components/schemas/Transaction" }, "conflictType": { "type": "string", "enum": ["None"] } }, "required": ["type", "transaction", "conflictType"] }, "IncomingTransferPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/IncomingTransfer" } } }, "required": ["results"] }, "PreviewTransactionDto": { "type": "object", "properties": { "to": { "type": "string" }, "data": { "type": "string", "nullable": true }, "value": { "type": "string" }, "operation": { "type": "number" } }, "required": ["to", "value", "operation"] }, "TransactionPreview": { "type": "object", "properties": { "txInfo": { "oneOf": [ { "$ref": "#/components/schemas/CreationTransactionInfo" }, { "$ref": "#/components/schemas/CustomTransactionInfo" }, { "$ref": "#/components/schemas/SettingsChangeTransaction" }, { "$ref": "#/components/schemas/TransferTransactionInfo" }, { "$ref": "#/components/schemas/SwapOrderTransactionInfo" }, { "$ref": "#/components/schemas/BridgeAndSwapTransactionInfo" }, { "$ref": "#/components/schemas/SwapTransactionInfo" }, { "$ref": "#/components/schemas/SwapTransferTransactionInfo" }, { "$ref": "#/components/schemas/TwapOrderTransactionInfo" }, { "$ref": "#/components/schemas/NativeStakingDepositTransactionInfo" }, { "$ref": "#/components/schemas/NativeStakingValidatorsExitTransactionInfo" }, { "$ref": "#/components/schemas/NativeStakingWithdrawTransactionInfo" }, { "$ref": "#/components/schemas/VaultDepositTransactionInfo" }, { "$ref": "#/components/schemas/VaultRedeemTransactionInfo" } ], "allOf": [ { "$ref": "#/components/schemas/TransactionInfo" } ] }, "txData": { "$ref": "#/components/schemas/TransactionData" } }, "required": ["txInfo", "txData"] }, "ConflictHeaderQueuedItem": { "type": "object", "properties": { "type": { "type": "string", "enum": ["CONFLICT_HEADER"] }, "nonce": { "type": "number" } }, "required": ["type", "nonce"] }, "LabelQueuedItem": { "type": "object", "properties": { "type": { "type": "string", "enum": ["LABEL"] }, "label": { "type": "string" } }, "required": ["type", "label"] }, "TransactionQueuedItem": { "type": "object", "properties": { "type": { "type": "string", "enum": ["TRANSACTION"] }, "transaction": { "$ref": "#/components/schemas/Transaction" }, "conflictType": { "type": "string", "enum": ["None", "HasNext", "End"] } }, "required": ["type", "transaction", "conflictType"] }, "QueuedItemPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/ConflictHeaderQueuedItem" }, { "$ref": "#/components/schemas/LabelQueuedItem" }, { "$ref": "#/components/schemas/TransactionQueuedItem" } ] } } }, "required": ["results"] }, "TransactionItem": { "type": "object", "properties": { "type": { "type": "string", "enum": ["TRANSACTION"] }, "transaction": { "$ref": "#/components/schemas/Transaction" }, "conflictType": { "type": "string", "enum": ["None"] } }, "required": ["type", "transaction", "conflictType"] }, "TransactionItemPage": { "type": "object", "properties": { "count": { "type": "number", "nullable": true }, "next": { "type": "string", "nullable": true }, "previous": { "type": "string", "nullable": true }, "results": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/TransactionItem" }, { "$ref": "#/components/schemas/DateLabel" } ] } } }, "required": ["results"] }, "ProposeTransactionDto": { "type": "object", "properties": { "to": { "type": "string" }, "value": { "type": "string" }, "data": { "type": "string", "nullable": true }, "nonce": { "type": "string" }, "operation": { "type": "number" }, "safeTxGas": { "type": "string" }, "baseGas": { "type": "string" }, "gasPrice": { "type": "string" }, "gasToken": { "type": "string" }, "refundReceiver": { "type": "string", "nullable": true }, "safeTxHash": { "type": "string" }, "sender": { "type": "string" }, "signature": { "type": "string", "nullable": true }, "origin": { "type": "string", "nullable": true } }, "required": [ "to", "value", "nonce", "operation", "safeTxGas", "baseGas", "gasPrice", "gasToken", "safeTxHash", "sender" ] }, "CreationTransaction": { "type": "object", "properties": { "created": { "format": "date-time", "type": "string" }, "creator": { "type": "string" }, "transactionHash": { "type": "string" }, "factoryAddress": { "type": "string" }, "masterCopy": { "type": "string", "nullable": true }, "setupData": { "type": "string", "nullable": true }, "saltNonce": { "type": "string", "nullable": true }, "dataDecoded": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/DataDecoded" } ] } }, "required": ["created", "creator", "transactionHash", "factoryAddress"] }, "TXSCreationTransaction": { "type": "object", "properties": { "created": { "format": "date-time", "type": "string" }, "creator": { "type": "string" }, "transactionHash": { "type": "string" }, "factoryAddress": { "type": "string" }, "masterCopy": { "type": "object" }, "setupData": { "type": "object" }, "saltNonce": { "type": "object" } }, "required": ["created", "creator", "transactionHash", "factoryAddress", "masterCopy", "setupData", "saltNonce"] } } } }