Skip to content

Commit d5b1a8b

Browse files
authored
add createProlinkUrl doc (#631)
1 parent bedd136 commit d5b1a8b

2 files changed

Lines changed: 76 additions & 1 deletion

File tree

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
---
2+
title: "createProlinkUrl"
3+
description: "Create a link with a prolink query parameter"
4+
---
5+
6+
Defined in the [Base Account SDK](https://github.com/base/account-sdk)
7+
8+
<Info>
9+
This utility creates a link with a prolink query parameter. Supports standard, deeplink, and universal link formats.
10+
</Info>
11+
12+
## Import
13+
14+
```typescript
15+
import { createProlinkUrl } from '@base-org/account';
16+
```
17+
18+
## Parameters
19+
20+
<ParamField body="prolink" type="string" required>
21+
The base64url-encoded prolink payload to create a link for.
22+
</ParamField>
23+
24+
<ParamField body="url" type="string" required>
25+
The URL to which the prolink will be appended as a query parameter. Defaults to `https://base.app/base-pay`.
26+
</ParamField>
27+
28+
<ParamField body="additionalQueryParams" type="Record<string, string>">
29+
Optional additional query parameters to append to the URL.
30+
</ParamField>
31+
32+
33+
## Returns
34+
35+
<ResponseField name="url" type="string">
36+
The complete URL with the prolink and any additional query parameters appended.
37+
</ResponseField>
38+
39+
## Examples
40+
41+
### Encode wallet_sendCalls (ERC20 Transfer)
42+
43+
```typescript
44+
import { createProlinkUrl } from '@base-org/account';
45+
46+
// Create a prolink for a USDC transfer on Base
47+
const prolink = await encodeProlink({
48+
method: 'wallet_sendCalls',
49+
params: [{
50+
version: '1.0',
51+
chainId: '0x2105', // Base mainnet (8453)
52+
calls: [{
53+
to: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913', // USDC on Base
54+
data: '0xa9059cbb000000000000000000000000fe21034794a5a574b94fe4fdfd16e005f1c96e5100000000000000000000000000000000000000000000000000000000004c4b40',
55+
value: '0x0'
56+
}]
57+
}]
58+
});
59+
60+
// Use in a shareable URL
61+
const paymentUrl = createProlinkUrl(prolink, 'https://yourapp.com/pay');
62+
console.log(paymentUrl);
63+
```
64+
65+
## Related
66+
67+
<CardGroup cols={2}>
68+
<Card title="encodeProlink" icon="compress" href="/base-account/reference/prolink-utilities/encodeProlink">
69+
Create prolink payloads from JSON-RPC requests
70+
</Card>
71+
<Card title="decodeProlink" icon="expand" href="/base-account/reference/prolink-utilities/decodeProlink">
72+
Decode a prolink payload back to a JSON-RPC request
73+
</Card>
74+
</CardGroup>

docs/docs.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -269,7 +269,8 @@
269269
"group": "Prolink Utilities",
270270
"pages": [
271271
"base-account/reference/prolink-utilities/encodeProlink",
272-
"base-account/reference/prolink-utilities/decodeProlink"
272+
"base-account/reference/prolink-utilities/decodeProlink",
273+
"base-account/reference/prolink-utilities/createProlinkUrl"
273274
]
274275
},
275276
"base-account/reference/core/getProvider",

0 commit comments

Comments
 (0)