Journey Docs
Partner APIFulfillments

Search Fulfillments

Search fulfillments with rich filtering and enriched response

GET/partner/fulfillments/search

Overview

Enriched fulfillment search. Returns nested member, offer, reservation, and property summaries in a single response — purpose-built for fulfillment management UIs that need to display all context without additional lookups.

Unlike GET /partner/fulfillments, this endpoint:

  • Returns enriched sub-objects (member name, offer details, property info)
  • Supports full-text search across offer name, verification code, and member name
  • Supports date-range filters across claimed/expired/fulfilled timestamps
  • Supports redemption type filtering (defaults to excluding static offers)
  • Includes operatorNotes, howToRedeem, and staffInstructions from the offer

Authentication

Requires a partner API key with the partner:fulfillments:read scope, sent as X-API-Key.

Query Parameters

qquerystring

Full-text search across offer name, verification code, and member name. Minimum 2 characters.

statusquerystring

Comma-separated statuses: claimed, fulfilled, pending_approval, approved, rejected, expired

redemptionTypequerystring

Comma-separated redemption types: direct, requireApproval, externalCode, static, propertyInternal, journeyInternal, user, notification, giveaway.

Default behavior when omitted: excludes static only — all other types are returned. Pass an explicit list to restrict to specific types.

propertyIdquerynumber

Filter by internal property ID

organizationIdquerystring

External org ID (HXP UUID or WorkOS org ID). Required for superadmin keys querying a specific org; ignored for org-scoped keys.

claimedAfterquerystring

ISO 8601 — include fulfillments claimed on or after this date

claimedBeforequerystring

ISO 8601 — include fulfillments claimed on or before this date

expiresAfterquerystring

ISO 8601 — include fulfillments expiring on or after this date

expiresBeforequerystring

ISO 8601 — include fulfillments expiring on or before this date

fulfilledAfterquerystring

ISO 8601 — include fulfillments completed on or after this date

fulfilledBeforequerystring

ISO 8601 — include fulfillments completed on or before this date

offsetquerynumberdefault: 0

Pagination offset

limitquerynumberdefault: 20

Results per page (max 100)

Response

itemsarrayrequired

Enriched fulfillment records

item fields
idstring
Fulfillment ID
statusstring
claimed | fulfilled | pending_approval | approved | rejected | expired
approvalStatusstring | null
Current approval workflow state
redemptionTypestring
How this fulfillment is redeemed
verificationCodestring | null
Staff verification code
qrCodeUrlstring | null
QR code image URL
pointsChargednumber | null
Points deducted from member
retailValuenumber | null
USD retail value of the item
claimedAtstring | null
ISO 8601 timestamp
fulfilledAtstring | null
ISO 8601 timestamp
expiresAtstring | null
ISO 8601 timestamp
canApproveboolean
Whether the calling key can approve this fulfillment
canFulfillboolean
Whether the calling key can mark this as fulfilled
operatorNotesstring | null
Internal notes visible to property staff
memberobject

{ firstName, lastName, externalMemberId }

offerobject | null

{ name, publicName, imageThumbUrl, categorySlug, categoryName, fulfillmentType, requiresApproval, howToRedeem, staffInstructions }

reservationobject | null

{ externalId, checkIn, checkOut }

propertyobject

{ id, externalId, name }

totalnumberrequired
Total matching fulfillments
offsetnumberrequired
Current offset
limitnumberrequired
Page size used

Request

curl "https://api-prd.cf.journey.com/v1/partner/fulfillments/search?status=pending_approval&limit=20" \
  -H "X-API-Key: jny_xxxx"

Bruno

bruno/Partner/Fulfillments/Search Fulfillments.bru

On this page