Get Selected Skills
curl --request GET \
--url https://api.example.com/v1/api/selected-skills/{user_id} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.example.com/v1/api/selected-skills/{user_id}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.example.com/v1/api/selected-skills/{user_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/api/selected-skills/{user_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/api/selected-skills/{user_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/api/selected-skills/{user_id}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/api/selected-skills/{user_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"count": 2,
"data": [
{
"selected_skill_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"user_id": "user-123",
"skill_id": "sk-001",
"sub_skill_id": "sub-001",
"master_skill_id": "ms-001",
"createdAt": "2025-01-15T10:30:00.000Z",
"updatedAt": "2025-01-15T10:30:00.000Z"
}
]
}
Selected Skills
Get Selected Skills
Pull up everything a user has selected so far.
GET
/
api
/
selected-skills
/
{user_id}
Get Selected Skills
curl --request GET \
--url https://api.example.com/v1/api/selected-skills/{user_id} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.example.com/v1/api/selected-skills/{user_id}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.example.com/v1/api/selected-skills/{user_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/api/selected-skills/{user_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/api/selected-skills/{user_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/api/selected-skills/{user_id}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/api/selected-skills/{user_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"count": 2,
"data": [
{
"selected_skill_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"user_id": "user-123",
"skill_id": "sk-001",
"sub_skill_id": "sub-001",
"master_skill_id": "ms-001",
"createdAt": "2025-01-15T10:30:00.000Z",
"updatedAt": "2025-01-15T10:30:00.000Z"
}
]
}
Pass in a user ID, get back their full list of selected skills. If they haven’t selected anything yet, you’ll get an empty array — not an error.
No authentication needed.
Path Parameters
string
required
The ID of the user you want to look up. This is whatever string you’re using as a user identifier in your system.
Response
boolean
Always
true when the request goes through fineinteger
How many skills this user has selected
array
The list of selected skill records. Empty array if none yet.
Show Each record looks like this
Show Each record looks like this
string
A UUID that uniquely identifies this selection. You’ll need this if you want to delete it later.
string
The user this belongs to
string
The skill that was selected
string
The sub-skill category it sits in
string
The master skill category above that
string
When the skill was selected (ISO 8601)
string
Last updated (ISO 8601)
Examples
curl "http://localhost:5000/api/selected-skills/user-123"
const res = await fetch(
"http://localhost:5000/api/selected-skills/user-123"
);
const { data, count } = await res.json();
import requests
res = requests.get(
"http://localhost:5000/api/selected-skills/user-123"
)
print(res.json())
{
"success": true,
"count": 2,
"data": [
{
"selected_skill_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"user_id": "user-123",
"skill_id": "sk-001",
"sub_skill_id": "sub-001",
"master_skill_id": "ms-001",
"createdAt": "2025-01-15T10:30:00.000Z",
"updatedAt": "2025-01-15T10:30:00.000Z"
}
]
}
⌘I

