MENU navbar-image

Introduction

This documentation aims to provide all the information you need to work with our API.

<aside>As you scroll, you'll see code examples for working with the API in different programming languages in the dark area to the right (or as part of the content on mobile).
You can switch the language used with the tabs at the top right (or from the nav menu at the top left on mobile).</aside>

Authenticating requests

This API is not authenticated.

Parts

Example request:
curl --request POST \
    "http://localhost/api/parts/search" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"token\": \"eyJhbGciOi...\",
    \"partName\": \"\\\"front brake pads\\\"\",
    \"senderId\": \"client_abc123\"
}"
const url = new URL(
    "http://localhost/api/parts/search"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "token": "eyJhbGciOi...",
    "partName": "\"front brake pads\"",
    "senderId": "client_abc123"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200, OEM(s) found):


{
    "oem": [
        "OEM-12345",
        "OEM-67890"
    ],
    "meta": {
        "partName": "front brake pads",
        "senderId": "client_abc123"
    },
    "code": "OK_OEM_DETERMINED"
}
 

Example response (422, No confident match):


{
    "type": "about:blank",
    "title": "Need clarification",
    "status": 422,
    "detail": "No OEM match for the provided part description; please clarify.",
    "code": "UNPROCESSABLE_CLARIFY"
}
 

Example response (500, Unexpected error):


{
    "type": "about:blank",
    "title": "Server error",
    "status": 500,
    "code": "SERVER_ERROR"
}