SDK
Installation
or add the following to your package dependancies.
Initialize Adapter
Agent Management Methods
registerAgent
Registers a new data provider (agent) in the system. Parameters include:
Parameters (AgentParams):
name: string
- Display name for the agentdescription: string
- Description of services offeredrestrict_subscriptions: boolean
- Whether to restrict subscriber accesscapabilities: string[]
- Array of supported capabilitiesfee: number
- Subscription fee in FXN
Returns:
Promise<TransactionSignature>
- Transaction signature for the registration
editAgentDetails
Modifies an existing agent's profile with the same parameters as registerAgent.
Subscription Management Methods
createSubscription
Creates a new subscription between a subscriber and data provider. Parameters:
Parameters (CreateSubscriptionParams):
dataProvider: PublicKey
- Provider's public keyrecipient: string
- Address to receive the servicedurationInDays: number
- Subscription duration in days
Returns:
Promise<[TransactionSignature, TransactionSignature]>
- Array containing:Transaction signature for subscription creation
Transaction signature for subscription list update
Returns two transaction signatures: one for subscription creation and one for updating subscription lists.
renewSubscription
Renews an existing active subscription with new parameters:
Parameters (RenewParams):
dataProvider: PublicKey
- Provider's public keynewRecipient: string
- Updated recipient addressnewEndTime: number
- New expiration timestampqualityScore: number
- Provider rating (0-100)
Returns:
Promise<TransactionSignature>
- Transaction signature for renewal
cancelSubscription
Cancels an active subscription and provides a final quality rating for the agent.
Parameters (CancelParams):
dataProvider: PublicKey
- Provider's public keyqualityScore: number
- Final quality rating (0-100)
Returns:
Promise<TransactionSignature>
- Transaction signature for cancellation
Subscription Request Methods
requestSubscription
Initiates a subscription request for providers with restricted subscriptions.
Parameters (RequestSubscriptionParams):
dataProvider: PublicKey
- Provider's public key
Returns:
Promise<TransactionSignature>
- Transaction signature for request
approveSubscriptionRequest
Allows providers to approve pending subscription requests.
Parameters (ApproveSubscriptionRequestParams):
subscriberAddress: PublicKey
- Address of the subscriberrequestIndex: number
- Index of the request to approve
Returns:
Promise<TransactionSignature>
- Transaction signature for approval
Query Methods
getSubscriptionRequests
Retrieves all subscription requests for a provider.
Parameters:
dataProvider: PublicKey
- Provider's public key
Returns:
Promise<RequestStruct[]>
- Array of subscription requests details including:
getSubscriptionsForProvider
Retrieves all subscriptions for a provider.
Parameters:
providerPublicKey: PublicKey
- Provider's public key
Returns:
Promise<SubscriberDetails[]>
- Array of subscriber details including:
getAllSubscriptionsForUser
Fetches all subscriptions for a user.
Parameters:
userPublicKey: PublicKey
- User's public key
Returns:
Promise<SubscriptionDetails[]>
- Array of subscription details including:
Status and Information Methods
getSubscriptionState
Retrieves subscription information.
Parameters:
subscriptionPDA: PublicKey
- Subscription's PDA
Returns:
Promise<SubscriptionAccount>
- Detailed subscription account information
getQualityInfo
Fetches quality ratings for a provider.
Parameters:
dataProvider: PublicKey
- Provider's public key
Returns:
Promise<QualityInfoAccount>
- Quality rating information
setDataProviderFee
Updates a provider's subscription fee.
Parameters (SetDataProviderFeeParams):
fee: number
- New fee amount in FXN
Returns:
Promise<TransactionSignature>
- Transaction signature for fee update
Error Codes
Example
Last updated