IRONQ

PDA Helpers

Derive all IronQ account addresses client-side

The SDK provides functions to derive all PDA addresses deterministically.

findQueuePDA

import { findQueuePDA } from "ironq-sdk";

const [queuePDA, bump] = findQueuePDA(authorityPublicKey);

Seeds: ["queue", authority]

findVaultPDA

import { findVaultPDA } from "ironq-sdk";

const [vaultPDA, bump] = findVaultPDA(queuePublicKey);

Seeds: ["vault", queue]

findJobPDA

import { findJobPDA } from "ironq-sdk";
import { BN } from "@coral-xyz/anchor";

const [jobPDA, bump] = findJobPDA(queuePublicKey, new BN(0));
// or with a plain number:
const [jobPDA2, bump2] = findJobPDA(queuePublicKey, 42);

Seeds: ["job", queue, job_id_le_bytes] — the job ID is encoded as 8-byte little-endian.

findWorkerPDA

import { findWorkerPDA } from "ironq-sdk";

const [workerPDA, bump] = findWorkerPDA(queuePublicKey, walletPublicKey);

Seeds: ["worker", queue, wallet]

findResultPDA

import { findResultPDA } from "ironq-sdk";

const [resultPDA, bump] = findResultPDA(jobPublicKey);

Seeds: ["result", job]