Discover MeSH Codes
Returns MeSH-based health taxonomy segments (conditions and treatments) along with their targeting availability across PulsePoint targeting methods. Use this endpoint to discover which segments are available for audience vs. contextual targeting, and to retrieve the MeSH codes needed when building tactic targeting.
You do not have to define the segment you are targeting as audience or contextual in your tactic schema, but it is a good filter for understanding which targeting types are based on the page/display and which are based on the audience themselves.
Endpoint
GET
https://lifeapi.pulsepoint.com/RestApi/v2/meta/healthTaxonomy
Query Parameters
| Name | Data Type | Required | Default | Notes |
|---|---|---|---|---|
| segmentType | string | no | all | Filter by segment type. Valid values: condition, treatment. Supports comma-separated values for multiple types |
| targetingType | string | no | all | Filter by targeting availability. Valid values: audience, contextual. Supports comma-separated values |
| targetingMethod | string | no | all | Filter by a specific targeting method. Valid values: healthPopulations, keywordPopulations, healthJourneyPlus, healthPages, sensitiveAreas, inCondition, keywords |
| meshCode | string | no | Filter by specific MeSH code(s). Supports comma-separated values for multiple codes | |
| search | string | no | Free-text search across segment name and description. Minimum 3 characters | |
| sort | ENUM string | no | name | Field to sort by. Valid values: name, meshCode, segmentType |
| order | ENUM string | no | asc | Sort direction. Valid values: asc, desc |
| cursor | string | no | Opaque pagination cursor. Pass the nextCursor value from a previous response to retrieve the next page | |
| limit | integer | no | 50 | Number of results to return. Pass -1 to return all records |
Filtering Logic
- Multiple values for the same parameter use OR logic (e.g.
segmentType=condition,treatmentreturns conditions or treatments) - Different parameters use AND logic (e.g.
segmentType=condition&targetingType=audiencereturns conditions that are available for audience targeting)
Targeting Method Reference
| Targeting Method | Targeting Type |
|---|---|
| healthPopulations | Audience |
| keywordPopulations | Audience |
| healthJourneyPlus | Audience |
| healthPages | Contextual |
| sensitiveAreas | Audience |
| inCondition | Audience |
| keywords | Contextual |
Sample Requests
Get all conditions available for audience targeting
GET https://lifeapi.pulsepoint.com/RestApi/v2/meta/healthTaxonomy?segmentType=condition&targetingType=audience
Search for diabetes-related segments
GET https://lifeapi.pulsepoint.com/RestApi/v2/meta/healthTaxonomy?search=diabetes
Get segments available for a specific targeting method
GET https://lifeapi.pulsepoint.com/RestApi/v2/meta/healthTaxonomy?targetingMethod=healthPopulations
Get segments by specific MeSH codes
GET https://lifeapi.pulsepoint.com/RestApi/v2/meta/healthTaxonomy?meshCode=D003920,D008687,D006973
Response Field List
| Name | Data Type | Notes |
|---|---|---|
| data | array of objects | List of health taxonomy segment objects |
| data.meshCode | string | MeSH (Medical Subject Headings) taxonomy identifier. Use this value when creating tactics with health taxonomy targeting |
| data.name | string | Display name of the segment |
| data.description | string | Detailed description of the condition or treatment |
| data.segmentType | string | Type of segment. Valid values: condition, treatment |
| data.targetingMethods | object | Available targeting methods grouped by targeting type |
| data.targetingMethods.audience | array of strings | List of audience targeting methods that support this segment |
| data.targetingMethods.contextual | array of strings | List of contextual targeting methods that support this segment |
| data.metadata | object | Additional taxonomy metadata. {} if not available |
| data.metadata.taxonomyPath | string | Full taxonomy path for the segment (e.g. Diseases > Metabolic Diseases). null if not available |
| data.metadata.isSensitive | boolean | Whether the segment is flagged as a sensitive area |
| pagination | object | Pagination metadata |
| pagination.limit | integer | The page size used for this response |
| pagination.total | integer | Total number of records matching the query |
| pagination.hasMore | boolean | Whether additional pages of results exist |
| pagination.nextCursor | string | Opaque cursor to pass as the cursor query parameter to retrieve the next page. null if no more pages |
| pagination.nextCursorUrl | string | Full URL for the next page of results. null if no more pages |
Sample Response
{
"data": [
{
"meshCode": "D003920",
"name": "Diabetes Mellitus",
"description": "A metabolic disorder characterized by high blood sugar levels",
"segmentType": "condition",
"targetingMethods": {
"audience": [
"healthPopulations",
"keywordPopulations",
"healthJourneyPlus",
"inCondition"
],
"contextual": [
"healthPages"
]
},
"metadata": {
"taxonomyPath": "Diseases > Nutritional and Metabolic Diseases > Metabolic Diseases",
"isSensitive": false
}
}
],
"pagination": {
"limit": 50,
"total": 1547,
"hasMore": true,
"nextCursor": "eyJtZXNoX2lkIjoiRDAwMzkyMCIsIm9mZnNldCI6MTAwfQ==",
"nextCursorUrl": "/v2/meta/healthTaxonomy?cursor=eyJtZXNoX2lkIjoiRDAwMzkyMCIsIm9mZnNldCI6MTAwfQ==&limit=50"
}
}Errors
| HTTP Status | Error | Description |
|---|---|---|
| 400 | Bad Request | Invalid query parameters, or search value is fewer than 3 characters |
| 422 | Unprocessable Entity | Invalid filter combinations |
Updated 8 days ago
