Skip to main content

Bulk Generate

Create many links of the same type in a single request — useful for importing spreadsheets of URLs, products, phone numbers, or contacts.

Scope: bulk.create


POST /bulk-generate

Body​

FieldTypeRequiredNotes
typestringyesOne of website, product, sms, vcard.
dataarrayyes1–1200 records. Each record's shape depends on type.
folderIdstringnoPlace all generated links in this folder.

Every record requires a name, plus the type-specific fields below.

website records​

FieldTypeRequired
namestringyes
urlstring (URL)yes

product records​

FieldTypeRequiredNotes
name, productNamestringyes
productDescriptionstringno
currencystringnoDefaults to USD.
subTotal, tax, totalNetnumberno

sms records​

FieldTypeRequired
namestringyes
phonestringyes

vcard records​

FieldTypeRequired
name, firstName, lastName, contactstringyes
emailstring (email)yes
phone, fax, company, department, street, city, zip, state, country, websitestringno

Example​

curl -X POST https://api.prolinksqr.com/bulk-generate \
-H "Authorization: Basic key-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"type": "website",
"folderId": "0c8f...e21",
"data": [
{ "name": "Landing A", "url": "https://example.com/a" },
{ "name": "Landing B", "url": "https://example.com/b" }
]
}'

Response 200​

Returns the number of links created and each new link's database id and dynamicLinkId (the slug used in its short URL):

{
"count": 2,
"links": [
{ "id": "3f0a...c11", "dynamicLinkId": "a1b2c3d4-..." },
{ "id": "58e2...9d0", "dynamicLinkId": "e5f6a7b8-..." }
]
}
tip

A maximum of 1200 records is allowed per request. Split larger imports into multiple calls.