Merran documentation API & integrations
Link a Kroger account
POST
/api/stores/kroger/link
const url = 'http://localhost:3000/api/stores/kroger/link';const options = { method: 'POST', headers: {cookie: 'merran.session_token=<merran.session_token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:3000/api/stores/kroger/link \ --cookie merran.session_token=<merran.session_token>Household admins only. Where to send the person to let Merran add to their Kroger cart; Kroger sends them back to GET /stores/kroger/callback. One account for the household, so everyone shops one cart.
Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”Where to go.
Media typeapplication/json
object
url
required
Where to send the person.
string
Example
{ "url": "https://api.kroger.com/v1/connect/oauth2/authorize?..."}Not signed in.
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
fields
object
key
additional properties
string
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}Not allowed.
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
fields
object
key
additional properties
string
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}Kroger isn’t set up on this server.
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
fields
object
key
additional properties
string
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}© 2026 Kyle Johnson. Documentation: CC BY 4.0. Merran: AGPL-3.0-or-later.