Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions swagger-spec/cedar_metadata/definition.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ definitions:
properties:
self:
type: string
example: https://api.osf.io/v2/_/cedar_metadata_records/record-abc123/
example: https://api.osf.io/_/cedar_metadata_records/record-abc123/
metadata_download:
type: string
example: https://api.osf.io/v2/_/cedar_metadata_records/record-abc123/metadata_download/
example: https://api.osf.io/_/cedar_metadata_records/record-abc123/metadata_download/
2 changes: 2 additions & 0 deletions swagger-spec/cedar_metadata/files_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,6 @@ post:
description: You do not have permission to create metadata for this file.
'404':
description: File not found.
'405':
description: Returned if creating CEDAR metadata records for this file has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

2 changes: 2 additions & 0 deletions swagger-spec/cedar_metadata/nodes_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,6 @@ post:
description: You do not have permission to create metadata for this node.
'404':
description: Node not found.
'405':
description: Returned if creating CEDAR metadata records for this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

2 changes: 2 additions & 0 deletions swagger-spec/collections/collected_metadata_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -326,3 +326,5 @@ post:
responses:
'201':
description: 'OK'
'405':
description: 'Returned if new submissions to this collection are currently restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."'
4 changes: 3 additions & 1 deletion swagger-spec/custom_metadata/nodes_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -55,4 +55,6 @@ patch:
'403':
description: You do not have permission to modify this metadata record.
'404':
description: Metadata record not found.
description: Metadata record not found.
'405':
description: Returned if write access to the referenced project has been restricted (this restriction does not apply to metadata records associated with files). The response will include the message "This action is no longer available. Contact support if you have any questions."
10 changes: 10 additions & 0 deletions swagger-spec/nodes/contributor_detail.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,9 @@ patch:
If the given user is not already in the contributor list, a 404 Not Found error will be returned.
A node must always have at least one admin, and any attempt to downgrade the permissions of a sole admin will result in a 400 Bad Request error.

Some common error cases:
- `405 Method Not Allowed`: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

parameters:
- in: path
type: string
Expand All @@ -151,6 +154,8 @@ patch:
responses:
'200':
description: 'OK'
'405':
description: 'Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."'

delete:
summary: Delete a contributor
Expand All @@ -173,6 +178,9 @@ delete:
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](#tag/Errors-and-Error-Codes) to understand why this request may have failed.

Some common error cases:
- `405 Method Not Allowed`: If write access to this node has been restricted, a contributor removing themselves is still permitted, but attempting to remove a different contributor will return this error with the message "This action is no longer available. Contact support if you have any questions."

parameters:
- in: path
type: string
Expand All @@ -190,3 +198,5 @@ delete:
responses:
'204':
description: 'No content'
'405':
description: 'If write access to this node has been restricted, a contributor removing themselves is still permitted, but attempting to remove a different contributor will return this error with the message "This action is no longer available. Contact support if you have any questions."'
5 changes: 5 additions & 0 deletions swagger-spec/nodes/contributors_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,9 @@ post:
If the request is unsuccessful, an `errors` key containing information about the failure will be returned.
Refer to the [list of error codes](#tag/Errors-and-Error-Codes) to understand why this request may have failed.

Some common error cases:
- `405 Method Not Allowed`: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

parameters:
- in: path
type: string
Expand All @@ -168,3 +171,5 @@ post:
responses:
'201':
description: 'Success'
'405':
description: 'Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."'
5 changes: 5 additions & 0 deletions swagger-spec/nodes/detail.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,9 @@ patch:
If the request is unsuccessful, an `errors` key containing information about the failure will be returned.
Refer to the [list of error codes](#tag/Errors-and-Error-Codes) to understand why this request may have failed.

Some common error cases:
- `405 Method Not Allowed`: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

parameters:
- in: path
type: string
Expand Down Expand Up @@ -214,6 +217,8 @@ patch:
responses:
'200':
description: 'OK'
'405':
description: 'Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."'

delete:
summary: Delete a node
Expand Down
2 changes: 2 additions & 0 deletions swagger-spec/nodes/draft_registrations_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -173,3 +173,5 @@ post:
responses:
'201':
description: 'Created'
'405':
description: 'Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."'
3 changes: 3 additions & 0 deletions swagger-spec/nodes/identifiers_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -182,3 +182,6 @@ post:
'404':
description: Node not found. Verify the node ID is correct and that you have permission to view the node.

'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."
2 changes: 2 additions & 0 deletions swagger-spec/nodes/node_settings_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -206,3 +206,5 @@ patch:
description: Forbidden. You do not have permission to modify node settings.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."
6 changes: 6 additions & 0 deletions swagger-spec/nodes/relationships_institutions_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,8 @@ patch:
description: Forbidden. You do not have permission to modify institutions for this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

post:
summary: Add relationships between a Node and Institutions
Expand Down Expand Up @@ -229,6 +231,8 @@ post:
description: Forbidden. You do not have permission to modify institutions for this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

delete:
summary: Remove relationships between a Node and Institutions
Expand Down Expand Up @@ -294,3 +298,5 @@ delete:
description: Forbidden. You do not have permission to modify institutions for this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."
6 changes: 6 additions & 0 deletions swagger-spec/nodes/relationships_linked_nodes_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,8 @@ patch:
description: Forbidden. You do not have permission to modify linked nodes for this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

post:
summary: Add relationships between a Node and linked Nodes
Expand Down Expand Up @@ -252,6 +254,8 @@ post:
description: Forbidden. You do not have permission to modify linked nodes for this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

delete:
summary: Remove relationships between a Node and linked Nodes
Expand Down Expand Up @@ -317,3 +321,5 @@ delete:
description: Forbidden. You do not have permission to modify linked nodes for this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,8 @@ patch:
description: Forbidden. You do not have permission to modify linked registrations for this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

post:
summary: Add relationships between a Node and linked Registrations
Expand Down Expand Up @@ -252,6 +254,8 @@ post:
description: Forbidden. You do not have permission to modify linked registrations for this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

delete:
summary: Remove relationships between a Node and linked Registrations
Expand Down Expand Up @@ -317,3 +321,5 @@ delete:
description: Forbidden. You do not have permission to modify linked registrations for this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."
6 changes: 6 additions & 0 deletions swagger-spec/nodes/relationships_subjects_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,8 @@ patch:
description: Forbidden. You do not have permission to modify subjects on this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

post:
summary: Add relationships between a Node and Subjects
Expand Down Expand Up @@ -252,6 +254,8 @@ post:
description: Forbidden. You do not have permission to modify subjects on this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

delete:
summary: Remove relationships between a Node and Subjects
Expand Down Expand Up @@ -317,3 +321,5 @@ delete:
description: Forbidden. You do not have permission to modify subjects on this node.
'404':
description: Not Found. No node matches the given ID.
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."
56 changes: 56 additions & 0 deletions swagger-spec/nodes/wikis_list.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -89,3 +89,59 @@ get:
meta:
total: 12
per_page: 10

post:
summary: Create a Wiki
description: >-
Creates a new wiki page on the node with the given `name` and, optionally, initial `content`.


A wiki page with the given name must not already exist on the node; attempting to create a
duplicate will result in a **409 Conflict** response.

#### Permissions

Only contributors with write access to the node may create a wiki page (or any user, if the
node's wiki has been made publicly editable).

#### Returns

Returns a JSON object with a `data` key containing the representation of the newly created
wiki, if the request is successful.


If the request is unsuccessful, an `errors` key containing information about the failure will
be returned. Refer to the [list of error codes](#tag/Errors-and-Error-Codes) to understand why
this request may have failed.

Some common error cases:
- `405 Method Not Allowed`: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

parameters:
- in: path
type: string
name: node_id
required: true
description: 'The unique identifier of the node.'
- in: body
name: body
required: true
schema:
type: object
example:
data:
type: 'wikis'
attributes:
name: 'A New Page'
content: 'Some initial content for the page.'
tags:
- Nodes
operationId: nodes_wikis_create
x-response-schema: Wiki
consumes:
- application/json
responses:
'201':
description: 'Created'
'405':
description: Returned if write access to this node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."
3 changes: 3 additions & 0 deletions swagger-spec/swagger.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2020,6 +2020,9 @@ paths:
/nodes/{node_id}/cedar_metadata_records/:
$ref: 'cedar_metadata/nodes_list.yaml'

/_/cedar_metadata_records/{record_id}/:
$ref: 'cedar_metadata/record_detail.yaml'

#######################################
# Custom Metadata #
#######################################
Expand Down
99 changes: 99 additions & 0 deletions swagger-spec/wikis/detail.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,3 +67,102 @@ get:
size: 552
type: 'wikis'
id: 'xu77p'

patch:
summary: Update a Wiki
description: >-
Renames the specified wiki page by setting its `name` attribute. This is the only attribute that
can be changed through this endpoint; to update the content of a wiki page, create a new wiki
version instead.

Wiki pages can be updated with either a **PUT** or **PATCH** request.


The `home` wiki page cannot be renamed.

#### Permissions

Only contributors with write access to the parent node may rename a wiki page (or any user, if
the node's wiki has been made publicly editable). Wiki pages on registrations cannot be renamed.

#### Returns

Returns a JSON object with a `data` key containing the new representation of the updated
wiki, if the request is successful.


If the request is unsuccessful, an `errors` key containing
information about the failure will be returned. Refer to the [list of error codes](#tag/Errors-and-Error-Codes)
to understand why this request may have failed.

Some common error cases:
- `405 Method Not Allowed`: Returned if write access to this wiki's node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

parameters:
- in: path
type: string
required: true
name: wiki_id
description: 'The unique identifier of the wiki.'
- in: body
name: body
required: true
schema:
type: object
example:
data:
type: 'wikis'
id: '{wiki_id}'
attributes:
name: 'A new page name'
tags:
- Wikis
operationId: wiki_partial_update
x-response-schema: Wiki
consumes:
- application/json
responses:
'200':
description: 'OK'
'405':
description: Returned if write access to this wiki's node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

delete:
summary: Delete a Wiki
description: >-
Permanently deletes the specified wiki page.


The `home` wiki page cannot be deleted.

#### Permissions

Only contributors with write access to the parent node may delete a wiki page. Wiki pages on
registrations cannot be deleted.

#### 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](#tag/Errors-and-Error-Codes)
to understand why this request may have failed.

Some common error cases:
- `405 Method Not Allowed`: Returned if write access to this wiki's node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."

parameters:
- in: path
type: string
required: true
name: wiki_id
description: 'The unique identifier of the wiki.'
tags:
- Wikis
operationId: wiki_delete
responses:
'204':
description: 'No content'
'405':
description: Returned if write access to this wiki's node has been restricted. The response will include the message "This action is no longer available. Contact support if you have any questions."
Loading