Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
title: Attio REST Records API
description: 'Best-effort OpenAPI 3.1 description of the Attio REST API (v2).
Derived from public documentation at https://docs.attio.com/rest-api and the
documentation index at https://docs.attio.com/llms.txt. Attio is a flexible CRM
with objects, records, lists, attributes and webhooks.'
version: '2'
contact:
name: Attio Docs
url: https://docs.attio.com/rest-api
servers:
- url: https://api.attio.com
description: Attio API production
security:
- bearerAuth: []
- oauth2: []
tags:
- name: Records
paths:
/v2/objects/{object_id}/records:
parameters:
- $ref: '#/components/parameters/ObjectId'
get:
tags:
- Records
summary: List records
operationId: listRecords
responses:
'200':
description: Records returned
post:
tags:
- Records
summary: Create a record
operationId: createRecord
responses:
'201':
description: Record created
put:
tags:
- Records
summary: Upsert a record
operationId: upsertRecord
responses:
'200':
description: Record upserted
/v2/objects/{object_id}/records/{record_id}:
parameters:
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/RecordId'
get:
tags:
- Records
summary: Get a record
operationId: getRecord
responses:
'200':
description: Record returned
patch:
tags:
- Records
summary: Update record (append multiselect)
operationId: updateRecordAppend
responses:
'200':
description: Record updated
put:
tags:
- Records
summary: Update record (overwrite multiselect)
operationId: updateRecordOverwrite
responses:
'200':
description: Record updated
delete:
tags:
- Records
summary: Delete a record
operationId: deleteRecord
responses:
'204':
description: Record deleted
/v2/objects/{object_id}/records/search:
parameters:
- $ref: '#/components/parameters/ObjectId'
post:
tags:
- Records
summary: Search records
operationId: searchRecords
responses:
'200':
description: Search results
components:
parameters:
RecordId:
in: path
name: record_id
required: true
schema:
type: string
description: Attio record ID
ObjectId:
in: path
name: object_id
required: true
schema:
type: string
description: Object ID or slug (e.g. "people", "companies", "deals", or a custom object).
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: Attio API key or OAuth bearer token.
oauth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://app.attio.com/authorize
tokenUrl: https://api.attio.com/oauth/token
scopes:
object_configuration:read: Read object configuration
object_configuration:read-write: Manage object configuration
record_permission:read: Read records
record_permission:read-write: Manage records
list_configuration:read-write: Manage lists
list_entry:read-write: Manage list entries
webhook:read-write: Manage webhooks