OSF Comments API
The Comments API from OSF — 1 operation(s) for comments.
The Comments API from OSF — 1 operation(s) for comments.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/osf:osf-comments-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a 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.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: OSF APIv2 Documentation Comments API
description: This is the official documentation for the OSF (Open Science Framework) API v2.
version: '2.0'
termsOfService: https://osf.io/terms_of_use/
contact:
name: OSF Support Team
email: support@osf.io
url: https://help.osf.io/
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
x-logo:
url: https://cdn.cos.io/media/images/cos_center_logo_small.original.png
backgroundColor: transparent
servers:
- url: https://api.test.osf.io/v2
tags:
- name: Comments
paths:
/comments/{comment_id}/:
get:
summary: Retrieve a comment
description: 'Retrieves the details of a comment
#### Returns
Returns a JSON object with a `data` key containing the representation of the requested comment, if the request was successful.
If the request is unsuccessful, an `errors` key containing information about the failure will be returned. Refer to the list of error codes to understand why this request may have failed.'
parameters:
- in: path
required: true
name: comment_id
description: The unique identifier of the comment you wish to retrieve.
schema:
type: string
tags:
- Comments
operationId: comments_read
x-response-schema: Comment
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Comment
required:
- id
properties:
id:
type: string
readOnly: true
description: The identifier of the comment entity.
type:
type: string
readOnly: true
description: The type identifier of the comment entity (`comments`).
attributes:
type: object
title: Attributes
readOnly: false
description: The properties of the comment entity.
properties:
can_edit:
type: boolean
readOnly: true
description: Whether or not the current user has permission to edit this comment
content:
type: string
readOnly: false
description: The content of the comment.
date_created:
type: string
format: date-time
readOnly: true
description: The time at which the comment was created, as an iso8601 formatted timestamp.
date_modified:
type: string
format: date-time
readOnly: true
description: The time at which the comment was last modified, as an iso8601 formatted timestamp.
modified:
type: boolean
readOnly: true
description: Whether or not the comment has been edited.
deleted:
type: boolean
readOnly: true
description: Whether or not the comment is deleted.
is_abuse:
type: boolean
readOnly: true
description: Whether or not the comment is flagged or confirmed spam.
is_ham:
type: boolean
readOnly: true
description: Whether or not an admin checked the legitimacy of this comment.
has_report:
type: boolean
readOnly: true
description: Whether or not the comment the current user reported this as spam.
has_children:
type: boolean
readOnly: true
description: Whether or not the comment has replies.
page:
description: The page type the comment is on, e.g. `node`, `registration`, `wiki`, `files`.
readOnly: true
type: string
relationships:
type: object
title: Relationships
readOnly: false
description: URLs to other entities or entity collections that have a relationship to the comment entity.
properties:
node:
type: string
format: URL
readOnly: true
description: A relationship to the node the comment is on.
replies:
type: string
format: URL
readOnly: true
description: A relationship to the replies to the comment.
target:
type: string
format: URL
readOnly: true
description: A relationship to the target of the comment.
reports:
type: string
format: URL
readOnly: true
description: A relationship to the reports connected to the comment.
user:
type: string
format: URL
readOnly: true
description: A relationship to the user who created the comment.
links:
type: object
title: Links
readOnly: true
description: URLs to alternative representations of the comment entity.
properties:
self:
type: string
format: URL
readOnly: true
description: A link to the detail page for the comment.
example:
data:
type: comments
attributes:
content: comment content
relationships:
target:
data:
type: '{target_type}'
id: '{target_id}'
example:
data:
relationships:
node:
links:
related:
href: https://api.osf.io/v2/nodes/gvuew/
meta: {}
replies:
links:
related:
href: https://api.osf.io/v2/nodes/gvuew/comments/?filter%5Btarget%5D=twpgrpv78d8s
meta: {}
target:
links:
related:
href: https://api.osf.io/v2/nodes/gvuew/
meta:
type: nodes
reports:
links:
related:
href: https://api.osf.io/v2/comments/twpgrpv78d8s/reports/
meta: {}
user:
links:
related:
href: https://api.osf.io/v2/users/rnizy/
meta: {}
links:
self: https://api.osf.io/v2/comments/twpgrpv78d8s/
attributes:
can_edit: true
date_modified: '2017-02-10T20:44:03.193000'
deleted: false
is_ham: false
has_children: false
modified: false
content: comments about things
has_report: false
is_abuse: false
date_created: '2017-02-10T20:44:03.185000'
page: node
type: comments
id: twpgrpv78d8s
delete:
summary: Delete a comment
description: 'Deletes a comment. This action can be undone by setting deleted to False in a comment update request.
#### Returns
If the request is successful, no content is returned.
If the request is unsuccessful, a JSON object with an `errors` key containing information about the failure will be returned. Refer to the list of error codes to understand why this request may have failed.'
parameters:
- in: path
required: true
name: comment_id
description: The unique identifier of the comment you wish to delete.
schema:
type: string
tags:
- Comments
operationId: comments_delete
responses:
'204':
description: No content
x-tagGroups:
- name: Welcome
tags:
- Introduction
- General Usage
- Authentication
- Pagination
- Versioning
- Filtering
- Sparse Fieldsets
- Embedding
- Request Formatting
- Errors & Error Codes
- Entities & Entity Collections
- name: API Reference
tags:
- Actions
- Addons
- Applications
- Base
- CEDAR Metadata
- Citations
- Comments
- Collections
- Collection Submissions
- Collection Submissions Actions
- Collection Providers
- Custom Metadata
- Files
- Licenses
- Logs
- Institutions
- Identifiers
- Registration Schemas
- Registration Schema Blocks
- Schema Responses
- Schema Response Actions
- Nodes
- Notification Subscriptions
- Preprints
- Preprint Providers
- Draft Registrations
- Registrations
- Registration Providers
- Regions
- OAuth Scopes
- Taxonomies
- Tokens
- Users
- View Only Links
- Wikis
- Subjects
- GUIDs
- Requests
- Resources