Bowmark AIdocs

Revision Skincare

Reads and answers Revision Skincare's own Product Finder Quiz (revisionskincare.com/pages/skincare-quiz), returning the site's real computed product…

Reads and answers Revision Skincare's own Product Finder Quiz (revisionskincare.com/pages/skincare-quiz), returning the site's real computed product recommendations.

Domain: revisionskincare.com

Also known as: Revision Skincare, Revision Skincare®, revisionskincare.com

Call it directly

bowmark.providers.revisionskincare.getSkincareQuizQuestions(): Promise<RevisionQuizQuestions>
bowmark.providers.revisionskincare.takeSkincareQuiz(arg: { answers: RevisionQuizAnswer[] }): Promise<RevisionQuizResult>

Functions

FunctionWhat it does
getSkincareQuizQuestionsReads the live Product Finder Quiz's real questions, in order, each with its options and answer type.
takeSkincareQuizSubmits a shopper's answers to the Product Finder Quiz and returns the site's real computed product recommendations.

Types

type RevisionQuestionType = "single-select" | "multi-select";

interface RevisionQuizOption {
  title: string;
}

interface RevisionQuizQuestion {
  questionId: string;
  text: string;
  type: RevisionQuestionType;
  options: RevisionQuizOption[];
}

interface RevisionQuizQuestions {
  quizId: string;
  channelQuizId: string;
  subscriberId: string;
  questions: RevisionQuizQuestion[];
}

interface RevisionQuizAnswer {
  questionId: string;
  type: RevisionQuestionType;
  answer: string | string[];
}

interface RevisionRecommendedProduct {
  productId: string;
  name: string;
  description: string;
  url: string;
  imageUrl: string;
  price: number | null;
  currencyCode: string | null;
  averageRating: number | null;
  approvedReviewsCount: number | null;
}

interface RevisionQuizResult {
  quizResponseId: string;
  title: string;
  subtitle: string;
  products: RevisionRecommendedProduct[];
}

Examples

const { questions } = await bowmark.providers.revisionskincare.getSkincareQuizQuestions();
// questions[0] -> { questionId, text: "What best describes how your skin typically feels?", type: "single-select", options: [...] }

const result = await bowmark.providers.revisionskincare.takeSkincareQuiz({
  answers: [
    { questionId: questions[0].questionId, type: "single-select", answer: questions[0].options[1].title },
  ],
});
// result.products -> the site's own real recommended products for those answers