{ "opencollection": "1.0.0", "info": { "name": "Integration API - Consumer to Extole Audiences Profiles API", "version": "1.0" }, "request": { "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "items": [ { "info": { "name": "Profiles", "type": "folder" }, "items": [ { "info": { "name": "Get share event status", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/events/share/status/:pollingId", "params": [ { "name": "pollingId", "value": "", "type": "path" } ] }, "docs": "Deprecated. Returns the processing status for a prior `POST /api/v4/events/share` call identified by `pollingId`." }, { "info": { "name": "Get the authenticated consumer profile", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me" }, "docs": "Returns the profile of the consumer identified by the supplied access token. The response includes the consumer's identity attributes (email, partner user id, name), custom data fields stored in `parameters`, and consent state." }, { "info": { "name": "Update the authenticated consumer profile", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v4/me", "body": { "type": "json", "data": "{}" } }, "docs": "Updates identity attributes and consent fields on the profile of the consumer identified by the access token." }, { "info": { "name": "List advocate relationships", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/advocates" }, "docs": "Deprecated. Returns advocates who referred the authenticated consumer." }, { "info": { "name": "List assets for the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/assets" }, "docs": "Returns all assets attached to the profile of the consumer identified by the access token. Assets are binary or text files such as wallet passes, QR codes, or uploaded images." }, { "info": { "name": "Create an asset for the authenticated consumer", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v4/me/assets", "body": { "type": "multipart-form", "data": [ { "name": "asset", "type": "text", "value": "" }, { "name": "file", "type": "text", "value": "" } ] } }, "docs": "Uploads a new asset and attaches it to the authenticated consumer's profile. Supply asset metadata in the `asset` form field and the file content in the `file` form field." }, { "info": { "name": "Download an asset by name", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/assets/download", "params": [ { "name": "name", "value": "", "type": "query" } ] }, "docs": "Streams the binary or text content of the asset matching the `name` query parameter on the authenticated consumer's profile. Returns HTTP 302 if the content is hosted at a remote URL; returns HTTP 200 with the raw content otherwise." }, { "info": { "name": "Get an asset by ID", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/assets/:assetId", "params": [ { "name": "assetId", "value": "", "type": "path" } ] }, "docs": "Returns metadata for the asset identified by `assetId` on the authenticated consumer's profile. Use the download endpoints to retrieve the asset content." }, { "info": { "name": "Delete an asset by ID", "type": "http" }, "http": { "method": "DELETE", "url": "https://{brand}.extole.io/api/v4/me/assets/:assetId", "params": [ { "name": "assetId", "value": "", "type": "path" } ] }, "docs": "Removes the asset identified by `assetId` from the authenticated consumer's profile and returns the deleted asset metadata." }, { "info": { "name": "Download an asset by ID", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/assets/:assetId/download", "params": [ { "name": "assetId", "value": "", "type": "path" } ] }, "docs": "Streams the binary or text content of the asset identified by `assetId`. Returns HTTP 302 if the content is hosted at a remote URL; returns HTTP 200 with the raw content otherwise." }, { "info": { "name": "List audience memberships", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/audience-memberships" }, "docs": "Returns audience memberships for the authenticated consumer, including eligibility audiences that affect program participation." }, { "info": { "name": "List friends for the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/friends" }, "docs": "Deprecated. Returns friend profiles linked to the authenticated consumer through referral relationships." }, { "info": { "name": "List journeys for the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/journeys", "params": [ { "name": "container", "value": "", "type": "query" }, { "name": "type", "value": "", "type": "query" } ] }, "docs": "Returns journey records for the consumer identified by the access token. Filter by `container` or `type` (journey name) to narrow the result set." }, { "info": { "name": "Get profile parameters for the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/parameters" }, "docs": "Returns all custom data fields stored in `parameters` on the profile of the consumer identified by the access token." }, { "info": { "name": "Update multiple profile parameters", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v4/me/parameters", "body": { "type": "json", "data": "{}" } }, "docs": "Creates or updates multiple custom data fields on the authenticated consumer's profile in a single request. Omitted fields are left unchanged." }, { "info": { "name": "List referrals from the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/referrals-from-me" }, "docs": "Returns referral relationships where the authenticated consumer is the advocate who referred others." }, { "info": { "name": "List referrals to the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/referrals-to-me" }, "docs": "Returns referral relationships where the authenticated consumer is the referred friend." }, { "info": { "name": "Get reward redemption status", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/rewards/status", "params": [ { "name": "polling_id", "value": "", "type": "query", "description": "Polling identifier returned by the reward claim call." }, { "name": "reward_name", "value": "", "type": "query", "description": "The configured name of the reward to look up." }, { "name": "partner_event_id", "value": "", "type": "query", "description": "The partner-supplied event identifier that originated the reward." } ] }, "docs": "Returns the current state of a pending or completed reward redemption for the authenticated consumer. Supply exactly one of `polling_id` (returned by a prior reward claim call), `reward_name` (the configured reward name), or `partner_event_id` (the originating partner event identifier). Poll this endpoint until the reward reaches a terminal state." }, { "info": { "name": "Get verification email status", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/send-verification-email/status/:pollingId", "params": [ { "name": "pollingId", "value": "", "type": "path" } ] }, "docs": "Deprecated. Returns the processing status for a prior verification email send identified by `pollingId`." }, { "info": { "name": "List shareables for the authenticated consumer (legacy)", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/shareables" }, "docs": "Deprecated. Use `GET /api/v6/me/shareables` instead. Returns all shareables owned by the authenticated consumer." }, { "info": { "name": "Create a shareable (legacy)", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v4/me/shareables", "body": { "type": "json", "data": "{}" } }, "docs": "Deprecated. Use `POST /api/v6/me/shareables` instead. Creates a new shareable for the authenticated consumer." }, { "info": { "name": "Get shareable creation status (legacy)", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/shareables/status/:polling_id", "params": [ { "name": "polling_id", "value": "", "type": "path" } ] }, "docs": "Deprecated. Returns the processing status for an asynchronous shareable creation identified by `polling_id`." }, { "info": { "name": "Get a shareable by ID (legacy)", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/shareables/:shareable_id", "params": [ { "name": "shareable_id", "value": "", "type": "path" }, { "name": "consumer_event.source", "value": "", "type": "query" } ] }, "docs": "Deprecated. Use `GET /api/v6/me/shareables/{code}` instead. Returns the shareable identified by `shareable_id` when it belongs to the authenticated consumer." }, { "info": { "name": "Update a shareable (legacy)", "type": "http" }, "http": { "method": "PUT", "url": "https://{brand}.extole.io/api/v4/me/shareables/:shareable_id", "params": [ { "name": "shareable_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Deprecated. Updates the shareable identified by `shareable_id` on the authenticated consumer's profile." }, { "info": { "name": "List shares for the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/shares", "params": [ { "name": "partner_share_id", "value": "", "type": "query" }, { "name": "partner_id", "value": "", "type": "query", "description": "A partner id using this format: :" } ] }, "docs": "Returns shares recorded for the authenticated consumer. Filter by `partner_share_id` or `partner_id` to narrow the result set." }, { "info": { "name": "Get a share by ID", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/shares/:shareId", "params": [ { "name": "shareId", "value": "", "type": "path" } ] }, "docs": "Returns the share identified by `shareId` when it belongs to the authenticated consumer." }, { "info": { "name": "List steps for the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/me/steps", "params": [ { "name": "campaign_id", "value": "", "type": "query" }, { "name": "program_label", "value": "", "type": "query" }, { "name": "step_name", "value": "", "type": "query" }, { "name": "quality", "value": "", "type": "query" }, { "name": "partner_event_id_name", "value": "", "type": "query" }, { "name": "partner_event_id_value", "value": "", "type": "query" } ] }, "docs": "Returns program steps completed by the authenticated consumer. Filter by `campaign_id`, `program_label`, `step_name`, or `quality` to narrow the result set." }, { "info": { "name": "Look up shareables by code (legacy)", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/shareable", "params": [ { "name": "code", "value": "", "type": "query" } ] }, "docs": "Deprecated. Returns shareables matching the `code` query parameter." }, { "info": { "name": "Create a shareable (legacy)", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v4/shareable", "body": { "type": "json", "data": "{}" } }, "docs": "Deprecated. Use `POST /api/v6/me/shareables` instead. Creates a shareable for the authenticated consumer." }, { "info": { "name": "Get shareable creation status (legacy)", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/shareable/status/:polling_id", "params": [ { "name": "polling_id", "value": "", "type": "path" } ] }, "docs": "Deprecated. Returns the processing status for an asynchronous shareable creation identified by `polling_id`." }, { "info": { "name": "Get a shareable by ID (legacy)", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/shareable/:shareable_id", "params": [ { "name": "shareable_id", "value": "", "type": "path" } ] }, "docs": "Deprecated. Returns the shareable identified by `shareable_id`." }, { "info": { "name": "List shares", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/shares", "params": [ { "name": "partner_share_id", "value": "", "type": "query" }, { "name": "partner_id", "value": "", "type": "query", "description": "A partner id using this format: :" } ] }, "docs": "Deprecated. Returns shares matching optional `partner_share_id` or `partner_id` filters. For the authenticated consumer's shares use `GET /api/v4/me/shares` instead." }, { "info": { "name": "Get a share by ID", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v4/shares/:share_id", "params": [ { "name": "share_id", "value": "", "type": "path" } ] }, "docs": "Deprecated. Returns the share identified by `share_id`. For the authenticated consumer's shares use `GET /api/v4/me/shares/{shareId}` instead." }, { "info": { "name": "Get custom share status", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v5/custom/share/status/:pollingId", "params": [ { "name": "pollingId", "value": "", "type": "path" } ] }, "docs": "Deprecated. Returns the processing status for a prior `POST /api/v5/custom/share` call identified by `pollingId`." }, { "info": { "name": "List shareables for the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v6/me/shareables", "params": [ { "name": "key", "value": "", "type": "query" }, { "name": "label", "value": "", "type": "query" } ] }, "docs": "Returns shareables owned by the consumer identified by the access token. Filter by `key` or `label` to narrow the result set." }, { "info": { "name": "Create a shareable for the authenticated consumer", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v6/me/shareables", "body": { "type": "json", "data": "{}" } }, "docs": "Creates a new shareable link for the authenticated consumer. Returns the shareable with its assigned code and share URL." }, { "info": { "name": "Get a shareable by code", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/api/v6/me/shareables/:code", "params": [ { "name": "code", "value": "", "type": "path" } ] }, "docs": "Returns the shareable identified by `code` when it belongs to the authenticated consumer." }, { "info": { "name": "Submit a share event", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v4/events/share", "body": { "type": "json", "data": "{}" } }, "docs": "Deprecated. Use `POST /api/v6/email/share` instead. Records a share event on behalf of the authenticated advocate and returns a `polling_id` for status polling." }, { "info": { "name": "Send a profile verification email", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v4/me/send-verification-email", "body": { "type": "json", "data": "{}" } }, "docs": "Deprecated. Sends a verification email to confirm the authenticated consumer's email address. Returns a `polling_id` for status polling." }, { "info": { "name": "Submit a custom share event", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v5/custom/share", "body": { "type": "json", "data": "{}" } }, "docs": "Deprecated. Use event-based sharing instead. Records a custom share on behalf of the authenticated advocate and returns a `polling_id` for status polling." }, { "info": { "name": "Send referral email shares in batch (legacy)", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v5/email/share/batch", "body": { "type": "json", "data": "{}" } }, "docs": "Deprecated. Use `POST /api/v6/email/share/batch` instead. Sends referral emails to multiple recipients in a single request." }, { "info": { "name": "Get, create, or update a shareable", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v6/me/shareables/get-create-or-update", "body": { "type": "json", "data": "{}" } }, "docs": "Returns an existing shareable, creates one if missing, or updates it when the request data differs. Combines get-or-create with in-place updates." }, { "info": { "name": "Get or create a shareable", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/api/v6/me/shareables/get-or-create", "body": { "type": "json", "data": "{}" } }, "docs": "Returns an existing shareable matching the request criteria or creates one if none exists. Idempotent helper for mobile and headless integrations." }, { "info": { "name": "Set a single profile parameter", "type": "http" }, "http": { "method": "PUT", "url": "https://{brand}.extole.io/api/v4/me/parameters/:parameter_name", "params": [ { "name": "parameter_name", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Creates or updates one named custom data field on the authenticated consumer's profile. The parameter name is supplied in the `parameter_name` path segment." }, { "info": { "name": "List public steps for the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/v4/me/public-steps", "params": [ { "name": "campaign_id", "value": "", "type": "query" }, { "name": "program_label", "value": "", "type": "query" }, { "name": "step_name", "value": "", "type": "query" } ] }, "docs": "Returns program steps for the authenticated consumer that are visible in public scope. Filter by `campaign_id`, `program_label`, or `step_name` to narrow the result set." }, { "info": { "name": "List all shares for the authenticated consumer", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/v4/me/shares-all" }, "docs": "Returns every share recorded for the authenticated consumer without partner filters." }, { "info": { "name": "getOptout", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/v4/optout/:secure_email", "params": [ { "name": "secure_email", "value": "", "type": "path" } ] } }, { "info": { "name": "updateOptout", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/v4/optout/:secure_email", "params": [ { "name": "secure_email", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } } }, { "info": { "name": "Validate a postal address", "type": "http" }, "http": { "method": "POST", "url": "https://{brand}.extole.io/v6/address/validate", "body": { "type": "json", "data": "{}" } }, "docs": "Validates and normalizes the postal address in the request body. Returns corrected address fields and validation status when the address can be verified." }, { "info": { "name": "Get a shareable link", "type": "http" }, "http": { "method": "GET", "url": "https://{brand}.extole.io/v3/shareables/:code", "params": [ { "name": "code", "value": "", "type": "path" } ] }, "docs": "Returns the v3 shareable link for the specified code, including the participant and campaign context resolved at runtime." } ] } ], "bundled": true }