openapi: 3.2.0 info: title: Retrieve using Journeys API description: This API allows you to retrieve Journeys and their associated campaigns.
Journey Public API Postman collection version: 1.0.0 contact: name: Adobe Journey Optimizer Team email: support@adobe.com license: name: Adobe Proprietary servers: - url: https://platform.adobe.io description: Production server - url: https://platform-stage.adobe.io description: Staging server security: - BearerAuth: [] tags: - name: Journeys description: Operations related to journey management paths: /ajo/journey: parameters: - $ref: '#/components/parameters/APIKeyParam' - $ref: '#/components/parameters/ImsOrgIdParam' - $ref: '#/components/parameters/SandboxNameParam' get: summary: Get a list of journeys description: Returns a list of journeys based on the provided filters. operationId: getJourneys parameters: - name: filter in: query description: Search filters in URL-encoded format. Supports &-separated fields with basic operators '=', '>', '<', '>=', '<='. required: false schema: type: string example: url_encoded(status=draft,live&metadata.lastModifiedAt>2024-12-25) - name: page in: query description: Page number for pagination (0-based). Used to navigate through multiple pages of results. required: false schema: minimum: 0 type: integer default: 0 example: 0 - name: pageSize in: query description: Number of items per page. Controls how many journeys are returned in a single response. required: false schema: maximum: 100 minimum: 1 type: integer default: 100 example: 20 - name: fields in: query description: Comma-separated list of fields to include in the response. Allows selective field retrieval for performance optimization. required: false schema: type: string example: name,status,metadata,createdBy - name: sort in: query description: Sort criteria in format 'field=direction'. Multiple sorts can be comma-separated. Direction can be 'asc' or 'desc'. required: false schema: type: string example: url_encoded(name=asc,metadata.createdAt=desc) tags: - Journeys responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/PublicJourneyList' '400': description: Bad request '401': description: Unauthorized '500': description: Internal server error /ajo/journey/{id}: parameters: - $ref: '#/components/parameters/APIKeyParam' - $ref: '#/components/parameters/ImsOrgIdParam' - $ref: '#/components/parameters/SandboxNameParam' get: summary: Get journey by ID description: Returns a journey by its ID with optional includes for additional data operationId: getJourneyById tags: - Journeys parameters: - name: id in: path required: true description: The journey ID schema: type: string - name: include in: query required: false description: Comma-separated list of additional data to include in the response (e.g., "campaigns", "surfaces", "rulesets"). Enriches the journey model with related information. Will cause additional overhead and API calls. schema: type: string example: campaigns,rulesets responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/PublicJourney' '400': description: Bad request '401': description: Unauthorized '404': description: Journey not found '500': description: Internal server error components: schemas: OfferUsage: type: object properties: personalization: type: boolean rules: type: boolean CampaignRanking: type: object properties: type: type: string value: type: string CampaignTargets: type: object properties: targetId: type: string secondarySchemaId: type: string ParamMapping: type: object properties: label: type: string paramPath: type: string expression: type: string DecisionPolicyPlacement: type: object properties: decisionPolicyId: type: string placementName: type: string RuleMeta: type: object properties: ruleType: type: string MessageAttributes: type: object properties: decisionPolicies: type: array items: type: string decisionPolicyPlacements: type: array items: $ref: '#/components/schemas/DecisionPolicyPlacement' Trigger: type: object properties: rules: type: array items: $ref: '#/components/schemas/TriggerRule' version: type: integer format: int32 AttributeUsage: type: object properties: content: $ref: '#/components/schemas/ContentUsage' offer: $ref: '#/components/schemas/OfferUsage' dispatch: $ref: '#/components/schemas/DispatchUsage' consent: $ref: '#/components/schemas/ConsentUsage' PublicJourneyList: type: object properties: results: type: array items: $ref: '#/components/schemas/PublicJourney' default: [] page: type: integer default: 0 description: Current page number (0-based) limit: type: integer default: 10 description: Number of items per page pages: type: integer default: 1 description: Total number of pages required: - results - page - limit - pages PesOption: type: object properties: id: type: string contentType: type: string schemaPath: type: string JourneyNode: type: object properties: id: type: string type: type: string name: type: string correlationId: type: string transitions: type: array items: $ref: '#/components/schemas/JourneyNodeTransition' campaign: $ref: '#/components/schemas/PublicCampaign' channel: $ref: '#/components/schemas/Channel' surface: $ref: '#/components/schemas/MessageSurface' sendTimeOptimization: $ref: '#/components/schemas/SendTimeOptimization' audiences: type: array items: $ref: '#/components/schemas/Audience' identityNamespace: type: string throttlingRate: type: integer format: int32 useDelta: type: boolean verbs: type: array items: type: string delay: type: string fallbackOnTimeoutOrError: type: boolean expression: type: string description: type: string paramMappings: type: array items: $ref: '#/components/schemas/ParamMapping' DecisionPolicy: type: object properties: id: type: string enabled: type: boolean type: type: string entityIds: type: array items: type: string monitoredValue: type: string ChannelContext: type: object properties: channelId: type: string channelVersion: type: string Audience: type: object properties: id: type: string name: type: string forcedReentrance: type: boolean incrementalRead: type: boolean waitForAudience: type: boolean waitTime: type: string TrackingOptions: type: object properties: openTrackingEnabled: type: boolean clickTrackingEnabled: type: boolean PublicationPesDetail: type: object properties: id: type: string pesDetails: $ref: '#/components/schemas/PesLinks' pesDetailsEmpty: type: boolean TriggerRule: type: object properties: meta: $ref: '#/components/schemas/RuleMeta' condition: $ref: '#/components/schemas/RuleCondition' JourneyNodeTransition: type: object properties: targetNodeId: type: string targetName: type: string name: type: string expression: type: string conditionType: type: string dates: type: array items: type: string times: type: array items: type: string days: type: array items: type: string counterValue: type: string CampaignPackage: type: object properties: packageId: type: string packageName: type: string status: type: string channel: type: string channelContext: $ref: '#/components/schemas/ChannelContext' enabled: type: boolean languageSettingId: type: string messages: type: array items: $ref: '#/components/schemas/CampaignMessage' attributes: $ref: '#/components/schemas/PackageAttributes' _links: type: object additionalProperties: $ref: '#/components/schemas/Link' execution: $ref: '#/components/schemas/PackageExecution' CampaignMessage: type: object properties: messageId: type: string treatmentId: type: string execution: $ref: '#/components/schemas/MessageExecution' messageAttributes: $ref: '#/components/schemas/MessageAttributes' decisionPolicyVariantId: type: string decisionNodes: type: array items: $ref: '#/components/schemas/DecisionNode' decisionNodeId: type: string Frequency: type: object properties: type: type: string hour: type: integer format: int32 minute: type: integer format: int32 midday: type: string daysOfMonth: type: array items: type: integer format: int32 daysOfWeek: type: array items: type: string interval: type: integer format: int32 MessageExecution: type: object properties: messagePublicationId: type: string PackageExecution: type: object properties: executionId: type: string resumeSpec: $ref: '#/components/schemas/ResumeSpec' type: type: string AttributeItem: type: object properties: name: type: string messagePublicationIds: type: array items: type: string personalization: type: boolean usage: $ref: '#/components/schemas/AttributeUsage' PesParent: type: object properties: id: type: string type: type: string namespace: type: string MessageSurface: type: object properties: id: type: string name: type: string description: type: string publicationId: type: string channelConfiguration: $ref: '#/components/schemas/JsonNode' status: type: string type: type: string channel: type: string createdAt: type: string createdBy: type: string modifiedAt: type: string modifiedBy: type: string version: type: string PublicCampaign: type: object properties: campaignId: type: string versionId: type: string draftVersionId: type: string liveVersionId: type: string name: type: string description: type: string status: type: string schedule: $ref: '#/components/schemas/CampaignSchedule' createdBy: type: string createdByName: type: string createdAt: type: string modifiedBy: type: string modifiedByName: type: string modifiedAt: type: string publishedBy: type: string publishedByName: type: string publishedAt: type: string firstPublishedAt: type: string completedAt: type: string displayStartDate: type: string displayEndDate: type: string labels: type: array items: type: string labelObjects: type: array items: $ref: '#/components/schemas/LabelObject' tags: type: array items: type: string type: type: string campaignType: type: string category: type: string campaignClass: type: string ranking: $ref: '#/components/schemas/CampaignRanking' identityNamespace: type: string audience: $ref: '#/components/schemas/CampaignAudience' createNewProfile: type: boolean selectionStrategy: $ref: '#/components/schemas/SelectionStrategy' objectives: type: array items: type: string languageSettingId: type: string priority: type: integer format: int32 filter: type: string targets: $ref: '#/components/schemas/CampaignTargets' throttleRatePerSec: type: integer format: int32 packages: type: array items: $ref: '#/components/schemas/CampaignPackage' metadata: $ref: '#/components/schemas/CampaignMetadata' actions: type: array items: $ref: '#/components/schemas/CampaignAction' decisionPolicies: type: array items: $ref: '#/components/schemas/DecisionPolicy' attributes: $ref: '#/components/schemas/CampaignAttributes' _links: type: object additionalProperties: $ref: '#/components/schemas/Link' CampaignAttributes: type: object properties: profile: type: array items: $ref: '#/components/schemas/AttributeItem' context: type: array items: $ref: '#/components/schemas/AttributeItem' target: type: array items: $ref: '#/components/schemas/AttributeItem' audience: type: array items: $ref: '#/components/schemas/AttributeItem' unifiedDecisioning: type: array items: $ref: '#/components/schemas/AttributeItem' pesLinks: $ref: '#/components/schemas/PesLinks' publicationPesDetails: type: array items: $ref: '#/components/schemas/PublicationPesDetail' Ruleset: type: object properties: id: type: string name: type: string description: type: string status: type: string ruleSetType: type: string ruleSetDomain: type: string createdAt: type: string modifiedAt: type: string createdBy: type: string modifiedBy: type: string Schedule: type: object properties: startDate: type: string endDate: type: string timezone: type: string useProfileTimezone: type: boolean recurring: type: boolean type: type: string ResumeSpec: type: object properties: executionId: type: string resumableUntil: type: string ContentUsage: type: object properties: personalization: type: boolean DispatchUsage: type: object properties: channels: type: array items: type: string Reentrance: type: object properties: policy: type: string durationInSecs: type: integer format: int32 SendTimeOptimization: type: object properties: enabled: type: boolean sendWithIn: type: integer format: int32 metric: type: string OutboundTrigger: type: object properties: type: type: string startAt: type: string endAt: type: string timezone: type: string expression: type: string frequency: $ref: '#/components/schemas/Frequency' frequencies: type: array items: $ref: '#/components/schemas/Frequency' occurrences: type: integer format: int32 executeAt: type: string JsonNode: type: object InboundSchedule: type: object properties: range: $ref: '#/components/schemas/ScheduleRange' PackageAttributes: type: object properties: sendTimeOptimization: type: boolean burstSpeed: type: boolean inboundSchedule: $ref: '#/components/schemas/InboundSchedule' trigger: $ref: '#/components/schemas/Trigger' ruleset: $ref: '#/components/schemas/Ruleset' surface: $ref: '#/components/schemas/MessageSurface' trackingOptions: $ref: '#/components/schemas/TrackingOptions' ipWarmup: type: boolean sendTimeFor: type: string sendTimeWithin: type: integer format: int32 outboundTrigger: $ref: '#/components/schemas/OutboundTrigger' CampaignAudience: type: object properties: audienceId: type: string audienceType: type: string PublicJourney: type: object properties: id: type: string description: Unique identifier for the journey name: type: string description: Human-readable name of the journey description: type: string description: Detailed description of the journey version: type: string description: Version of the journey type: type: string enum: - read_audience - audience_qualification - unitary - business - unspecified description: Type of journey status: type: string enum: - Testing - Draft - In Review - Deployed - Redeployed - Finished - Stopped - Dry Run - Paused - Unknown description: Current status of the journey imsOrgId: type: string sandboxName: type: string metadata: $ref: '#/components/schemas/Metadata' timeouts: $ref: '#/components/schemas/JourneyTimeouts' priority: type: integer format: int32 schedule: $ref: '#/components/schemas/Schedule' reentrance: $ref: '#/components/schemas/Reentrance' labels: type: array items: type: string metrics: type: array items: type: string ruleset: $ref: '#/components/schemas/Ruleset' profileMergePolicyId: type: string startNodeId: type: string nodes: type: array items: $ref: '#/components/schemas/JourneyNode' DecisionNode: type: object properties: decisionNodeId: type: string Link: type: object properties: href: type: string type: type: string templated: type: boolean method: type: string title: type: string hrefLang: type: string ScheduleRange: type: object properties: startDate: type: string startDateEnabled: type: boolean endDate: type: string endDateEnabled: type: boolean RuleCondition: type: object properties: definition: $ref: '#/components/schemas/ConditionDefinition' type: type: string Metadata: type: object properties: createdBy: type: string createdById: type: string createdAt: type: string lastModifiedBy: type: string lastModifiedById: type: string lastModifiedAt: type: string lastDeployedBy: type: string lastDeployedById: type: string lastDeployedAt: type: string firstDeployedBy: type: string firstDeployedById: type: string firstDeployedAt: type: string CampaignSchedule: type: object properties: startDate: type: string startDateEnabled: type: boolean endDate: type: string endDateEnabled: type: boolean CampaignAction: type: object properties: actionType: type: string actionName: type: string available: type: boolean SelectionStrategy: type: object properties: enabled: type: boolean type: type: string 'on': type: string experimentationSpec: $ref: '#/components/schemas/ExperimentationSpec' JourneyTimeouts: type: object properties: actionExecution: type: integer format: int32 entityEnrichment: type: integer format: int32 ConsentUsage: type: object properties: filter: type: boolean ExperimentationSpec: type: object properties: experimentId: type: string winnerTreatmentId: type: string CampaignMetadata: type: object properties: sourceType: type: string sourceId: type: string sourceVersionId: type: string sourceActionId: type: string batchInstanceId: type: string isTestExecution: type: boolean Channel: type: object properties: id: type: string type: type: string ConditionDefinition: type: object properties: conditions: type: array items: type: object searchType: type: string logic: type: string events: type: array items: type: object additionalProperties: type: string key: type: string matcher: type: string value: type: object values: type: array items: type: object from: type: integer format: int32 to: type: integer format: int32 PesLinks: type: object properties: options: type: array items: $ref: '#/components/schemas/PesOption' parents: type: array items: $ref: '#/components/schemas/PesParent' enforcementRefs: type: array items: type: string empty: type: boolean LabelObject: type: object properties: labelId: type: string labelName: type: string labelCategory: type: string parameters: APIKeyParam: name: x-api-key description: The API key belonging to the calling client. Use the client id from Developer Console. required: true in: header schema: type: string example: 829495afa589475ab56850a702359cf9 SandboxNameParam: name: x-sandbox-name description: Provides the platform sandbox name. required: true in: header schema: type: string example: prod ImsOrgIdParam: name: x-gw-ims-org-id description: The IMS org id for which the action is being taken. required: true in: header schema: type: string example: 0A7F574EBB4C6E1423973F52@AdobeOrg securitySchemes: BearerAuth: type: http scheme: bearer description: The authentication token to access the service. Get from Developer Console