Choose and configure Attio REST authentication for a single workspace or multi-workspace OAuth app, including least-privilege scopes and a read-only verification. Use when connecting a service to Attio. Trigger with "Attio auth", "Attio API key", or "Attio OAuth setup".
Installs into .claude/skills of the current project.
Are you the author of Attio Install Auth?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/jeremylongshore-attio-install-auth-a4229c98)
---
name: attio-install-auth
description: >-
Choose and configure Attio REST authentication for a single workspace or multi-workspace OAuth app, including least-privilege scopes and a read-only verification. Use when connecting a service to Attio. Trigger with "Attio auth", "Attio API key", or "Attio OAuth setup".
argument-hint: "[repository-path] [single-workspace|oauth]"
allowed-tools: Read, Glob, Grep, WebFetch, Write, Edit
version: 1.8.0
author: Jeremy Longshore <jeremy@intentsolutions.io>
license: MIT
tags:
- saas
- attio
- authentication
model: inherit
effort: high
compatibility: Designed for Claude Code
---
# Attio Authentication Setup
## Overview
This skill selects the correct Attio access-token path, maps endpoint scopes, and proves the credential with a non-mutating request.
## Prerequisites
- The integration's workspace and tenancy model
- Exact endpoints and operations the application will use
- An approved secret store and rotation owner
- Registered redirect URIs when OAuth is required
## Tool Discipline
Use `Read`, `Glob`, and `Grep` to inspect the local auth wrapper, secret names, redirect configuration, and endpoint use. Use `WebFetch` only for current official Attio documentation. Use `Write` or `Edit` after the auth model and target files are confirmed.
## Current Contract
- Prefer OAuth 2.0 for an app that serves multiple Attio workspaces.
- Use a manually generated workspace API key for one controlled workspace.
- Both credential types can be sent as `Authorization: Bearer <access_token>`.
- Required scopes are documented per endpoint and should be granted operation by operation.
- Attio also supports Basic authentication with the token as username and an empty password, but Bearer is recommended.
## Authentication
For OAuth, validate `state`, use the registered redirect URI exactly, exchange the code server-side, and encrypt the resulting token at rest. For a workspace key, create it in developer settings with the minimum scopes and store it only in the approved secret manager.
## Instructions
1. Classify the integration as single-workspace or multi-workspace.
2. Inventory methods and endpoints, then derive scopes from their current reference pages.
3. Define secret storage, tenant-to-token mapping, rotation, revocation, and audit ownership.
4. Implement server-side credential injection without token logging.
5. For OAuth, bind and verify `state`; never expose the client secret to browser code.
6. Verify with one read-only endpoint and record only status, workspace alias, and granted scope names.
## Approval Boundaries
Do not generate or broaden production credentials, modify redirect URIs, or migrate tenant tokens without the owning administrator's approval and a rollback plan.
## Output
Return the chosen auth model, endpoint-to-scope map, secret reference, OAuth control evidence if applicable, read-only verification, and rotation owner.
## Error Handling
| Condition | Response |
|---|---|
| Tenancy model is unclear | Stop before choosing a credential type. |
| OAuth state mismatch | Reject the callback and start a fresh authorization flow. |
| 403 after verification | Compare the exact endpoint scopes; do not grant all scopes. |
| Token appears in logs | Revoke or rotate it and scrub retained output. |
## Examples
Input:
```text
tenancy=multiple-workspaces; endpoint=GET /v2/tasks; storage=encrypted-server-side
```
Expected handoff:
```text
auth=oauth; state=verified; scopes=endpoint-derived; read-test=pass
```
## Resources
- [Skill-specific official documentation](references/official-docs.md)
- [Authentication](https://docs.attio.com/rest-api/guides/authentication)
- [OAuth tutorial](https://docs.attio.com/rest-api/tutorials/connect-an-app-through-oauth)
- [REST API overview](https://docs.attio.com/rest-api/overview)