openapi: 3.1.0 info: title: Blockaid Asset Management external api integrations API description: Blockaid Risk Score API termsOfService: https://www.blockaid.io/legal/terms-of-use license: name: Proprietary url: https://www.blockaid.io/legal version: 1.0.0 servers: - url: https://api.blockaid.io description: Production server - url: https://client.blockaid.io description: Clients server tags: - name: external api integrations paths: /v0/platform/integrations/search: post: tags: - external api integrations summary: Search Integrations operationId: search_integrations_v0_platform_integrations_search_post parameters: [] security: - APIKey: [] - JWT: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/IntegrationSearchRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Page_Annotated_Union_FireblocksIntegration__SlackIntegration__FordefiIntegration__TelegramIntegration__ResponseWalletIntegration___FieldInfo_annotation_NoneType__required_True__discriminator__type____' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /v0/platform/integrations/{integration_instance_id}/resources: get: tags: - external api integrations summary: Get Integration Resources operationId: get_integration_resources_v0_platform_integrations__integration_instance_id__resources_get parameters: - name: integration_instance_id in: path required: true schema: type: string description: The integration instance ID title: Integration Instance Id description: The integration instance ID - name: page in: query required: false schema: type: integer default: 1 title: Page - name: size in: query required: false schema: type: integer default: 100 title: Size security: - APIKey: [] - JWT: [] responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/VaultsResourceResponse' - $ref: '#/components/schemas/SlackResourceResponse' - $ref: '#/components/schemas/TelegramResourceResponse' - $ref: '#/components/schemas/ResponseWalletChainResourceResponse' discriminator: propertyName: type mapping: vaults_resource: '#/components/schemas/VaultsResourceResponse' slack_resource: '#/components/schemas/SlackResourceResponse' telegram_resource: '#/components/schemas/TelegramResourceResponse' response_wallet_chains_resource: '#/components/schemas/ResponseWalletChainResourceResponse' title: Response Get Integration Resources V0 Platform Integrations Integration Instance Id Resources Get '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' components: schemas: ExternalIntegrationType: type: string enum: - fireblocks - fordefi - slack - telegram - response_wallet title: ExternalIntegrationType description: Type of external platform integration (Fireblocks, Fordefi, Slack, Telegram, or response wallet). ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type type: object required: - loc - msg - type title: ValidationError ? Page_Annotated_Union_FireblocksIntegration__SlackIntegration__FordefiIntegration__TelegramIntegration__ResponseWalletIntegration___FieldInfo_annotation_NoneType__required_True__discriminator__type____ : description: Paginated response containing a list of integrations (Fireblocks, Fordefi, Slack, Telegram, or response wallet). properties: items: items: oneOf: - $ref: '#/components/schemas/FireblocksIntegration' - $ref: '#/components/schemas/SlackIntegration' - $ref: '#/components/schemas/FordefiIntegration' - $ref: '#/components/schemas/TelegramIntegration' - $ref: '#/components/schemas/ResponseWalletIntegration' discriminator: propertyName: type mapping: fireblocks: '#/components/schemas/FireblocksIntegration' fordefi: '#/components/schemas/FordefiIntegration' response_wallet: '#/components/schemas/ResponseWalletIntegration' slack: '#/components/schemas/SlackIntegration' telegram: '#/components/schemas/TelegramIntegration' type: array title: Items total: anyOf: - type: integer minimum: 0 - type: 'null' title: Total page: anyOf: - type: integer minimum: 1 - type: 'null' title: Page size: anyOf: - type: integer minimum: 1 - type: 'null' title: Size pages: anyOf: - type: integer minimum: 0 - type: 'null' title: Pages type: object required: - items - total - page - size title: Page[Annotated[Union[FireblocksIntegration, SlackIntegration, FordefiIntegration, TelegramIntegration, ResponseWalletIntegration], FieldInfo(annotation=NoneType, required=True, discriminator='type')]] SlackChannel: properties: name: type: string title: Name type: object required: - name title: SlackChannel TelegramChannel: properties: id: type: string title: Id name: type: string title: Name type: object required: - id - name title: TelegramChannel AddressDetails: properties: address: type: string title: Address chain: type: string title: Chain type: object required: - address - chain title: AddressDetails HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError IntegrationFilterRequest: description: Optional filters for integration search (type and/or name). properties: type: anyOf: - items: $ref: '#/components/schemas/ExternalIntegrationType' type: array - type: 'null' title: Type default: - fireblocks - fordefi - slack - telegram - response_wallet name: anyOf: - $ref: '#/components/schemas/IntegrationNameFilter' - type: 'null' type: object title: IntegrationFilterRequest IntegrationNameFilter: properties: contains: anyOf: - type: string - type: 'null' title: Contains type: object title: IntegrationNameFilter IntegrationSortField: type: string enum: - created_at - name - type title: IntegrationSortField ResponseWalletChainStatus: type: string enum: - active - low_funds title: ResponseWalletChainStatus IntegrationSortRequest: description: Sort specification (field and direction) for integration search. properties: field: $ref: '#/components/schemas/IntegrationSortField' operator: $ref: '#/components/schemas/IntegrationSortOperator' type: object required: - field - operator title: IntegrationSortRequest FordefiIntegration: description: Fordefi integration instance (MPC wallet provider). properties: type: type: string enum: - fordefi const: fordefi title: Type default: fordefi integrationInstanceId: type: string title: Integrationinstanceid name: type: string title: Name type: object required: - integrationInstanceId - name title: FordefiIntegration VaultError: properties: vault_id: type: string title: Vault Id error: type: string title: Error type: object required: - vault_id - error title: VaultError TelegramIntegration: description: Telegram integration instance. properties: type: type: string enum: - telegram const: telegram title: Type default: telegram integrationInstanceId: type: string title: Integrationinstanceid type: object required: - integrationInstanceId title: TelegramIntegration ResponseWalletChainResourceResponse: description: Paginated response containing wallet chain balances and status per chain. properties: type: type: string enum: - response_wallet_chains_resource const: response_wallet_chains_resource title: Type default: response_wallet_chains_resource total: type: integer title: Total page: type: integer title: Page pages: type: integer title: Pages size: type: integer title: Size items: items: $ref: '#/components/schemas/ResponseWalletChain' type: array title: Items type: object required: - total - page - pages - size - items title: ResponseWalletChainResourceResponse IntegrationSearchRequest: description: Request body for searching integrations (pagination, sort, and optional filter). properties: pageSize: type: integer maximum: 1000 minimum: 1 title: Pagesize default: 50 page: type: integer minimum: 1 title: Page default: 1 sort: anyOf: - items: $ref: '#/components/schemas/IntegrationSortRequest' type: array - type: 'null' title: Sort filter: anyOf: - $ref: '#/components/schemas/IntegrationFilterRequest' - type: 'null' type: object title: IntegrationSearchRequest ResponseWalletIntegration: description: Response wallet integration (generic wallet type). properties: type: type: string enum: - response_wallet const: response_wallet title: Type default: response_wallet integrationInstanceId: type: string title: Integrationinstanceid name: type: string title: Name description: Display name of the response wallet address: type: string title: Address description: The blockchain address of the response wallet type: object required: - integrationInstanceId - name - address title: ResponseWalletIntegration ResponseWalletChain: properties: chain: type: string title: Chain nativeBalanceUsd: type: number title: Nativebalanceusd description: Native token balance in USD default: 0 totalBalanceUsd: type: number title: Totalbalanceusd description: Total balance across all assets in USD default: 0 status: allOf: - $ref: '#/components/schemas/ResponseWalletChainStatus' description: Health status of wallet on this chain type: object required: - chain - status title: ResponseWalletChain VaultDetails: properties: vault_id: type: string title: Vault Id name: type: string title: Name addresses: items: $ref: '#/components/schemas/AddressDetails' type: array title: Addresses type: object required: - vault_id - name - addresses title: VaultDetails IntegrationSortOperator: type: string enum: - asc - desc title: IntegrationSortOperator VaultsResourceResponse: description: Paginated response containing vault details or errors (e.g. for Fireblocks/Fordefi). properties: type: type: string enum: - vaults_resource const: vaults_resource title: Type default: vaults_resource total: type: integer title: Total page: type: integer title: Page pages: type: integer title: Pages size: type: integer title: Size items: items: anyOf: - $ref: '#/components/schemas/VaultDetails' - $ref: '#/components/schemas/VaultError' type: array title: Items type: object required: - total - page - pages - size - items title: VaultsResourceResponse FireblocksIntegration: description: Fireblocks integration instance (vaults provider). properties: type: type: string enum: - fireblocks const: fireblocks title: Type default: fireblocks integrationInstanceId: type: string title: Integrationinstanceid name: type: string title: Name type: object required: - integrationInstanceId - name title: FireblocksIntegration TelegramResourceResponse: description: Paginated response containing Telegram channels for an integration. properties: type: type: string enum: - telegram_resource const: telegram_resource title: Type default: telegram_resource total: type: integer title: Total page: type: integer title: Page pages: type: integer title: Pages size: type: integer title: Size items: items: $ref: '#/components/schemas/TelegramChannel' type: array title: Items type: object required: - total - page - pages - size - items title: TelegramResourceResponse SlackWorkspace: properties: id: type: string title: Id name: type: string title: Name type: object required: - id - name title: SlackWorkspace SlackResourceResponse: description: Paginated response containing Slack channels for an integration. properties: type: type: string enum: - slack_resource const: slack_resource title: Type default: slack_resource total: type: integer title: Total page: type: integer title: Page pages: type: integer title: Pages size: type: integer title: Size items: items: $ref: '#/components/schemas/SlackChannel' type: array title: Items type: object required: - total - page - pages - size - items title: SlackResourceResponse SlackIntegration: description: Slack integration instance (workspace and channels). properties: type: type: string enum: - slack const: slack title: Type default: slack integrationInstanceId: type: string title: Integrationinstanceid workspace: $ref: '#/components/schemas/SlackWorkspace' type: object required: - integrationInstanceId - workspace title: SlackIntegration securitySchemes: APIKey: type: apiKey name: X-API-Key in: header ClientID: type: apiKey name: X-CLIENT-ID in: header JWT: type: http scheme: bearer bearerFormat: JWT description: Bearer authentication header of the form `Bearer `, where `` is your auth token. See [API Authentication](/docs/api-reference/before-you-begin/api-authentication) for how to retrieve it.