Retry creating the caller's TrueFoundry key from a signed-in browser
curl --request POST \
--url https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check \
--header 'Content-Type: application/json' \
--data '
{
"attempt": "<string>"
}
'import requests
url = "https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check"
payload = { "attempt": "<string>" }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({attempt: '<string>'})
};
fetch('https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check', 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.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'attempt' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check"
payload := strings.NewReader("{\n \"attempt\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check")
.header("Content-Type", "application/json")
.body("{\n \"attempt\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"attempt\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"status": "<string>",
"message": "<string>",
"ready": true
}{
"error": "invalid_request",
"details": [
{
"message": "<string>",
"path": [
"<string>"
]
}
],
"message": "<string>",
"capability": "<string>"
}{
"error": "unauthorized"
}{
"error": "forbidden",
"reason": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Inference Providers
Retry creating the caller's TrueFoundry key from a signed-in browser
For TrueFoundry providers. Uses the ten-minute entry handle from oauth/start plus the signed-in browser session of the same user to look the person up in TrueFoundry by email again (adding them when the provider creates missing users) and create their token. Returns the outcome; a ready token consumes the handle. Bearer authentication alone is not accepted.
POST
/
v1
/
inference-providers
/
oauth
/
browser-truefoundry-check
Retry creating the caller's TrueFoundry key from a signed-in browser
curl --request POST \
--url https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check \
--header 'Content-Type: application/json' \
--data '
{
"attempt": "<string>"
}
'import requests
url = "https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check"
payload = { "attempt": "<string>" }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({attempt: '<string>'})
};
fetch('https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check', 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.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'attempt' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check"
payload := strings.NewReader("{\n \"attempt\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check")
.header("Content-Type", "application/json")
.body("{\n \"attempt\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/inference-providers/oauth/browser-truefoundry-check")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"attempt\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"status": "<string>",
"message": "<string>",
"ready": true
}{
"error": "invalid_request",
"details": [
{
"message": "<string>",
"path": [
"<string>"
]
}
],
"message": "<string>",
"capability": "<string>"
}{
"error": "unauthorized"
}{
"error": "forbidden",
"reason": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Was this page helpful?