Read the signed-in account
curl --request GET \
--url https://mill-api.example.com/api/auth/me \
--cookie mill_session=import requests
url = "https://mill-api.example.com/api/auth/me"
headers = {"cookie": "mill_session="}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {cookie: 'mill_session='}};
fetch('https://mill-api.example.com/api/auth/me', 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://mill-api.example.com/api/auth/me",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_COOKIE => "mill_session=",
]);
$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://mill-api.example.com/api/auth/me"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("cookie", "mill_session=")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mill-api.example.com/api/auth/me")
.header("cookie", "mill_session=")
.asString();require 'uri'
require 'net/http'
url = URI("https://mill-api.example.com/api/auth/me")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["cookie"] = 'mill_session='
response = http.request(request)
puts response.read_body{
"user": {
"id": "66666666-6666-4666-8666-666666666666",
"name": "Alex Morgan",
"email": "alex@example.test",
"role": "member",
"timeZone": "UTC",
"emailVerified": true,
"dateFormat": "day-short-month-year",
"timeFormat": "24-hour",
"notificationPreferences": {
"assignments": true,
"mentions": true
},
"passkeyCount": 0
},
"workspace": {
"id": "55555555-5555-4555-8555-555555555555",
"name": "Studio team",
"createdAt": "2027-01-18T09:30:00.000Z"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>"
}
}Read the signed-in account
Reads the current user, preferences and team. API keys and MCP credentials cannot impersonate this human session.
GET
/
api
/
auth
/
me
Read the signed-in account
curl --request GET \
--url https://mill-api.example.com/api/auth/me \
--cookie mill_session=import requests
url = "https://mill-api.example.com/api/auth/me"
headers = {"cookie": "mill_session="}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {cookie: 'mill_session='}};
fetch('https://mill-api.example.com/api/auth/me', 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://mill-api.example.com/api/auth/me",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_COOKIE => "mill_session=",
]);
$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://mill-api.example.com/api/auth/me"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("cookie", "mill_session=")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mill-api.example.com/api/auth/me")
.header("cookie", "mill_session=")
.asString();require 'uri'
require 'net/http'
url = URI("https://mill-api.example.com/api/auth/me")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["cookie"] = 'mill_session='
response = http.request(request)
puts response.read_body{
"user": {
"id": "66666666-6666-4666-8666-666666666666",
"name": "Alex Morgan",
"email": "alex@example.test",
"role": "member",
"timeZone": "UTC",
"emailVerified": true,
"dateFormat": "day-short-month-year",
"timeFormat": "24-hour",
"notificationPreferences": {
"assignments": true,
"mentions": true
},
"passkeyCount": 0
},
"workspace": {
"id": "55555555-5555-4555-8555-555555555555",
"name": "Studio team",
"createdAt": "2027-01-18T09:30:00.000Z"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"requestId": "<string>"
}
}A signed-in human session is required. API keys and MCP bearer credentials cannot replace that session.
Reads the current user, preferences and team. API keys and MCP credentials cannot impersonate this human session.
Request conventions · API keys · MCP connections
Authorizations
Signed-in human browser session; mutation requests also need the exact UI Origin
Was this page helpful?
