Get Started
Choose a Content Strategy
You can send items with Intelliprint in a number of ways.
Diagram or screenshot for the "Choose a Content Strategy" doc page: visual that anchors what this doc explains (request flow, dashboard surface, or worked example).
Awaiting uploadOn this page
- Files: You can upload pre-generated files to Intelliprint to print and send directly.
- Content: You can generate a print job from text or HTML content.
- Templates: You can generate a print job from any pre-designed template in your account.
Files
You can upload pre-generated PDF, Word, RTF, PNG or JPEG files to be printed and sent as a letter or a postcard directly via the Intelliprint API.
import Intelliprint from 'intelliprint'
const ip = new Intelliprint('your-api-key-here')
import fs from 'fs'
const printJob = await ip.prints.create({
type: 'letter',
file: fs.createReadStream('path/to/my/letter.pdf'),
recipients: [{
address: {
name: 'John Doe',
line: '123 Main Street, Anytown, Anyplace',
postcode: 'AB1 2CD',
country: 'GB'
}
}],
confirmed: false // Set to 'true' when you're ready to start submitting mail for printing.
})
console.log('Print job created:', printJob.id)curl -X POST https://api.intelliprint.net/v1/prints \
-H 'Authorization: YOUR_API_KEY' \
-F 'type=letter' \
-F 'file=@path/to/my/letter.pdf' \
-F 'recipients[0][address][name]=John Doe' \
-F 'recipients[0][address][line]=123 Main Street, Anytown, Anyplace' \
-F 'recipients[0][address][postcode]=AB1 2CD' \
-F 'recipients[0][address][country]=GB' \
-F 'confirmed=false'Text Content
You can provide the text or HTML-formatted content of your mail item directly as a string in the content field.
import Intelliprint from 'intelliprint'
const ip = new Intelliprint('your-api-key-here')
const printJob = await ip.prints.create({
type: 'letter',
content: 'Hello World!\nThis is a letter!',
recipients: [{
address: {
name: 'John Doe',
line: '123 Main Street, Anytown, Anyplace',
postcode: 'AB1 2CD',
country: 'GB'
}
}],
confirmed: false // Set to 'true' when you're ready to start submitting mail for printing.
})
console.log('Print job created:', printJob.id)curl -X POST https://api.intelliprint.net/v1/prints \
-H 'Authorization: YOUR_API_KEY' \
-d 'type=letter' \
-d 'content=Hello World!\nThis is a letter!' \
-d 'recipients[0][address][name]=John Doe' \
-d 'recipients[0][address][line]=123 Main Street, Anytown, Anyplace' \
-d 'recipients[0][address][postcode]=AB1 2CD' \
-d 'recipients[0][address][country]=GB' \
-d 'confirmed=false'Templates
You can design your own templates in the Intelliprint Dashboard.
The Template Designer is available in the Bulk mail → (Create a mailing list) → (Choose or create a template) section.
Once you have created a template, you should find its ID in the URL when you view the template in the Dashboard.
import Intelliprint from 'intelliprint'
const ip = new Intelliprint('your-api-key-here')
import fs from 'fs'
const printJob = await ip.prints.create({
template: 'tmpl_1234567890', // The ID of the template you want to use. //
recipients: [{
address: {
name: 'John Doe',
line: '123 Main Street, Anytown, Anyplace',
postcode: 'AB1 2CD',
country: 'GB'
},
variables: {
salutation: 'Mr.',
qr_value: 'https://customlink.com'
}
}],
confirmed: false // Set to 'true' when you're ready to start submitting mail for printing.
})
console.log('Print job created:', printJob.id)curl -X POST https://api.intelliprint.net/v1/prints \
-H 'Authorization: YOUR_API_KEY' \
-d 'template=tmpl_1234567890' \
-d 'recipients[0][address][name]=John Doe' \
-d 'recipients[0][address][line]=123 Main Street, Anytown, Anyplace' \
-d 'recipients[0][address][postcode]=AB1 2CD' \
-d 'recipients[0][address][country]=GB' \
-d 'recipients[0][variables][salutation]=Mr.' \
-d 'recipients[0][variables][qr_value]=https://customlink.com' \
-d 'confirmed=false'