Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 9 additions & 4 deletions examples/kitchen-sink/src/http/with-poller/createApiKey.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import * as dotenv from "dotenv";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";
import { refineNonNull } from "../../utils";

Expand All @@ -24,7 +24,12 @@ async function main() {
const publicKey = "<API public key>";
const curveType = "API_KEY_CURVE_P256"; // this is the default

const { activity } = await turnkeyClient.createApiKeys({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createApiKeys,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_API_KEYS_V2",
organizationId: process.env.ORGANIZATION_ID!,
parameters: {
Expand All @@ -37,11 +42,11 @@ async function main() {
},
],
},
timestampMs: String(Date.now()), // millisecond timestamp
timestampMs: String(Date.now()),
});

const newApiKeyIds = refineNonNull(
activity.result.createApiKeysResult?.apiKeyIds,
completedActivity.result.createApiKeysResult?.apiKeyIds,
);

// Success!
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import * as dotenv from "dotenv";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";
import * as crypto from "crypto";
import { refineNonNull } from "../../utils";
Expand All @@ -22,7 +22,12 @@ async function main() {

const privateKeyName = `ETH Key ${crypto.randomBytes(2).toString("hex")}`;

const { activity } = await turnkeyClient.createPrivateKeys({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createPrivateKeys,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_PRIVATE_KEYS_V2",
organizationId: process.env.ORGANIZATION_ID!,
parameters: {
Expand All @@ -35,14 +40,14 @@ async function main() {
},
],
},
timestampMs: String(Date.now()), // millisecond timestamp
timestampMs: String(Date.now()),
});

const privateKeys = refineNonNull(
activity.result.createPrivateKeysResultV2?.privateKeys,
const privateKey = refineNonNull(
completedActivity.result.createPrivateKeysResultV2?.privateKeys?.[0],
);
const privateKeyId = refineNonNull(privateKeys?.[0]?.privateKeyId);
const address = refineNonNull(privateKeys?.[0]?.addresses?.[0]?.address);
const privateKeyId = refineNonNull(privateKey.privateKeyId);
const address = refineNonNull(privateKey.addresses?.[0]?.address);

// Success!
console.log(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import * as dotenv from "dotenv";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";
import * as crypto from "crypto";
import { refineNonNull } from "../../utils";
Expand All @@ -22,7 +22,12 @@ async function main() {
}),
);

const { activity } = await turnkeyClient.createWallet({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createWallet,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_WALLET",
timestampMs: String(Date.now()),
organizationId: process.env.ORGANIZATION_ID!,
Expand All @@ -39,7 +44,7 @@ async function main() {
},
});

const wallet = refineNonNull(activity.result.createWalletResult);
const wallet = refineNonNull(completedActivity.result.createWalletResult);
const walletId = refineNonNull(wallet.walletId);
const address = refineNonNull(wallet.addresses[0]);

Expand Down
13 changes: 9 additions & 4 deletions examples/kitchen-sink/src/http/with-poller/createPolicy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import * as dotenv from "dotenv";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";

import { refineNonNull } from "../../utils";
Expand All @@ -25,7 +25,12 @@ async function main() {
const condition = ""; // desired condition. See https://docs.turnkey.com/concepts/policies/overview
const notes = "";

const { activity } = await turnkeyClient.createPolicy({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createPolicy,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_POLICY_V3",
organizationId: process.env.ORGANIZATION_ID!,
parameters: {
Expand All @@ -35,10 +40,10 @@ async function main() {
effect,
notes,
},
timestampMs: String(Date.now()), // millisecond timestamp
timestampMs: String(Date.now()),
});

const policyId = refineNonNull(activity.result.createPolicyResult?.policyId);
const policyId = refineNonNull(completedActivity.result.createPolicyResult?.policyId);

// Success!
console.log(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import * as dotenv from "dotenv";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";

import { refineNonNull } from "../../utils";
Expand All @@ -22,18 +22,23 @@ async function main() {
const privateKeyTagName = "<your desired private key tag name>";
const privateKeyIds = ["<relevant private key ID>"];

const { activity } = await turnkeyClient.createPrivateKeyTag({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createPrivateKeyTag,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_PRIVATE_KEY_TAG",
organizationId: process.env.ORGANIZATION_ID!,
parameters: {
privateKeyTagName,
privateKeyIds,
},
timestampMs: String(Date.now()), // millisecond timestamp
timestampMs: String(Date.now()),
});

const privateKeyTagId = refineNonNull(
activity.result.createPrivateKeyTagResult?.privateKeyTagId,
completedActivity.result.createPrivateKeyTagResult?.privateKeyTagId,
);

// Success!
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import * as dotenv from "dotenv";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";

import * as crypto from "crypto";
Expand All @@ -24,7 +24,12 @@ async function main() {

const privateKeyName = `SOL Key ${crypto.randomBytes(2).toString("hex")}`;

const { activity } = await turnkeyClient.createPrivateKeys({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createPrivateKeys,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_PRIVATE_KEYS_V2",
organizationId: process.env.ORGANIZATION_ID!,
parameters: {
Expand All @@ -37,14 +42,14 @@ async function main() {
},
],
},
timestampMs: String(Date.now()), // millisecond timestamp
timestampMs: String(Date.now()),
});

const privateKeys = refineNonNull(
activity.result.createPrivateKeysResultV2?.privateKeys,
const privateKey = refineNonNull(
completedActivity.result.createPrivateKeysResultV2?.privateKeys?.[0],
);
const privateKeyId = refineNonNull(privateKeys?.[0]?.privateKeyId);
const address = refineNonNull(privateKeys?.[0]?.addresses?.[0]?.address);
const privateKeyId = refineNonNull(privateKey.privateKeyId);
const address = refineNonNull(privateKey.addresses?.[0]?.address);

// Success!
console.log(
Expand Down
12 changes: 8 additions & 4 deletions examples/kitchen-sink/src/http/with-poller/createSolanaWallet.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import * as crypto from "crypto";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";

import { refineNonNull } from "../../utils";
Expand All @@ -23,7 +23,12 @@ async function main() {
}),
);

const { activity } = await turnkeyClient.createWallet({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createWallet,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_WALLET",
timestampMs: String(Date.now()),
organizationId: process.env.ORGANIZATION_ID!,
Expand All @@ -32,7 +37,6 @@ async function main() {
accounts: [
{
pathFormat: "PATH_FORMAT_BIP32",
// https://github.com/satoshilabs/slips/blob/master/slip-0044.md
path: "m/44'/501'/0'/0'",
curve: "CURVE_ED25519",
addressFormat: "ADDRESS_FORMAT_SOLANA",
Expand All @@ -41,7 +45,7 @@ async function main() {
},
});

const wallet = refineNonNull(activity.result.createWalletResult);
const wallet = refineNonNull(completedActivity.result.createWalletResult);
const walletId = refineNonNull(wallet.walletId);
const address = refineNonNull(wallet.addresses[0]);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import * as dotenv from "dotenv";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";
import { refineNonNull } from "../../utils";

Expand All @@ -23,7 +23,12 @@ async function main() {
}),
);

const { activity } = await turnkeyClient.createSubOrganization({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createSubOrganization,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V7",
timestampMs: String(Date.now()),
organizationId: process.env.ORGANIZATION_ID!,
Expand Down Expand Up @@ -59,7 +64,7 @@ async function main() {
});

const subOrgId = refineNonNull(
activity.result.createSubOrganizationResultV7?.subOrganizationId,
completedActivity.result.createSubOrganizationResultV7?.subOrganizationId,
);

// Success!
Expand Down
13 changes: 9 additions & 4 deletions examples/kitchen-sink/src/http/with-poller/createUser.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import * as dotenv from "dotenv";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";

import { refineNonNull } from "../../utils";
Expand All @@ -24,7 +24,12 @@ async function main() {
const apiKeyName = "<API key name>";
const publicKey = "<API public key>";

const { activity } = await turnkeyClient.createApiOnlyUsers({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createApiOnlyUsers,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_API_ONLY_USERS",
organizationId: process.env.ORGANIZATION_ID!,
parameters: {
Expand All @@ -41,11 +46,11 @@ async function main() {
},
],
},
timestampMs: String(Date.now()), // millisecond timestamp
timestampMs: String(Date.now()),
});

const userId = refineNonNull(
activity.result.createApiOnlyUsersResult?.userIds?.[0],
completedActivity.result.createApiOnlyUsersResult?.userIds?.[0],
);

// Success!
Expand Down
13 changes: 9 additions & 4 deletions examples/kitchen-sink/src/http/with-poller/createUserTag.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import * as dotenv from "dotenv";
// Load environment variables from `.env.local`
dotenv.config({ path: path.resolve(process.cwd(), ".env.local") });

import { TurnkeyClient } from "@turnkey/http";
import { TurnkeyClient, createActivityPoller } from "@turnkey/http";
import { ApiKeyStamper } from "@turnkey/api-key-stamper";

import { refineNonNull } from "../../utils";
Expand All @@ -21,18 +21,23 @@ async function main() {

const userTagName = "<desired tag name>";

const { activity } = await turnkeyClient.createUserTag({
const activityPoller = createActivityPoller({
client: turnkeyClient,
requestFn: turnkeyClient.createUserTag,
});

const completedActivity = await activityPoller({
type: "ACTIVITY_TYPE_CREATE_USER_TAG",
organizationId: process.env.ORGANIZATION_ID!,
parameters: {
userTagName,
userIds: [], // relevant user IDs
},
timestampMs: String(Date.now()), // millisecond timestamp
timestampMs: String(Date.now()),
});

const userTagId = refineNonNull(
activity.result.createUserTagResult?.userTagId,
completedActivity.result.createUserTagResult?.userTagId,
);

// Success!
Expand Down
Loading
Loading