Send the user to sign in and consent
GET
/oauth/authorize
const url = 'https://api.harperharbor.com/oauth/authorize?response_type=code&client_id=example&redirect_uri=https%3A%2F%2Fexample.com&scope=mcp%3Acard-writer&resource=https%3A%2F%2Fapi.harperharbor.com%2Fopen%2Fv1&state=example&code_challenge=example&code_challenge_method=S256';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.harperharbor.com/oauth/authorize?response_type=code&client_id=example&redirect_uri=https%3A%2F%2Fexample.com&scope=mcp%3Acard-writer&resource=https%3A%2F%2Fapi.harperharbor.com%2Fopen%2Fv1&state=example&code_challenge=example&code_challenge_method=S256'A full-page navigation, not XHR. The server redirects to the sign-in and consent page, then back to redirect_uri with ?code=…&state=….
Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”response_type
required
string
client_id
required
string
redirect_uri
required
string format: uri
scope
string
Example
mcp:card-writerresource
required
string
Example
https://api.harperharbor.com/open/v1state
required
string
code_challenge
required
string
Base64url(sha256(verifier))
code_challenge_method
required
string
Responses
Section titled “Responses”Redirect to sign-in