OpenAPI Specification
openapi: 3.1.0
info:
title: Paragraph analytics users API
version: 1.0.0
description: 'Public API for interacting with Paragraph publications, posts, users, and coined writing.
## Rate Limiting
API requests are rate-limited to ensure fair usage. Contact support@paragraph.com for higher limits.
## Pagination
List endpoints support cursor-based pagination using `cursor` and `limit` parameters.'
contact:
name: Paragraph Support
email: support@paragraph.com
url: https://paragraph.com/support
license:
name: MIT
url: https://opensource.org/licenses/MIT
servers:
- url: https://public.api.paragraph.com/api
description: Production server
security:
- {}
tags:
- name: users
description: Operations related to users and authors
paths:
/v1/users/{userId}:
get:
description: Retrieve detailed information about a specific user
summary: Get user by ID
tags:
- users
parameters:
- name: userId
in: path
required: true
schema:
type: string
description: Unique identifier of the user
responses:
'200':
description: User details retrieved successfully
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Unique identifier for the user
walletAddress:
type: string
pattern: ^0x[a-fA-F0-9]{40}$
description: Wallet address of the user
avatarUrl:
type: string
format: uri
description: URL to the user's avatar image
publicationId:
type: string
description: ID of the publication this user belongs to
name:
type: string
description: Display name of the user
bio:
type: string
maxLength: 500
description: Brief biography of the user (max 500 characters)
farcaster:
type: object
properties:
username:
type: string
description: Farcaster username
displayName:
type: string
description: Farcaster display name
fid:
type: number
description: Farcaster fid
required:
- username
- displayName
- fid
description: Farcaster profile information, if linked
required:
- id
- publicationId
'404':
description: User not found
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
enum:
- false
description: Always false for error responses
msg:
type: string
description: Human-readable error message
required:
- success
- msg
'500':
description: Internal server error
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
enum:
- false
description: Always false for error responses
msg:
type: string
description: Human-readable error message
required:
- success
- msg
operationId: getUser
x-mint:
mcp:
enabled: true
name: get-user-by-id
description: Get detailed information about a specific user
x-codeSamples:
- lang: typescript
label: Get user by ID
source: 'import { ParagraphAPI } from "@paragraph-com/sdk"
const api = new ParagraphAPI()
const user = await api.users.get({ id: "AeAOtR8TqKWyzG5apA1R" }).single()'
/v1/users/wallet/{walletAddress}:
get:
description: Retrieve user details using their Ethereum wallet address
summary: Get user by wallet address
tags:
- users
parameters:
- name: walletAddress
in: path
required: true
schema:
type: string
pattern: ^0x[a-fA-F0-9]{40}$
description: Ethereum wallet address
responses:
'200':
description: User details retrieved successfully
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Unique identifier for the user
walletAddress:
type: string
pattern: ^0x[a-fA-F0-9]{40}$
description: Wallet address of the user
avatarUrl:
type: string
format: uri
description: URL to the user's avatar image
publicationId:
type: string
description: ID of the publication this user belongs to
name:
type: string
description: Display name of the user
bio:
type: string
maxLength: 500
description: Brief biography of the user (max 500 characters)
farcaster:
type: object
properties:
username:
type: string
description: Farcaster username
displayName:
type: string
description: Farcaster display name
fid:
type: number
description: Farcaster fid
required:
- username
- displayName
- fid
description: Farcaster profile information, if linked
required:
- id
- publicationId
'404':
description: User not found
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
enum:
- false
description: Always false for error responses
msg:
type: string
description: Human-readable error message
required:
- success
- msg
'500':
description: Internal server error
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
enum:
- false
description: Always false for error responses
msg:
type: string
description: Human-readable error message
required:
- success
- msg
operationId: getUserByWallet
x-mint:
mcp:
enabled: true
name: get-user-by-wallet
description: Get user details using their Ethereum wallet address
x-codeSamples:
- lang: typescript
label: Get user by wallet address
source: 'import { ParagraphAPI } from "@paragraph-com/sdk"
const api = new ParagraphAPI()
const user = await api.users.get({ wallet: "0xc9ddb5E37165827BBBFf15b582E232C06862C4E8" }).single()'
components:
securitySchemes:
apiKey:
type: http
scheme: bearer
description: API key for authenticating protected endpoints. Pass as Bearer token in Authorization header.
x-mint:
mcp:
enabled: true