Public profile by passport number
GET /partner/{passportNumber}
Parameters
- passportNumber
- Six letters or digits, case-insensitive (for example AB12CD). Use passportNumber, not the partnerId UUID.
Example response · 200 OK · HTML
Abbreviated HTML showing the profile content. The full page includes the Partner Passport layout. Values are illustrative.
<main>
<h1>Wanderline Digital</h1>
<p>wanderline.example</p>
<section>
<h2>About the publisher</h2>
<p>A fictional travel and lifestyle publisher.</p>
</section>
</main>
JSON API by passport number
GET /api/v1/partner/{passportNumber}
Parameters
- passportNumber
- Six letters or digits, case-insensitive (for example AB12CD). Use passportNumber, not the partnerId UUID.
Example response · 200 OK · JSON
Fictional values matching the database-backed public profile response. The profile is returned directly, without a data wrapper.
{
"partnerId": "b9ac4d64-19ec-44db-88d1-48b7c72f21c2",
"passportNumber": "AB12CD",
"status": "verified",
"displayName": "Wanderline Digital",
"domain": "wanderline.example",
"logoUrl": "https://partnerpassport.io/api/partners/AB12CD/logo",
"website": "https://wanderline.example",
"description": "A fictional travel and lifestyle publisher.",
"markets": [
{
"id": 1,
"code": "GB",
"name": "United Kingdom"
}
],
"sectors": [
{
"id": 3,
"name": "Travel"
}
],
"promotionMethods": [
{
"id": 1,
"name": "Content"
}
],
"audience": {
"monthlyVisitors": 25000,
"socialFollowers": 8000
},
"contacts": {
"partnerships": "partners@wanderline.example",
"socialLinks": {
"facebook": "",
"instagram": "",
"tiktok": "",
"youtube": "",
"linkedin": ""
}
},
"networks": [
{
"id": 1,
"code": "example-network",
"name": "Example Network",
"externalPartnerId": "DEMO-1042"
}
],
"demographics": {
"ageGroups": [],
"socioEconomicGroups": [],
"householdGroups": [],
"interests": [],
"genderSplit": null,
"primaryCountry": {
"id": 1,
"code": "GB",
"name": "United Kingdom"
},
"reachType": "National",
"regions": [],
"otherInterest": "",
"lastUpdated": null
},
"lastUpdated": "2026-09-17T12:00:00Z"
}
Public profile by network-specific ID
GET /partner/{network}/{id}
Parameters
- network
- The network's configured code: lowercase letters, digits, underscores or hyphens. Not its numeric ID.
- id
- The externalPartnerId within that network, matched exactly and case-sensitively. Treat as a string, preserve leading zeros and URL-encode it as a path segment.
Example response · 200 OK · HTML
Abbreviated HTML showing the profile content. The full page includes the Partner Passport layout. Values are illustrative.
<main>
<h1>Wanderline Digital</h1>
<p>wanderline.example</p>
<section>
<h2>About the publisher</h2>
<p>A fictional travel and lifestyle publisher.</p>
</section>
</main>
JSON API by network-specific ID
GET /api/v1/partner/{network}/{id}
Parameters
- network
- The network's configured code: lowercase letters, digits, underscores or hyphens. Not its numeric ID.
- id
- The externalPartnerId within that network, matched exactly and case-sensitively. Treat as a string, preserve leading zeros and URL-encode it as a path segment.
Example response · 200 OK · JSON
Fictional values matching the database-backed public profile response. The profile is returned directly, without a data wrapper.
{
"partnerId": "b9ac4d64-19ec-44db-88d1-48b7c72f21c2",
"passportNumber": "AB12CD",
"status": "verified",
"displayName": "Wanderline Digital",
"domain": "wanderline.example",
"logoUrl": "https://partnerpassport.io/api/partners/AB12CD/logo",
"website": "https://wanderline.example",
"description": "A fictional travel and lifestyle publisher.",
"markets": [
{
"id": 1,
"code": "GB",
"name": "United Kingdom"
}
],
"sectors": [
{
"id": 3,
"name": "Travel"
}
],
"promotionMethods": [
{
"id": 1,
"name": "Content"
}
],
"audience": {
"monthlyVisitors": 25000,
"socialFollowers": 8000
},
"contacts": {
"partnerships": "partners@wanderline.example",
"socialLinks": {
"facebook": "",
"instagram": "",
"tiktok": "",
"youtube": "",
"linkedin": ""
}
},
"networks": [
{
"id": 1,
"code": "example-network",
"name": "Example Network",
"externalPartnerId": "DEMO-1042"
}
],
"demographics": {
"ageGroups": [],
"socioEconomicGroups": [],
"householdGroups": [],
"interests": [],
"genderSplit": null,
"primaryCountry": {
"id": 1,
"code": "GB",
"name": "United Kingdom"
},
"reachType": "National",
"regions": [],
"otherInterest": "",
"lastUpdated": null
},
"lastUpdated": "2026-09-17T12:00:00Z"
}
JSON API domain search
GET /api/v1/partner?domain={domain}&page=1&pageSize=10
Parameters
- domain
- Required query parameter, supplied exactly once. Case-insensitive literal substring of the stored domain (1–253 characters after trimming). Use ASCII/punycode for international domains. Percent signs, underscores and backslashes are literal, not SQL wildcards. Missing, repeated, blank, overlong or control-character input returns 400. Results are sorted by domain. No matches or a page beyond the results returns an empty data array with pagination metadata.
- page
- Optional page number, default 1. A single integer from 1 to 2147483647. Invalid or repeated values return 400.
- pageSize
- Optional results per page, default 10. A single integer from 1 to 100. Invalid or repeated values return 400.
Example response · 200 OK · JSON
Returns matching verified partner summaries in a data array, sorted by domain, with pagination metadata: page, pageSize, total and totalPages. Defaults to page 1 with 10 results; pageSize can be 1–100. No matches or an out-of-range page returns 200 with an empty data array; no matches has totalPages 0. Use passportNumber to fetch the full profile.
{
"data": [
{
"partnerId": "b9ac4d64-19ec-44db-88d1-48b7c72f21c2",
"passportNumber": "AB12CD",
"displayName": "Wanderline Digital",
"domain": "wanderline.example",
"status": "verified",
"description": "A fictional travel and lifestyle publisher."
}
],
"pagination": {
"page": 1,
"pageSize": 10,
"total": 1,
"totalPages": 1
}
}
The network lookup uses a lowercase network code and an external partner ID. Returned network objects include id, name, code and externalPartnerId. “example-network” and all sample IDs are fictional, not working demo lookups.