openapi: 3.1.0 info: title: Boost V2 Action Budget API description: Get Boosts and sign claims for the Boost Validator termsOfService: https://rabbithole-assets.s3.amazonaws.com/BoostStudios_Terms_Of_Service.pdf contact: url: https://airtable.com/appPys6nAx8smVpTA/shrqpPGsDx2W6oY24 email: support@boost.xyz version: 2.0.0 servers: - url: https://api-v2.boost.xyz description: Boost V2 tags: - name: Budget paths: /budget-accounts/:id: get: tags: - Budget operationId: getBudgetAccount summary: Retrieve a single Budget by its system ID description: Retrieve detailed information about a Budget Account, including contract address, chain ID, owner address, label, and members if applicable. parameters: - schema: type: string description: Query for a Budget Account by system ID in the format of "chainId:address" example: 8453:0xa904ef32d569e2ada8f4de6244bf68f36fa219f6 required: true description: ID in format chainId:identifier name: id in: path responses: '200': description: Returns whether or not the token is blocked on given chain id content: application/json: schema: type: object properties: id: type: string description: The system ID in the format of "chainId:address" example: 8453:0xa904ef32d569e2ada8f4de6244bf68f36fa219f6 identifier: type: string description: The address of the deployed Budget Account registryType: type: string enum: - ACTION - ALLOW_LIST - BUDGET - INCENTIVE - VALIDATOR description: The type of Boost Protocol V2 component; either ACTION, ALLOW_LIST, BUDGET, INCENTIVE, or VALIDATOR baseImplementation: type: string description: The contract address of the base implementation registered with the protocol example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ deployedInstance: type: string description: The address of the deployed contract example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ txHash: type: string description: The transaction hash of the contract deployment blockTimestamp: type: string description: A bigint string representing the block timestamp for this contract deployment blockNumber: type: string description: A bigint string representing the blocknumber for this contract deployment chainId: type: integer minimum: 0 description: The chainID where this Budget is deployed name: type: string description: A unique name for the Budget, if not updated later, then this will be a random UUID address: type: string description: The address of the deployed Budget Account example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ owner: type: string description: The address of the Budget's owner example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ ownerEmail: type: - string - 'null' description: The email address of the Budget's owner, if available hidden: type: boolean description: Whether or not the Budget should be included in API responses label: type: - string - 'null' description: A label for the Budget, if available. members: type: array items: type: object properties: memberAddress: type: string description: The address of the Budget Account member, someone with either ADMIN or MANAGER permissions example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ roles: type: array items: type: number description: A list of numbers representing role enums, where 1 is MANAGER, and 2 is ADMIN. Managers can manage funds, while Admins can manage permissioned users. email: type: - string - 'null' description: The email address associated with this member, if available status: type: - string - 'null' enum: - wallet_created - invited - accepted - cancelled description: The invitation status of this member, if available required: - memberAddress - roles description: A list of members with any amount of permissions deprecated: type: boolean description: Will be true if Budget Account is based off of a deprecated budget implementation. required: - id - identifier - registryType - baseImplementation - deployedInstance - txHash - blockTimestamp - blockNumber - chainId - address - owner - hidden - members - deprecated description: Details for a single Budget Account '404': description: Not Found content: application/json: schema: type: object properties: error: anyOf: - type: string - type: object properties: message: type: string description: Human readable message for error that occured code: type: number description: Error code for error that occured, will typically be the HTTP status code required: - message description: A generic error object that can be used to represent any error that occurs in the system. required: - error /budget-accounts: get: tags: - Budget operationId: getBudgetAccounts summary: Get Budgets description: Accepts pagination, and filter options like owner address, chain ID, and permissioned member address. parameters: - schema: type: - integer - 'null' minimum: 0 description: Query for Budget Accounts deployed to this chain ID example: 10 required: false name: chainId in: query - schema: type: string description: Query for Budget Accounts where this member has permissions example: '0x0d288362c8bfe919dd02fb96ee1642aaae0185e7' pattern: ^0x[a-fA-F0-9]{40}$ required: false name: member in: query - schema: type: string description: Query for Budget Accounts owned by this address example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ required: false name: owner in: query - schema: type: - integer - 'null' minimum: 0 default: 1 description: Query for a specific page of results required: false name: page in: query - schema: type: - integer - 'null' minimum: 0 default: 10 description: How many items should be returned per page required: false name: pageSize in: query responses: '200': description: Returns whether or not the token is blocked on given chain id content: application/json: schema: type: array items: type: object properties: id: type: string description: The system ID in the format of "chainId:address" example: 8453:0xa904ef32d569e2ada8f4de6244bf68f36fa219f6 identifier: type: string description: The address of the deployed Budget Account registryType: type: string enum: - ACTION - ALLOW_LIST - BUDGET - INCENTIVE - VALIDATOR description: The type of Boost Protocol V2 component; either ACTION, ALLOW_LIST, BUDGET, INCENTIVE, or VALIDATOR baseImplementation: type: string description: The contract address of the base implementation registered with the protocol example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ deployedInstance: type: string description: The address of the deployed contract example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ txHash: type: string description: The transaction hash of the contract deployment blockTimestamp: type: string description: A bigint string representing the block timestamp for this contract deployment blockNumber: type: string description: A bigint string representing the blocknumber for this contract deployment chainId: type: integer minimum: 0 description: The chainID where this Budget is deployed name: type: string description: A unique name for the Budget, if not updated later, then this will be a random UUID label: type: - string - 'null' description: A label for the Budget, if available. address: type: string description: The address of the deployed Budget Account example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ owner: type: string description: The address of the Budget's owner example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ hidden: type: boolean description: Whether or not the Budget should be included in API responses members: type: array items: type: object properties: memberAddress: type: string description: The address of the Budget Account member, someone with either ADMIN or MANAGER permissions example: '0x378632819f39c74c4f56b1429e760739c5fb51b7' pattern: ^0x[a-fA-F0-9]{40}$ roles: type: array items: type: number description: A list of numbers representing role enums, where 1 is MANAGER, and 2 is ADMIN. Managers can manage funds, while Admins can manage permissioned users. email: type: - string - 'null' description: The email address associated with this member, if available status: type: - string - 'null' enum: - wallet_created - invited - accepted - cancelled description: The invitation status of this member, if available required: - memberAddress - roles description: A list of members with any amount of permissions deprecated: type: boolean description: Will be true if Budget Account is based off of a deprecated budget implementation. required: - id - identifier - registryType - baseImplementation - deployedInstance - txHash - blockTimestamp - blockNumber - chainId - address - owner - hidden - members - deprecated