Profiles Asking

Unlock Profile Insights with Interactive Questions

In this article, we'll take a look at how HrFlow.ai Profile Asking API works by interacting with the endpoint 🧠 Ask a question to a Profile indexed in a Source. We will test queries through our public HrFlow.ai Postman collection.

The goal to seamlessly integrate HrFlow.ai into your website infrastructure, enabling personalized interactions with professional profiles. Whether it's for recruitment, recommendations, or other specific requirements, our Asking Profile API empowers users to effortlessly inquire and extract explicit or implicit information from profiles, enhancing the overall user experience.

πŸ“˜

Prerequisites

  1. ✨ Create a Workspace
  2. πŸ”‘ Get your API Key
  3. 🧠 Activate Asking API
  4. πŸ”Œ Create, Configure a Source

πŸ“˜

API Endpoint

Get more information about the endpoint 🧠 Ask a question to a Profile indexed in a Source.

Step 1: Index Profiles in your Source

Profiles in HrFlow.ai are indexed in special folders called Sources. To create a source, you can refer to this page πŸ”Œ Create, Configure a Source.

Depending on the nature of your data, indexing a profile can be done through one of the two following ways:

  • From structured information
    In the case of highly-structured data, the first step consists of adapting your data to the HrFlow.ai Profile Object format. Please refer to πŸ“– Profile Object for all the required fields and values structures. Then, using the indexing endpoint, you can index your Profile Object in your desired Source. A complete description of the indexing endpoint can be found at πŸ’Ύ Index a Profile in a Source.

  • From a resume file
    Besides structured data, we also have the case of unstructured documents. The most commonly encountered example is raw resumes. These documents need to be parsed by our Parsing API. A complete description of the parsing endpoint can be found at 🧠 Parse a Resume in a Source). Note that the Parsing module structures the CV and automatically indexes it afterward in the specified Source.

πŸ“˜

Index Profile with a reference

  • Specifying a reference eases Profile updates in HrFlow.ai.

Step 2: Get your First Asking Results with Postman

Let's dig deeper into our Profile Asking endpoint possibilities. In the following, we are going to use our Postman Collection and focus on the endpoint that allows us to 🧠 Ask a question to a Profile indexed in a Source.

πŸ“˜

HrFlow.ai Postman

Check our publication on HrFlow.ai Postman to get started with our Postman collection.

Run in Postman

1. Configure your Postman Environment

Once you have followed the first steps described in this article, you will land on this page:

First, click on the "Environments" tab on the left side of your Postman window. Then, fill in the Empty - Environment template with the correct values. The compulsory variables for Profiles Asking are:

  • x-api-key: follow the steps from πŸ”‘ API Authentication to retrieve it
  • x-user-email: follow the steps from πŸ”‘ API Authentication to retrieve it
  • source_key: The source where the profile is indexed
  • profile_key/profile_reference: the key/reference of the Profile to whom we wish to ask a question

Finally, save the environment and ensure that you selected Empty - Environment as your current environment.

2. Ask a question to Profile in a Source

Now that the environment is selected, we can test our first request to Ask a question to a Profile indexed in a Source. To do so, fill in your parameters :

  • [MANDATORY] questions: the list of questions you wish to pose to the profile. Your list should consist of strings. For example :
    • Single question :["What is the position of the candidate who is not in an internship and for whom this is their first job?"]
    • Multi questions :
      ["Summarize the candidate's strengths", "Are the skills listed in this profile consistent?"]

Let's break down the Asking request's response. The field data of the response object is a list of answers in order they were asked. Consequently, the first answer will correspond to the answer for the first question, the second answer will correspond to the answer for the second question, and so on.

  • To effectively formulate and pose questions to the Profile Asking, it is crucial to be clear and precise in your inquiries.
  • The model has the capability to comprehensively analyze all fields within a Profile.
  • The model is trained to respond in the active voice, providing direct answers. However, it is possible for the model to give inconsistent or incorrect responses, so it's advisable to validate information when necessary.
  • For closed-ended questions, where you expect a binary response (yes/no), you can specify the choices within the question. For example: Considering any inconsistencies in experiences, education, or skills, do you suspect any falsehoods in this profile? (yes/no)
  • For some specific closed-ended questions, it might be more suitable to use the Tagging API. For instance : What type of contract is the candidate seeking? (permanent, temporary, internship)
  • You can also set a default value if you believe the answer may not necessarily be found within the profile. For example : Does the candidate have experience in collaborative work with multicultural teams? (default: n/a) . Generally, when the model is unsure and no default value is specified, it may respond with "N/A" or "null."
  • If you want the model to provide a response in a specific format, such as a JSON list of entities, you can structure your question accordingly. For example : What best describes the candidate among the following soft skills (returns a JSON list): passionate, teamwork, lack of experience, autonomous, foresight.. A valid response can be expressed as a string ["teamwork", "autonomous"]
  • Lastly, it's worth noting that the model is multilingual, and it will respond in the same language in which the question was posed.

Some examples of questions and their answer

QuestionAnswer
What is the position of the candidate who is not in an internship and for whom this is their first job?CEO and Product Architect
What is the candidate's name?Elon Musk
What is the candidate's phone number?+33600000000
When did the candidate complete their studies? (year)1995
What is the name of the company from the candidate's last experience?SpaceX
What is the position from the candidate's last experience?CEO and CTO
Does the candidate have volunteer or community engagement experience?Yes
List the titles of volunteer or community engagement experiences.["SpaceX STEM Education Programs"]
Does the candidate have a driving license?Yes
Are the skills listed in this profile consistent?Yes
Considering any inconsistencies in experiences, education, or skills, do you suspect any falsehoods in this profile?No
Does the candidate have experience in collaborative work with multicultural teams?Yes
Does the candidate have professional recommendations or references available?No
Does the candidate have certifications or additional qualifications relevant to a plumber?No
Summarize the candidate's strengthsElon Musk is a versatile entrepreneur with a strong background in various industries and a Master of Business Administration degree from a prestigious institution. He has hands-on experience in space exploration, electric vehicle manufacturing, renewable energy, and artificial intelligence. ELON has demonstrated his ability to lead companies and initiatives, as evidenced by his role at SpaceX and Tesla. His technical skills are complemented by his proficiency in multiple areas, including engineering, innovation, and technology development. He also has a creative side and has been involved in groundbreaking projects such as the development of reusable rockets and the promotion of sustainable energy solutions.
How could the candidate improve their CV to make it more attractive for a developer position ?To enhance the attractiveness of the CV for a developer position, the candidate, Elon Musk, could consider adding specific technical skills and programming languages that are relevant to software development. Including projects or contributions to open-source software would also be beneficial. Furthermore, detailing any experience with software development methodologies, such as Agile or Scrum, and demonstrating a track record of successful software projects could greatly improve the CV's appeal to potential employers looking for developers.
How does the candidate manage stress and pressure at work ?The candidate, Elon Musk, likely manages stress and pressure at work through a combination of time management and critical thinking skills, as indicated by the skills listed in the profile. Additionally, his role as a CEO and Product Architect at Tesla Motors and CEO and CTO at SpaceX suggests that he has considerable experience dealing with high-stress situations. His ability to focus on future goals and maintain a goal-oriented approach, as well as his leadership and communication skills, likely also play a significant role in his stress management strategies.
What is the candidate's most significant professional achievement?Elon Musk's most significant professional achievement includes his role as CEO and Product Architect at Tesla Motors, where he oversaw the company's product strategy, including the design, engineering, and manufacturing of increasingly affordable electric vehicles for mainstream consumers. He also received the Global Green 2006 product design award for the Tesla Roadster design.
Explain how your career began?My career began as a Co-founder of Zip2, where I created a platform that allowed newspapers to offer additional commercial services to their customers. This early venture laid the foundation for my entrepreneurial journey and set the stage for subsequent successes in various industries.

Advanced Topics

1. Try Asking in your Favorite Programming Language

Once you have tried the request in Postman, you can directly convert it to work with your favorite programming language. Here is an example with Python and the module Requests.

import requests
import json

url = "https://api.hrflow.ai/v1/profile/asking"

questions = [
  "What is the position of the candidate who is not in an internship and for whom this is their first job?",
  "Are the skills listed in this profile consistent?"
]
payload = {
  "source_key": "FILL_WITH_SOURCE_KEY",
  "key": "FILL_WITH_PROFILE_KEY",
  "questions": json.dumps(questions)
}
headers = {
  'X-USER-EMAIL': 'FILL THIS',
  'X-API-KEY': 'FILL THIS',
  'Content-Type': 'application/json'
}

response = requests.request("GET", url, headers=headers, data=payload)
print(response.json())