curl --request POST \
--url https://partner-api.ochy-prod.com/shoeRecommendation/form \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"input": {
"form": {
"subject_id": "550e8400-e29b-41d4-a716-446655440000",
"running_experience": "intermediate",
"running_session": "high_frequency",
"weekly_km": "high_volume",
"shoe_purpose": [
"jogging",
"tempo_training"
],
"pain": [
"knee"
],
"weight": 75,
"height": 1.8,
"treadmill": false,
"comfort_heel_cushioning": 60,
"comfort_forefoot_cushioning": 45,
"comfort_shoe_stability": 70,
"comfort_forefoot_flexibility": 55,
"previous_shoes": {
"stability": "neutral",
"drop": "medium_drop",
"carbon_plate": "without_plate",
"shoe_weight": "medium"
}
},
"id_side_view_analysis": "3dde3402-94d7-462e-a784-9306207108dd",
"id_back_view_analysis": "5c482a11-4f50-471f-91f2-af9acb14182f",
"favorite_brands": [
"nike",
"asics"
]
}
}
'import requests
url = "https://partner-api.ochy-prod.com/shoeRecommendation/form"
payload = { "input": {
"form": {
"subject_id": "550e8400-e29b-41d4-a716-446655440000",
"running_experience": "intermediate",
"running_session": "high_frequency",
"weekly_km": "high_volume",
"shoe_purpose": ["jogging", "tempo_training"],
"pain": ["knee"],
"weight": 75,
"height": 1.8,
"treadmill": False,
"comfort_heel_cushioning": 60,
"comfort_forefoot_cushioning": 45,
"comfort_shoe_stability": 70,
"comfort_forefoot_flexibility": 55,
"previous_shoes": {
"stability": "neutral",
"drop": "medium_drop",
"carbon_plate": "without_plate",
"shoe_weight": "medium"
}
},
"id_side_view_analysis": "3dde3402-94d7-462e-a784-9306207108dd",
"id_back_view_analysis": "5c482a11-4f50-471f-91f2-af9acb14182f",
"favorite_brands": ["nike", "asics"]
} }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
input: {
form: {
subject_id: '550e8400-e29b-41d4-a716-446655440000',
running_experience: 'intermediate',
running_session: 'high_frequency',
weekly_km: 'high_volume',
shoe_purpose: ['jogging', 'tempo_training'],
pain: ['knee'],
weight: 75,
height: 1.8,
treadmill: false,
comfort_heel_cushioning: 60,
comfort_forefoot_cushioning: 45,
comfort_shoe_stability: 70,
comfort_forefoot_flexibility: 55,
previous_shoes: {
stability: 'neutral',
drop: 'medium_drop',
carbon_plate: 'without_plate',
shoe_weight: 'medium'
}
},
id_side_view_analysis: '3dde3402-94d7-462e-a784-9306207108dd',
id_back_view_analysis: '5c482a11-4f50-471f-91f2-af9acb14182f',
favorite_brands: ['nike', 'asics']
}
})
};
fetch('https://partner-api.ochy-prod.com/shoeRecommendation/form', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Submit shoe recommendation questionnaire
Step 1 of 3 — Create a shoe recommendation request.
Send the runner questionnaire and references to completed analyses. The server returns a
shoe_recommendation_id that you pass to POST /shoeRecommendation/start, then poll
GET /shoeRecommendation/{shoe_recommendation_id}/result until the status is success.
Subject link: When you set input.form.subject_id, it must be a subject id returned by
POST /subjects (same id you may pass as subject_id on POST /analysis/start). If you
omit subject_id, no subject lookup is performed for that request.
Analyses: At least one of id_side_view_analysis or id_back_view_analysis is required.
Each id must be a video_id from a completed analysis (GET /analysis/{analysis_id}/results
with status: success) that belongs to your account. Side-view ids must refer to a
side_view analysis; back-view ids to a back_view analysis. If you send subject_id and an
analysis was created with a subject_id, that id must match subject_id.
Height and weight: Height is in meters (defaults to 1.70 if omitted). Weight is in kilograms (defaults to 70 if omitted).
Shoe purposes: tempo_training is accepted; the alias tempo is also accepted and stored
as tempo_training.
curl --request POST \
--url https://partner-api.ochy-prod.com/shoeRecommendation/form \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"input": {
"form": {
"subject_id": "550e8400-e29b-41d4-a716-446655440000",
"running_experience": "intermediate",
"running_session": "high_frequency",
"weekly_km": "high_volume",
"shoe_purpose": [
"jogging",
"tempo_training"
],
"pain": [
"knee"
],
"weight": 75,
"height": 1.8,
"treadmill": false,
"comfort_heel_cushioning": 60,
"comfort_forefoot_cushioning": 45,
"comfort_shoe_stability": 70,
"comfort_forefoot_flexibility": 55,
"previous_shoes": {
"stability": "neutral",
"drop": "medium_drop",
"carbon_plate": "without_plate",
"shoe_weight": "medium"
}
},
"id_side_view_analysis": "3dde3402-94d7-462e-a784-9306207108dd",
"id_back_view_analysis": "5c482a11-4f50-471f-91f2-af9acb14182f",
"favorite_brands": [
"nike",
"asics"
]
}
}
'import requests
url = "https://partner-api.ochy-prod.com/shoeRecommendation/form"
payload = { "input": {
"form": {
"subject_id": "550e8400-e29b-41d4-a716-446655440000",
"running_experience": "intermediate",
"running_session": "high_frequency",
"weekly_km": "high_volume",
"shoe_purpose": ["jogging", "tempo_training"],
"pain": ["knee"],
"weight": 75,
"height": 1.8,
"treadmill": False,
"comfort_heel_cushioning": 60,
"comfort_forefoot_cushioning": 45,
"comfort_shoe_stability": 70,
"comfort_forefoot_flexibility": 55,
"previous_shoes": {
"stability": "neutral",
"drop": "medium_drop",
"carbon_plate": "without_plate",
"shoe_weight": "medium"
}
},
"id_side_view_analysis": "3dde3402-94d7-462e-a784-9306207108dd",
"id_back_view_analysis": "5c482a11-4f50-471f-91f2-af9acb14182f",
"favorite_brands": ["nike", "asics"]
} }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
input: {
form: {
subject_id: '550e8400-e29b-41d4-a716-446655440000',
running_experience: 'intermediate',
running_session: 'high_frequency',
weekly_km: 'high_volume',
shoe_purpose: ['jogging', 'tempo_training'],
pain: ['knee'],
weight: 75,
height: 1.8,
treadmill: false,
comfort_heel_cushioning: 60,
comfort_forefoot_cushioning: 45,
comfort_shoe_stability: 70,
comfort_forefoot_flexibility: 55,
previous_shoes: {
stability: 'neutral',
drop: 'medium_drop',
carbon_plate: 'without_plate',
shoe_weight: 'medium'
}
},
id_side_view_analysis: '3dde3402-94d7-462e-a784-9306207108dd',
id_back_view_analysis: '5c482a11-4f50-471f-91f2-af9acb14182f',
favorite_brands: ['nike', 'asics']
}
})
};
fetch('https://partner-api.ochy-prod.com/shoeRecommendation/form', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Authorizations
Recommended. Pass your API key as a Bearer token in the Authorization header: Authorization: Bearer YOUR_API_KEY.
Body
Show child attributes
Show child attributes
Response
Recommendation request created.
Use this id with /shoeRecommendation/start and /shoeRecommendation/{id}/result.
"550e8400-e29b-41d4-a716-446655440000"