mirror of
https://github.com/agentrhq/authsome.git
synced 2026-09-19 01:34:19 +08:00
cac5f9f2c4
Remove references to five pages that do not exist: reference/provider-schema, reference/file-layout, concepts/profiles-vs-connections, security/hosted-deployment, guides/profiles. Strategy: strip the links/sentences from the 59 source files rather than creating stub pages. Card blocks pointing to missing pages are removed; inline sentence references are removed or reworded so the surrounding prose stays coherent. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
104 lines
2.8 KiB
Plaintext
104 lines
2.8 KiB
Plaintext
---
|
|
title: "Klaviyo"
|
|
sidebarTitle: "Klaviyo"
|
|
description: "Store and use your Klaviyo API key with authsome. Local encrypted vault, proxy injection, no key in the agent's environment."
|
|
keywords: ["klaviyo api key authsome", "klaviyo key broker", "klaviyo agent credentials", "authsome klaviyo"]
|
|
---
|
|
|
|
import MultiConnectionsCta from "/snippets/multi-connections-cta.mdx";
|
|
import MaskedInputNote from "/snippets/masked-input-note.mdx";
|
|
import WhatsNextApiKey from "/snippets/whats-next-apikey.mdx";
|
|
|
|
Klaviyo uses a long-lived API key. Authsome stores the key encrypted in the local vault, injects it at request time through the proxy, and keeps it out of shell history, process listings, and environment dumps.
|
|
|
|
## At a glance
|
|
|
|
| | |
|
|
|---|---|
|
|
| Provider name | `klaviyo` |
|
|
| Display name | Klaviyo |
|
|
| Auth type | API key |
|
|
| Header | `Authorization: Klaviyo-API-Key <key>` |
|
|
| Proxy host | `a.klaviyo.com` |
|
|
| Env var | `KLAVIYO_API_KEY` |
|
|
| Where to get a key | [https://www.klaviyo.com/account#api-keys-tab](https://www.klaviyo.com/account#api-keys-tab) |
|
|
|
|
## Get a key
|
|
|
|
Create an API key in the Klaviyo dashboard at [https://www.klaviyo.com/account#api-keys-tab](https://www.klaviyo.com/account#api-keys-tab).
|
|
|
|
## Log in
|
|
|
|
```bash
|
|
authsome login klaviyo
|
|
```
|
|
|
|
A local browser form opens at `http://127.0.0.1:7998`. Paste the key into the masked input and submit.
|
|
|
|
<MaskedInputNote />
|
|
|
|
Verify:
|
|
|
|
```bash
|
|
authsome get klaviyo --field status
|
|
# → connected
|
|
```
|
|
|
|
## Use the key
|
|
|
|
Run the agent under the proxy. The library tab is for embedding authsome inside a larger Python orchestrator.
|
|
|
|
<CodeGroup>
|
|
|
|
```bash Proxy (recommended)
|
|
authsome run -- python my_agent.py
|
|
```
|
|
|
|
```bash Environment
|
|
eval "$(authsome export klaviyo --format env)"
|
|
echo $KLAVIYO_API_KEY
|
|
```
|
|
|
|
```python Python library
|
|
from authsome.server.dependencies import create_auth_service
|
|
|
|
auth = create_auth_service()
|
|
key = auth.get_access_token("klaviyo", connection="default")
|
|
```
|
|
|
|
</CodeGroup>
|
|
|
|
Under the proxy, authsome sets `KLAVIYO_API_KEY=authsome-proxy-managed` in the child's environment and injects the real key into outbound requests to `a.klaviyo.com`. The child process never sees the actual value.
|
|
|
|
## Multiple keys
|
|
|
|
<MultiConnectionsCta />
|
|
|
|
```bash
|
|
authsome login klaviyo --connection personal
|
|
authsome login klaviyo --connection team
|
|
```
|
|
|
|
## Rotate or remove the key
|
|
|
|
```bash
|
|
authsome login klaviyo --force # rotate
|
|
authsome logout klaviyo # remove local credential
|
|
authsome remove klaviyo # remove all local state for the provider
|
|
```
|
|
|
|
API-key providers have no revocation endpoint, so `revoke` and `remove` are equivalent for Klaviyo.
|
|
|
|
## Override the bundled definition
|
|
|
|
```bash
|
|
authsome inspect klaviyo > ~/.authsome/providers/klaviyo.json
|
|
# edit fields
|
|
authsome list # source now shows "custom" for klaviyo
|
|
```
|
|
|
|
|
|
## What's next
|
|
|
|
<WhatsNextApiKey />
|