osf-apiv2-documentation — quality + safety report

In the Skillier index (lap__osf-io-osf-io) · scanned 2026-06-03 · engine: builtin+triage

A
Quality
90/100
Safety

✓ Clean — no heuristic safety flags surfaced.

Heuristic flags from the builtin scanner, which is known to over-flag (it trips on legitimate env-reading integrations, security skills, and library .eval calls). This is NOT an authoritative malicious verdict — re-scan with SkillSpector for the authoritative result. Run the authoritative scan →

Skillproof quality grade A

📇 This skill is in the Skillier index (curated · deduped · quality-filtered). Install Skillier to route & load it into your AI client.

Quality notes

Skill is large (~14347 tokens)
medium · quality · body
→ Tighten to the essential procedure; move long reference material to linked files.
No example
low · quality · body
→ Add at least one worked example (input → expected action/output).

About this skill

OSF APIv2 Documentation API skill. Use when working with OSF APIv2 Documentation for addons, root, citations. Covers 343 endpoints.

📄 Read the SKILL.md
---
name: osf-apiv2-documentation
description: "OSF APIv2 Documentation API skill. Use when working with OSF APIv2 Documentation for addons, root, citations. Covers 343 endpoints."
version: 1.0.0
generator: lapsh
---

# OSF APIv2 Documentation
API version: 2.0

## Auth
No authentication required.

## Base URL
https://api.test.osf.io/v2

## Setup
1. No auth setup needed
2. GET /addons/ -- verify access
3. POST /institutions/{institution_id}/relationships/nodes/ -- create first nodes

## Endpoints

343 endpoints across 40 groups. See references/api-spec.lap for full details.

### addons
| Method | Path | Description |
|--------|------|-------------|
| GET | /addons/ | List all addons |

### root
| Method | Path | Description |
|--------|------|-------------|
| GET | / | Root |

### citations
| Method | Path | Description |
|--------|------|-------------|
| GET | /citations/styles/ | List all citation styles |
| GET | /citations/styles/{style_id}/ | Retrieve a citation style |

### comments
| Method | Path | Description |
|--------|------|-------------|
| GET | /comments/{comment_id}/ | Retrieve a comment |
| DELETE | /comments/{comment_id}/ | Delete a comment |

### files
| Method | Path | Description |
|--------|------|-------------|
| GET | /files/{file_id}/ | Retrieve a file |
| PATCH | /files/{file_id}/ | Update a file |
| GET | /files/{file_id}/versions/ | List all file versions |
| GET | /files/{file_id}/versions/{version_id}/ | Retrieve a file version |
| POST | /files/{file_id}/cedar_metadata_records/ | Create a CEDAR metadata record for a file |

### licenses
| Method | Path | Description |
|--------|------|-------------|
| GET | /licenses/ | List all licenses |

### license
| Method | Path | Description |
|--------|------|-------------|
| GET | /license/{license_id}/ | Retrieve a license |

### logs
| Method | Path | Description |
|--------|------|-------------|
| GET | /logs/{log_id}/ | Retrieve a log |

### actions
| Method | Path | Description |
|--------|------|-------------|
| GET | /actions/ | Actions |
| GET | /actions/reviews/ | List Review Actions |
| POST | /actions/requests/nodes/ | Create a Node Request Action |
| POST | /actions/requests/preprints/ | Create a Preprint Request Action |
| GET | /actions/{action_id}/ | Retrieve an Action by ID |

### institutions
| Method | Path | Description |
|--------|------|-------------|
| GET | /institutions/ | List all institutions |
| GET | /institutions/{institution_id}/ | Retrieve an institution |
| GET | /institutions/{institution_id}/users/ | List all affiliated users |
| GET | /institutions/{institution_id}/nodes/ | List all affiliated nodes |
| GET | /institutions/{institution_id}/registrations/ | List all affiliated registrations |
| GET | /institutions/{institution_id}/relationships/nodes/ | List nodes affiliated with an institution (relationship data) |
| POST | /institutions/{institution_id}/relationships/nodes/ | Add node relationships to an institution |
| DELETE | /institutions/{institution_id}/relationships/nodes/ | Remove node relationships from an institution |
| GET | /institutions/{institution_id}/relationships/registrations/ | List registrations affiliated with an institution (relationship data) |
| POST | /institutions/{institution_id}/relationships/registrations/ | Add registration relationships to an institution |
| DELETE | /institutions/{institution_id}/relationships/registrations/ | Remove registration relationships from an institution |

### schemas
| Method | Path | Description |
|--------|------|-------------|
| GET | /schemas/registrations/ | Retrieve a list of Registration Schemas |
| GET | /schemas/registrations/{registration_schema_id} | Retrieve a Registration Schema |

### schema_responses
| Method | Path | Description |
|--------|------|-------------|
| GET | /schema_responses/ | List all Schema Responses |
| POST | /schema_responses/ | Create a new Schema Response |
| GET | /schema_responses/{schema_response_id} | Retrieve a Schema Response |
| PATCH | /schema_responses/{schema_response_id} | Update a Registration's Schema Response |
| DELETE | /schema_responses/{schema_response_id} | Delete a Incomplete Schema Response |
| GET | /schema_responses/{schema_response_id}/actions/ | Retrieve a list of Schema Response Actions for a Schema Response |
| POST | /schema_responses/{schema_response_id}/actions/ | Create a new Schema Response Action |
| GET | /schema_responses/{schema_response_id}/actions/{schema_response_action_id} | A Schema Response Action from a Schema Response |
| GET | /schema_responses/{schema_response_id}/schema_blocks/ | Retrieve a list of Registration Schema Blocks for a Schema Response |
| GET | /schema_responses/{schema_response_id}/schema_blocks/{schema_response_block_id} | Retrieve a Registration Schema Block |

### nodes
| Method | Path | Description |
|--------|------|-------------|
| GET | /nodes/ | List all nodes |
| POST | /nodes/ | Create a node |
| GET | /nodes/{node_id}/ | Retrieve a node |
| PATCH | /nodes/{node_id}/ | Update a node |
| DELETE | /nodes/{node_id}/ | Delete a node |
| GET | /nodes/{node_id}/addons/ | List all addons |
| GET | /nodes/{node_id}/addons/{provider}/folders/ | List all addon folders |
| GET | /nodes/{node_id}/addons/{provider}/ | Retrieve an addon |
| PATCH | /nodes/{node_id}/addons/{provider}/ | Update an addon |
| GET | /nodes/{node_id}/children/ | List all child nodes |
| POST | /nodes/{node_id}/children/ | Create a child node |
| GET | /nodes/{node_id}/citation/ | Retrieve citation details |
| GET | /nodes/{node_id}/citation/{style_id}/ | Retrieve a styled citation |
| GET | /nodes/{node_id}/comments/ | List all comments |
| POST | /nodes/{node_id}/comments/ | Create a comment |
| GET | /nodes/{node_id}/contributors/ | List all contributors |
| POST | /nodes/{node_id}/contributors/ | Create a contributor |
| GET | /nodes/{node_id}/contributors/{user_id}/ | Retrieve a contributor |
| PATCH | /nodes/{node_id}/contributors/{user_id}/ | Update a contributor |
| DELETE | /nodes/{node_id}/contributors/{user_id}/ | Delete a contributor |
| GET | /nodes/{node_id}/draft_registrations/ | List all draft registrations |
| POST | /nodes/{node_id}/draft_registrations/ | Create a draft registration based on your current project Node. |
| GET | /nodes/{node_id}/draft_registrations/{draft_id}/ | Retrieve a Draft Registration |
| PATCH | /nodes/{node_id}/draft_registrations/{draft_id}/ | Update a draft registration |
| DELETE | /nodes/{node_id}/draft_registrations/{draft_id}/ | Delete a draft registration |
| GET | /nodes/{node_id}/files/ | List all storage providers |
| GET | /nodes/{node_id}/files/providers/{provider}/ | Retrieve a storage provider |
| GET | /nodes/{node_id}/files/{provider}/ | List all node files |
| GET | /nodes/{node_id}/files/{provider}/{path}/ | Retrieve a file |
| GET | /nodes/{node_id}/identifiers/ | Retrieve Identifiers for a Node |
| POST | /nodes/{node_id}/identifiers/ | Mint a New Identifier for a Node |
| GET | /nodes/{node_id}/institutions/ | List all institutions |
| POST | /nodes/{node_id}/forks/ | Create a fork of this node |
| GET | /nodes/{node_id}/forks/ | List all forks of this node |
| GET | /nodes/{node_id}/linked_nodes/ | List all linked nodes |
| GET | /nodes/{node_id}/logs/ | List all logs |
| GET | /nodes/{node_id}/preprints/ | List all preprints |
| GET | /nodes/{node_id}/registrations/ | List all registrations |
| GET | /nodes/{node_id}/view_only_links/ | List all view only links |
| GET | /nodes/{node_id}/view_only_links/{link_id}/ | Retrieve a view only link |
| GET | /nodes/{node_id}/wikis/ | List all wikis |
| GET | /nodes/{node_id}/linked_by_nodes/ | List Nodes Linking to a Node |
| GET | /nodes/{node_id}/linked_by_registrations/ | List Registrations Linking to a Node |
| GET | /nodes/{node_id}/relationships/institutions/ | Retrieve relationships between a Node and its affiliated Institutions |
| PATCH | /nodes/{node_id}/relationships/institutions/ | Replace relationships between a Node and its affiliated Institutions |
| POST | /nodes/{node_id}/relationships/institutions/ | Add relationships between a Node and Institutions |
| DELETE | /nodes/{node_id}/relationships/institutions/ | Remove relationships between a Node and Institutions |
| GET | /nodes/{node_id}/relationships/linked_nodes/ | Retrieve relationships between a Node and its linked Nodes |
| PATCH | /nodes/{node_id}/relationships/linked_nodes/ | Replace relationships between a Node and its linked Nodes |
| POST | /nodes/{node_id}/relationships/linked_nodes/ | Add relationships between a Node and linked Nodes |
| DELETE | /nodes/{node_id}/relationships/linked_nodes/ | Remove relationships between a Node and linked Nodes |
| GET | /nodes/{node_id}/relationships/linked_registrations/ | Retrieve relationships between a Node and its linked Registrations |
| PATCH | /nodes/{node_id}/relationships/linked_registrations/ | Replace relationships between a Node and linked Registrations |
| POST | /nodes/{node_id}/relationships/linked_registrations/ | Add relationships between a Node and linked Registrations |
| DELETE | /nodes/{node_id}/relationships/linked_registrations/ | Remove relationships between a Node and linked Registrations |
| GET | /nodes/{node_id}/relationships/subjects/ | Retrieve the relationships between a Node and its Subjects |
| PATCH | /nodes/{node_id}/relationships/subjects/ | Update the relationships between a Node and its Subjects |
| POST | /nodes/{node_id}/relationships/subjects/ | Add relationships between a Node and Subjects |
| DELETE | /nodes/{node_id}/relationships/subjects/ | Remove relationships between a Node and Subjects |
| GET | /nodes/{node_id}/requests/ | List Requests for a Node |
| GET | /nodes/{node_id}/settings/ | Retrieve Node Settings |
| PATCH | /nodes/{node_id}/settings/ | Update Node Settings |
| GET | /nodes/{node_id}/storage/ | List Storage Providers for a Node |
| GET | /nodes/{node_id}/subjects/ | List Subjects for a Node |
| POST | /nodes/{node_id}/cedar_metadata_records/ | Create a CEDAR metadata record for a node |

### preprints
| Method | Path | Description |
|--------|------|-------------|
| GET | /preprints/ | List all preprints |
| POST | /preprints/ | Create a preprint |
| GET | /preprints/{preprint_id}/versions/ | List preprint versions |
| POST | /preprints/{preprint_id}/versions/ | Create a preprint version |
| GET | /preprints/{preprint_id}/ | Retrieve a preprint |
| PATCH | /preprints/{preprint_id}/ | Update a preprint |
| GET | /preprints/{preprint_id}/citation/ | Retrieve citation details |
| GET | /preprints/{preprint_id}/citation/{style_id}/ | Retrieve a styled citation |
| GET | /preprints/{preprint_id}/contributors/ | List all Contributors for a Preprint |
| POST | /preprints/{preprint_id}/contributors/ | Create a Contributor |
| GET | /preprints/{preprint_id}/contributors/{user_id}/ | Retrieve a contributor |
| GET | /preprints/{preprint_id}/bibliographic_contributors/ | List all Bibliographic Contributors |
| GET | /preprints/{preprint_id}/institutions/ | List all Institutional Affilations for a Preprint |
| GET | /preprints/{preprint_id}/relationships/institutions/ | List all Institutions for a Preprint |
| PUT | /preprints/{preprint_id}/relationships/institutions/ | Update a Preprints Institutional Affilation |
| GET | /preprints/{preprint_id}/files/ | List storage providers for a preprint |
| GET | /preprints/{preprint_id}/files/osfstorage/ | List files for a preprint in osfstorage |
| GET | /preprints/{preprint_id}/identifiers/ | List identifiers for a preprint |
| GET | /preprints/{preprint_id}/relationships/node/ | Retrieve the relationship to the supplemental node of the preprint |
| PATCH | /preprints/{preprint_id}/relationships/node/ | Update the relationship to the supplemental node of the preprint |
| DELETE | /preprints/{preprint_id}/relationships/node/ | Remove the supplemental node relationship from the preprint |
| POST | /preprints/{preprint_id}/re

… (truncated)
Scan or optimize your own skill →

Want a live grade + an embeddable README badge? Run your skill through the free scanner.

Graded independently by Skillproof — nothing to sell the author. Quality is mechanical + corpus-grounded; safety flags are heuristic (builtin+triage), not a malicious verdict.