Properties
| Name | Type | Description |
|---|---|---|
| id | string | The ID of the campaign |
| identifier | string | Custom ID for the campaign |
| name | string | The name of the campaign |
| description | objectnull | The description of the campaign |
| mergeVariables | array | The list of merge variables for the campaign |
| scheduleType | string | The type of schedule for the campaign |
| companyId | string | The ID of the company by whom the campaign was created |
| stampId | objectnull | The default postal stamp for the campaign |
| sender | object | The default return address for the campaign |
| billingId | objectnull | The billing ID used for the campaign |
| status | string | The status of the campaign |
| npdrCategory | string | The Postfilter.nl category for the campaign (requires FeatureFlag) |
| createdAt | string | The date at which the campaign was created |
| updatedAt | string | The date at which the campaign was last updated |
| archivedAt | objectnull | The date at which the campaign was archived |
| destinations | array | List of destinations for the campaign |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/print-one/json-schema/print-one-get-campaign-response-dto-schema.json",
"title": "GetCampaignResponseDto",
"x-generated": "2026-10-31",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/print-one-openapi.json#/components/schemas/GetCampaignResponseDto",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the campaign"
},
"identifier": {
"type": "string",
"description": "Custom ID for the campaign"
},
"name": {
"type": "string",
"description": "The name of the campaign"
},
"description": {
"type": [
"object",
"null"
],
"description": "The description of the campaign"
},
"mergeVariables": {
"description": "The list of merge variables for the campaign",
"nullable": false,
"type": "array",
"items": {
"type": "string"
}
},
"scheduleType": {
"type": "string",
"enum": [
"continuous",
"one-off"
],
"description": "The type of schedule for the campaign"
},
"companyId": {
"type": "string",
"description": "The ID of the company by whom the campaign was created"
},
"stampId": {
"type": [
"object",
"null"
],
"description": "The default postal stamp for the campaign"
},
"sender": {
"description": "The default return address for the campaign",
"nullable": true,
"allOf": [
{
"$ref": "#/$defs/AddressDto"
}
]
},
"billingId": {
"type": [
"object",
"null"
],
"description": "The billing ID used for the campaign"
},
"status": {
"type": "string",
"enum": [
"created",
"running",
"paused",
"completed",
"archived"
],
"description": "The status of the campaign"
},
"npdrCategory": {
"type": "string",
"enum": [
"none",
"all",
"energy",
"financial",
"healthcare",
"charity",
"lotteries",
"media",
"telecom",
"transport",
"leisure",
"webshops"
],
"description": "The Postfilter.nl category for the campaign (requires FeatureFlag)"
},
"createdAt": {
"format": "date-time",
"type": "string",
"description": "The date at which the campaign was created"
},
"updatedAt": {
"format": "date-time",
"type": "string",
"description": "The date at which the campaign was last updated"
},
"archivedAt": {
"type": [
"object",
"null"
],
"description": "The date at which the campaign was archived"
},
"destinations": {
"description": "List of destinations for the campaign",
"type": "array",
"items": {
"oneOf": [
{
"$ref": "#/$defs/ContinuousCampaignDestinationDto"
},
{
"$ref": "#/$defs/OneOffCampaignDestinationDto"
}
]
}
}
},
"required": [
"id",
"identifier",
"name",
"description",
"mergeVariables",
"scheduleType",
"companyId",
"stampId",
"sender",
"billingId",
"status",
"createdAt",
"updatedAt",
"archivedAt",
"destinations"
],
"$defs": {
"AddressDto": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"address": {
"type": "string"
},
"addressLine2": {
"type": "string"
},
"postalCode": {
"type": "string"
},
"city": {
"type": "string"
},
"country": {
"type": "string"
}
},
"required": [
"name",
"address",
"postalCode",
"city",
"country"
]
},
"ContinuousCampaignDestinationDto": {
"type": "object",
"properties": {
"destination": {
"type": "array",
"description": "Destination for the campaign",
"items": {
"type": "string",
"enum": [
"NETHERLANDS",
"GERMANY",
"INTERNATIONAL"
]
}
},
"threshold": {
"type": "number",
"description": "The threshold for the destination, which determines the minimum number of orders required to trigger the delivery",
"minimum": 1
},
"product": {
"type": "string",
"enum": [
"POSTCARD_A5",
"POSTCARD_A6",
"POSTCARD_SQ15",
"POSTCARD_MAXI",
"POSTCARD_DIN_LONG",
"GREETINGCARD_SQ14",
"LETTER_A4",
"SELFMAILER_MAXI"
],
"description": "The product used for this destination"
},
"finish": {
"type": "string",
"enum": [
"GLOSSY",
"MATTE"
],
"description": "The finish type for the product used in this destination"
},
"designId": {
"type": "string",
"description": "The ID of an existing design used for this destination"
},
"variablesFallback": {
"type": "object",
"additionalProperties": {
"oneOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
}
]
},
"description": "Optional personalization data (can be an empty object)"
},
"enabled": {
"type": "boolean",
"description": "Wether the destination is enabled or not"
},
"lockedAt": {
"type": [
"object",
"null"
],
"description": "The date at which the destination was locked"
},
"nextSendDate": {
"type": "date",
"description": "The ISO date of the next shipment day"
}
},
"required": [
"destination",
"threshold",
"product",
"finish",
"nextSendDate"
]
},
"OneOffCampaignDestinationDto": {
"type": "object",
"properties": {
"destination": {
"type": "array",
"description": "Destination for the campaign",
"items": {
"type": "string",
"enum": [
"NETHERLANDS",
"GERMANY",
"INTERNATIONAL"
]
}
},
"threshold": {
"type": "number",
"description": "The threshold for the destination, which determines the minimum number of orders required to trigger the delivery",
"minimum": 1
},
"product": {
"type": "string",
"enum": [
"POSTCARD_A5",
"POSTCARD_A6",
"POSTCARD_SQ15",
"POSTCARD_MAXI",
"POSTCARD_DIN_LONG",
"GREETINGCARD_SQ14",
"LETTER_A4",
"SELFMAILER_MAXI"
],
"description": "The product used for this destination"
},
"finish": {
"type": "string",
"enum": [
"GLOSSY",
"MATTE"
],
"description": "The finish type for the product used in this destination"
},
"designId": {
"type": "string",
"description": "The ID of an existing design used for this destination"
},
"variablesFallback": {
"type": "object",
"additionalProperties": {
"oneOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
}
]
},
"description": "Optional personalization data (can be an empty object)"
},
"enabled": {
"type": "boolean",
"description": "Wether the destination is enabled or not"
},
"lockedAt": {
"type": [
"object",
"null"
],
"description": "The date at which the destination was locked"
},
"deliveryWeekIso": {
"type": "number",
"description": "The ISO week number for the delivery of the destination"
},
"deliveryWeekYear": {
"type": "number",
"description": "The ISO year number for the delivery of the destination"
},
"asapFallback": {
"type": "boolean",
"description": "Wether the campaign should fall back to ASAP delivery if economy threshold is not met"
}
},
"required": [
"destination",
"threshold",
"product",
"finish",
"deliveryWeekIso",
"deliveryWeekYear"
]
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/print-one-get-campaign-response-dto"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.