openapi: 3.0.3 info: title: NFT Service APIs activity API description: '' license: name: '' version: '2.0' servers: - url: https://api.bitski.com tags: - name: activity paths: /v2/activities: get: tags: - activity operationId: list_activities parameters: - name: address in: query required: true schema: type: string example: '0x1C505d3AC1B902b69bc153aEdad477c9bC9ccde7' - name: chainId in: query required: false deprecated: true schema: allOf: - $ref: '#/components/schemas/ChainId' nullable: true - name: chainIds in: query required: false schema: type: array items: $ref: '#/components/schemas/ChainId' nullable: true - name: coinType in: query required: false schema: allOf: - $ref: '#/components/schemas/CoinType' nullable: true - name: limit in: query required: false schema: type: integer format: int32 minimum: 0.0 - name: filterSpam in: query required: false schema: type: boolean - name: cursor in: query required: false schema: type: string nullable: true responses: '200': description: List Activity by address content: application/json: schema: $ref: '#/components/schemas/ListActivitiesResponse' components: schemas: PurchaseType: type: string enum: - BUY_NOW - ACCEPT_OFFER TransferKind: type: string enum: - NATIVE - TOKEN - NFT TokenSwap: type: object required: - trader - contractAddressIn - tokenKindIn - contractAddressOut - tokenInAmtRaw - tokenOutAmtRaw - platform properties: contractAddressIn: $ref: '#/components/schemas/EvmAddress' contractAddressOut: $ref: '#/components/schemas/EvmAddress' logIndex: type: integer format: int32 nullable: true minimum: 0.0 platform: $ref: '#/components/schemas/EvmAddress' tokenIdIn: allOf: - $ref: '#/components/schemas/TokenId' nullable: true tokenIdOut: allOf: - $ref: '#/components/schemas/TokenId' nullable: true tokenInAmtRaw: type: string example: '0x1' tokenKindIn: $ref: '#/components/schemas/TransferKind' tokenKindOut: $ref: '#/components/schemas/TransferKind' tokenOutAmtRaw: type: string example: '0x1' trader: $ref: '#/components/schemas/EvmAddress' TokenId: type: string example: '0x1c735' TokenTransfer: type: object required: - fromAddress - toAddress - contractAddress - amount - kind properties: amount: type: string example: '1' contractAddress: $ref: '#/components/schemas/EvmAddress' fromAddress: $ref: '#/components/schemas/EvmAddress' kind: $ref: '#/components/schemas/TransferKind' logIndex: type: integer format: int32 example: 26 nullable: true minimum: 0.0 toAddress: $ref: '#/components/schemas/EvmAddress' tokenId: allOf: - $ref: '#/components/schemas/TokenId' nullable: true TokenSale: type: object required: - seller - buyer - contractAddress - amount - purchaseType - paymentCurrency - paymentAmount - platform properties: amount: type: string example: '1' buyer: $ref: '#/components/schemas/EvmAddress' contractAddress: $ref: '#/components/schemas/EvmAddress' creatorFee: allOf: - $ref: '#/components/schemas/Fee' nullable: true logIndex: type: integer format: int32 nullable: true minimum: 0.0 paymentAmount: type: string example: '250000000000000000' paymentCurrency: $ref: '#/components/schemas/EvmAddress' platform: $ref: '#/components/schemas/EvmAddress' platformFee: allOf: - $ref: '#/components/schemas/Fee' nullable: true purchaseType: $ref: '#/components/schemas/PurchaseType' seller: $ref: '#/components/schemas/EvmAddress' tokenId: allOf: - $ref: '#/components/schemas/TokenId' nullable: true ApprovalType: type: string enum: - APPROVE - APPROVAL_FOR_ALL - REVOKE_APPROVE - REVOKE_APPROVAL_FOR_ALL OrderType: type: string description: The type of order enum: - LISTING - OFFER - BID - COLLECTION TokenOrder: type: object required: - contractAddress - tokenId - basePrice - endPrice - createdDate - expirationDate - maker - orderHash - orderType - paymentToken - quantity - isCancelled properties: basePrice: type: string description: Offer/ Bid/ Listing price. See `payment_token` for the actual value of each unit. example: '0x4e6f32b617' contractAddress: $ref: '#/components/schemas/EvmAddress' createdDate: type: string format: utoipa::openapi::schema::KnownFormat::DateTime description: Timestamp of when the order was created. example: '2023-04-13T03:55:18.772Z' creatorFee: allOf: - $ref: '#/components/schemas/Fee' nullable: true endPrice: type: string description: End price of the order applicable for auctions. example: '0x4e6f32b618' expirationDate: type: string format: utoipa::openapi::schema::KnownFormat::DateTime description: Timestamp of when the order will expire. example: '2023-05-13T03:55:18.772Z' isCancelled: type: boolean listingType: allOf: - $ref: '#/components/schemas/ListingType' nullable: true logIndex: type: integer format: int32 nullable: true minimum: 0.0 maker: $ref: '#/components/schemas/EvmAddress' orderHash: type: string description: Hash of order example: '0x28be813ac317f12524339c8f06d2a3619f83b1d853a88ee55bf62ccaff061f72' orderType: $ref: '#/components/schemas/OrderType' paymentToken: $ref: '#/components/schemas/EvmAddress' platformFee: allOf: - $ref: '#/components/schemas/Fee' nullable: true quantity: type: string description: Number of items on the offer. This is always `1` for ERC-721 tokens. example: '0x1' taker: allOf: - $ref: '#/components/schemas/EvmAddress' nullable: true tokenId: $ref: '#/components/schemas/TokenId' Transaction: type: object description: Blockchain transaction details required: - hash - value - status - fromAddress - gasUsed - effectiveGasPrice properties: blockNumber: type: integer format: int64 description: The block number containing this transaction, None when pending. example: 17036125 nullable: true minimum: 0.0 effectiveGasPrice: type: string description: The price of gas example: '0x4e6f32b61292c7' fromAddress: $ref: '#/components/schemas/EvmAddress' gasUsed: type: string description: The amount of gas this transaction consumed example: '0x2ccd0f' hash: type: string description: The hash of the transaction example: '0xf04f433ea254fd473d044a0dfa5cd7d822434017d2a018450036cd39916c2438' status: type: integer format: int64 description: 'Status: either 1 (success) or 0 (failure). Only present after activation of [EIP-658](https://eips.ethereum.org/EIPS/eip-658).' example: '1' toAddress: allOf: - $ref: '#/components/schemas/EvmAddress' nullable: true value: type: string description: The transferred value example: '0x1234' Activity: type: object description: An individual activity event required: - timestamp - coinType - chainId - events properties: associatedAddresses: type: array items: $ref: '#/components/schemas/EvmAddress' description: The addresses taking part in this activity chainId: $ref: '#/components/schemas/ChainId' coinType: $ref: '#/components/schemas/CoinType' events: type: array items: $ref: '#/components/schemas/ActivityEvent' description: The parsed event details timestamp: type: string format: utoipa::openapi::schema::KnownFormat::DateTime description: The time the activity occurred example: '2023-04-13T03:55:18.772Z' transaction: allOf: - $ref: '#/components/schemas/Transaction' nullable: true ListActivitiesResponse: type: object required: - activities - metadata properties: activities: type: array items: $ref: '#/components/schemas/Activity' cursor: type: string example: 1axdfge88xd9ddddd8 nullable: true metadata: $ref: '#/components/schemas/ActivityMetadata' BatchTokenTransfer: type: object required: - fromAddress - toAddress - contractAddress - tokenIds - amounts - kind properties: amounts: type: array items: type: string example: - '1' contractAddress: $ref: '#/components/schemas/EvmAddress' fromAddress: $ref: '#/components/schemas/EvmAddress' kind: $ref: '#/components/schemas/TransferKind' toAddress: $ref: '#/components/schemas/EvmAddress' tokenIds: type: array items: $ref: '#/components/schemas/TokenId' ListingType: type: string description: Auctioning system used by the listing. enum: - FIXED_PRICE - ENGLISH - DUTCH Fee: type: object required: - rate - amountRaw - recipient properties: amountRaw: type: string example: '0x1' rate: type: integer format: int32 example: 50 minimum: 0.0 recipient: $ref: '#/components/schemas/EvmAddress' ActivityMetadata: type: object properties: spamRemoved: type: integer format: int64 example: 3 minimum: 0.0 CoinType: type: integer format: int32 description: Blockchain coin type. example: 60 minimum: 0.0 ChainId: type: integer format: int32 description: 'Identifier for an ethereum network. Examples: * `1` -> mainnet * `137` -> polygon See for a more complete list.' example: 1 minimum: 0.0 ContractInteraction: type: object required: - contractAddress - status properties: contractAddress: $ref: '#/components/schemas/EvmAddress' functionArgs: type: array items: type: string description: The arguments passed to the function example: null nullable: true functionName: type: string description: The name of the function being called example: null nullable: true status: type: string description: The status of the interaction, 1 for success, 0 for failure example: '0x1' EvmAddress: type: string example: '0x1C505d3AC1B902b69bc153aEdad477c9bC9ccde7' ActivityEvent: oneOf: - allOf: - $ref: '#/components/schemas/ContractInteraction' - type: object required: - type properties: type: type: string enum: - CONTRACT_INTERACTION - allOf: - $ref: '#/components/schemas/TokenTransfer' - type: object required: - type properties: type: type: string enum: - TOKEN_TRANSFER - allOf: - $ref: '#/components/schemas/BatchTokenTransfer' - type: object required: - type properties: type: type: string enum: - BATCH_TOKEN_TRANSFER - allOf: - $ref: '#/components/schemas/TokenOrder' - type: object required: - type properties: type: type: string enum: - TOKEN_ORDER - allOf: - $ref: '#/components/schemas/TokenSale' - type: object required: - type properties: type: type: string enum: - TOKEN_SALE - allOf: - $ref: '#/components/schemas/TokenApproval' - type: object required: - type properties: type: type: string enum: - TOKEN_APPROVAL - allOf: - $ref: '#/components/schemas/TokenSwap' - type: object required: - type properties: type: type: string enum: - TOKEN_SWAP - type: object required: - type properties: type: type: string enum: - UNKNOWN discriminator: propertyName: type TokenApproval: type: object required: - owner - spender - contractAddress - approvalType - allowance - priority properties: allowance: type: string description: 0 indicates approval was revoked example: '0x0' approvalType: $ref: '#/components/schemas/ApprovalType' contractAddress: $ref: '#/components/schemas/EvmAddress' logIndex: type: integer format: int32 nullable: true minimum: 0.0 owner: $ref: '#/components/schemas/EvmAddress' priority: type: integer format: int64 spender: $ref: '#/components/schemas/EvmAddress' tokenId: allOf: - $ref: '#/components/schemas/TokenId' nullable: true securitySchemes: oauth2: type: oauth2 flows: clientCredentials: tokenUrl: https://account.bitski.com/oauth2/token scopes: apps: manage my applications description: Client credentials